X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=libguestfs.spec.in;h=bc611effdc3eb663a61830492695d24236e3231e;hp=7a33c62840b5cd80fa0640c47866f97fce7cf7c0;hb=45f3a8981723079a5a020ab9438593531b1d8368;hpb=236b5295bf3e497153a5cae9708c3d0249f2daf6 diff --git a/libguestfs.spec.in b/libguestfs.spec.in index 7a33c62..bc611ef 100644 --- a/libguestfs.spec.in +++ b/libguestfs.spec.in @@ -12,10 +12,20 @@ URL: http://et.redhat.com/~rjones/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 +# 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 @@ -69,17 +79,66 @@ modifying virtual machine disk images from the command line and shell 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 + +# '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 @@ -92,11 +151,25 @@ rm Makefile* 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 @@ -109,11 +182,46 @@ rm -rf $RPM_BUILD_ROOT %doc HACKING README examples %{_libdir}/libguestfs.so %{_mandir}/man3/guestfs.3* +%{_includedir}/guestfs.h +%{_includedir}/guestfs-actions.h +%{_includedir}/guestfs-structs.h %files -n guestfish %defattr(-,root,root,-) %{_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