# 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
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
%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
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
%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
EXTRA_DIST = \
guestfs.mli guestfs.ml \
- guestfs_internal.ml \
guestfs_c.c guestfs_c.h guestfs_c_actions.c \
.depend META.in
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
# 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