Version 0.5: Numerous small fixes to make rpmbuild work again. 0.5
authorRichard Jones <rjones@redhat.com>
Wed, 8 Apr 2009 16:19:09 +0000 (17:19 +0100)
committerRichard Jones <rjones@redhat.com>
Wed, 8 Apr 2009 16:19:09 +0000 (17:19 +0100)
libguestfs.spec.in
ocaml/Makefile.am
perl/Makefile.am

index 3045294..f719c05 100644 (file)
@@ -20,7 +20,10 @@ BuildRequires: febootstrap
 # If you want to build the bindings for different languages:
 BuildRequires: ocaml
 BuildRequires: perl-devel
-BuildRequires: python-devel
+BuildRequires: perl-Test-Pod
+BuildRequires: perl-Test-Pod-Coverage
+BuildRequires: perl-ExtUtils-MakeMaker
+# BuildRequires: python-devel
 
 # Runtime requires:
 Requires:    qemu
@@ -104,20 +107,21 @@ required to use the OCaml bindings for %{name}.
 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}
+%package python
+Summary:     Python bindings for %{name}
+Group:       Development/Libraries
+Requires:    %{name} = %{version}-%{release}
 
 
-%description python
-%{name}-python contains Python bindings for %{name}.
+%description python
+%{name}-python contains Python bindings for %{name}.
 
 
 %prep
@@ -126,11 +130,15 @@ Requires:    %{name} = %{version}-%{release}
 
 %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
@@ -143,6 +151,9 @@ rm Makefile*
 rm -rf .deps .libs
 popd
 
+find $RPM_BUILD_ROOT -name perllocal.pod -delete
+find $RPM_BUILD_ROOT -name .packlist -delete
+
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -178,18 +189,32 @@ rm -rf $RPM_BUILD_ROOT
 
 %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,-)
+%{_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,-)
+%files python
+%defattr(-,root,root,-)
 
 
 %changelog
index de07b3b..62ffe2b 100644 (file)
@@ -17,7 +17,6 @@
 
 EXTRA_DIST = \
        guestfs.mli guestfs.ml \
-       guestfs_internal.ml \
        guestfs_c.c guestfs_c.h guestfs_c_actions.c \
        .depend META.in
 
@@ -25,10 +24,10 @@ if HAVE_OCAML
 
 noinst_DATA = mlguestfs.cma mlguestfs.cmxa META
 
-mlguestfs.cma: guestfs_c.o guestfs_c_actions.o guestfs_internal.cmo guestfs.cmo
+mlguestfs.cma: guestfs_c.o guestfs_c_actions.o guestfs.cmo
        $(OCAMLMKLIB) -o mlguestfs $^ -lguestfs
 
-mlguestfs.cmxa: guestfs_c.o guestfs_c_actions.o guestfs_internal.cmx guestfs.cmx
+mlguestfs.cmxa: guestfs_c.o guestfs_c_actions.o guestfs.cmx
        $(OCAMLMKLIB) -o mlguestfs $^ -lguestfs
 
 guestfs_c.o: guestfs_c.c
@@ -56,7 +55,11 @@ SUFFIXES = .cmo .cmi .cmx .ml .mli .mll .mly
 
 # Do the installation by hand, because we want to run ocamlfind.
 install-data-hook:
-       $(OCAMLFIND) install -destdir $(DESTDIR) guestfs \
+       mkdir -p $(DESTDIR)$(OCAMLLIB)
+       mkdir -p $(DESTDIR)$(OCAMLLIB)/stublibs
+       $(OCAMLFIND) install \
+         -ldconf ignore -destdir $(DESTDIR)$(OCAMLLIB) \
+         guestfs \
          META *.so *.a *.cma *.cmx *.cmxa *.cmi *.mli
 
 endif
\ No newline at end of file
index 2b5b1dd..24548ed 100644 (file)
 EXTRA_DIST = \
        Makefile.PL.in \
        Guestfs.xs \
-       guestfs_perl.c \
        typemap \
-       perl/lib/Sys/Guestfs.pm
+       lib/Sys/Guestfs.pm \
+       examples/README \
+       examples/LICENSE \
+       examples/*.pl \
+       t/*.t
 
 if HAVE_PERL
 
@@ -29,11 +32,13 @@ if HAVE_PERL
 
 TESTS = run-perl-tests
 
+INSTALLDIRS = site
+
 all:
-       perl Makefile.PL
-       make -f Makefile-pl
+       perl Makefile.PL INSTALLDIRS=$(INSTALLDIRS) PREFIX=$(prefix)
+       $(MAKE) -f Makefile-pl
 
 install-data-hook:
-       make -f Makefile-pl DESTDIR=$(DESTDIR) install
+       $(MAKE) -f Makefile-pl DESTDIR=$(DESTDIR) install
 
 endif