# @configure_input@
-%global mirror http://hakodate/mirrors/fedora/10/Fedora/x86_64/os/
+#%global mirror http://hakodate/mirrors/fedora/10/Fedora/x86_64/os/
Summary: Access and modify virtual machine disk images
Name: libguestfs
Source0: http://et.redhat.com/~rjones/libguestfs/files/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
+# Basic build requirements:
BuildRequires: /usr/bin/pod2man
BuildRequires: /usr/bin/pod2text
-BuildRequires: febootstrap
-
+BuildRequires: febootstrap >= 1.5
+BuildRequires: augeas-devel
+
+# If you want to build the bindings for different languages:
+BuildRequires: ocaml
+BuildRequires: perl-devel
+BuildRequires: perl-Test-Pod
+BuildRequires: perl-Test-Pod-Coverage
+BuildRequires: perl-ExtUtils-MakeMaker
+# BuildRequires: python-devel
+
+# Runtime requires:
Requires: qemu
scripts.
+%package ocaml
+Summary: OCaml bindings for %{name}
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+
+%description ocaml
+%{name}-ocaml contains OCaml bindings for %{name}.
+
+This is for toplevel and scripting access only. To compile OCaml
+programs which use %{name} you will also need %{name}-ocaml-devel.
+
+
+%package ocaml-devel
+Summary: OCaml bindings for %{name}
+Group: Development/Libraries
+Requires: %{name}-ocaml = %{version}-%{release}
+
+
+%description ocaml-devel
+%{name}-ocaml-devel contains development libraries
+required to use the OCaml bindings for %{name}.
+
+
+%package perl
+Summary: Perl bindings for %{name}
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
+
+
+%description perl
+%{name}-perl contains Perl bindings for %{name}.
+
+
+# %package python
+# Summary: Python bindings for %{name}
+# Group: Development/Libraries
+# Requires: %{name} = %{version}-%{release}
+
+
+# %description python
+# %{name}-python contains Python bindings for %{name}.
+
+
%prep
%setup -q
%build
-%configure --with-mirror=%{mirror}
-make
+#%configure --with-mirror=%{mirror}
+%configure
+
+# 'INSTALLDIRS' ensures that perl libs are installed in the vendor dir
+# not the site dir.
+make INSTALLDIRS=vendor
%install
rm -rf $RPM_BUILD_ROOT
+
make DESTDIR=$RPM_BUILD_ROOT install
rm $RPM_BUILD_ROOT%{_libdir}/libguestfs.a
rm -rf .deps .libs
popd
+# Same for ocaml/examples.
+pushd ocaml/examples
+make clean
+rm Makefile*
+popd
+
+find $RPM_BUILD_ROOT -name perllocal.pod -delete
+find $RPM_BUILD_ROOT -name .packlist -delete
+
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+
%files
%defattr(-,root,root,-)
%doc COPYING
%files devel
%defattr(-,root,root,-)
-%doc HACKING README examples
+%doc HACKING README examples html/guestfs.3.html html/pod.css
%{_libdir}/libguestfs.so
%{_mandir}/man3/guestfs.3*
+%{_includedir}/guestfs.h
+%{_includedir}/guestfs-actions.h
+%{_includedir}/guestfs-structs.h
%files -n guestfish
%defattr(-,root,root,-)
+%doc html/guestfish.1.html html/pod.css
%{_bindir}/guestfish
+%{_mandir}/man1/guestfish.1*
+
+
+%files ocaml
+%defattr(-,root,root,-)
+%{_libdir}/ocaml/guestfs
+%exclude %{_libdir}/ocaml/guestfs/*.a
+%exclude %{_libdir}/ocaml/guestfs/*.cmxa
+%exclude %{_libdir}/ocaml/guestfs/*.cmx
+%exclude %{_libdir}/ocaml/guestfs/*.mli
+%{_libdir}/ocaml/stublibs/*.so
+%{_libdir}/ocaml/stublibs/*.so.owner
+
+
+%files ocaml-devel
+%defattr(-,root,root,-)
+%doc ocaml/examples
+%{_libdir}/ocaml/guestfs/*.a
+%{_libdir}/ocaml/guestfs/*.cmxa
+%{_libdir}/ocaml/guestfs/*.cmx
+%{_libdir}/ocaml/guestfs/*.mli
+
+
+%files perl
+%defattr(-,root,root,-)
+%doc perl/examples
+%{perl_vendorarch}/*
+%{_mandir}/man3/Sys::Guestfs.3pm*
+
+
+# %files python
+# %defattr(-,root,root,-)
%changelog