X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=libguestfs.spec.in;h=f6931b78fa700c9c18297b64aa05f5a11a568ced;hp=bd03fd703d469cbd15cf8c8270f76c61134552d9;hb=70c2ffc39677a9f5eb6b2230cb9ca2606b2fd966;hpb=f0624da341ceadf637c700fa91727707bd44b41a diff --git a/libguestfs.spec.in b/libguestfs.spec.in index bd03fd7..f6931b7 100644 --- a/libguestfs.spec.in +++ b/libguestfs.spec.in @@ -1,6 +1,6 @@ # @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 @@ -12,10 +12,24 @@ 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 - +BuildRequires: febootstrap >= 1.5 +BuildRequires: augeas-devel >= 0.5.0 +BuildRequires: qemu + +# If you want to build the bindings for different languages: +BuildRequires: ocaml +BuildRequires: ocaml-findlib-devel +BuildRequires: perl-devel +BuildRequires: perl-Test-Simple +BuildRequires: perl-Test-Pod +BuildRequires: perl-Test-Pod-Coverage +BuildRequires: perl-ExtUtils-MakeMaker +BuildRequires: python-devel + +# Runtime requires: Requires: qemu @@ -69,29 +83,98 @@ 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} + +%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} +%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} + +%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 + + +%check +make check %install rm -rf $RPM_BUILD_ROOT + make DESTDIR=$RPM_BUILD_ROOT install rm $RPM_BUILD_ROOT%{_libdir}/libguestfs.a rm $RPM_BUILD_ROOT%{_libdir}/libguestfs.la # Clean up the examples/ directory which will get installed in %doc. -pushd examples +# Note we can't delete the original examples/Makefile because that +# will be needed by the check section later in the RPM build. +cp -a examples ex +pushd ex make clean rm Makefile* rm -rf .deps .libs popd +# Same for ocaml/examples. +cp -a ocaml/examples ocaml/ex +pushd ocaml/ex +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 @@ -101,6 +184,7 @@ rm -rf $RPM_BUILD_ROOT %postun -p /sbin/ldconfig + %files %defattr(-,root,root,-) %doc COPYING @@ -110,16 +194,51 @@ rm -rf $RPM_BUILD_ROOT %files devel %defattr(-,root,root,-) -%doc HACKING README examples +%doc HACKING TODO README ex html/guestfs.3.html html/pod.css +%doc src/generator.ml %{_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/ex +%{_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