From f9d735bb82c41c85928c5570a6f9f45c196dcecf8f058a5884e5b35892d4ce7b Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Fri, 17 Jun 2016 07:38:35 +0000 Subject: [PATCH] oasis OBS-URL: https://build.opensuse.org/package/show/devel:languages:ocaml/ocaml-libvirt?expand=0&rev=11 --- ...-int64_t-instead-of-OCaml-defined-an.patch | 35 ----- _service | 14 ++ ocaml-libvirt-0.6.1.4.20160205.8853f5a.tar.xz | 3 + ocaml-libvirt-0.6.1.4.tar.gz | 3 - ocaml-libvirt.spec | 129 +++++++++++++----- 5 files changed, 113 insertions(+), 71 deletions(-) delete mode 100644 0001-Use-C99-standard-int64_t-instead-of-OCaml-defined-an.patch create mode 100644 _service create mode 100644 ocaml-libvirt-0.6.1.4.20160205.8853f5a.tar.xz delete mode 100644 ocaml-libvirt-0.6.1.4.tar.gz diff --git a/0001-Use-C99-standard-int64_t-instead-of-OCaml-defined-an.patch b/0001-Use-C99-standard-int64_t-instead-of-OCaml-defined-an.patch deleted file mode 100644 index 4174b2c..0000000 --- a/0001-Use-C99-standard-int64_t-instead-of-OCaml-defined-an.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 21ac993da0a187821e812fe7b5b31a426121a546 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Sat, 30 Aug 2014 19:10:19 +0100 -Subject: [PATCH] Use C99 standard int64_t instead of OCaml defined (and soon - to go) int64. - ---- - libvirt/libvirt_c_oneoffs.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libvirt/libvirt_c_oneoffs.c b/libvirt/libvirt_c_oneoffs.c -index 3bb572f..06b3852 100644 ---- a/libvirt/libvirt_c_oneoffs.c -+++ b/libvirt/libvirt_c_oneoffs.c -@@ -140,7 +140,7 @@ ocaml_libvirt_connect_node_get_free_memory (value connv) - NONBLOCKING (r = virNodeGetFreeMemory (conn)); - CHECK_ERROR (r == 0, conn, "virNodeGetFreeMemory"); - -- rv = caml_copy_int64 ((int64) r); -+ rv = caml_copy_int64 ((int64_t) r); - CAMLreturn (rv); - } - -@@ -161,7 +161,7 @@ ocaml_libvirt_connect_node_get_cells_free_memory (value connv, - - rv = caml_alloc (r, 0); - for (i = 0; i < r; ++i) { -- iv = caml_copy_int64 ((int64) freemems[i]); -+ iv = caml_copy_int64 ((int64_t) freemems[i]); - Store_field (rv, i, iv); - } - --- -2.0.4 - diff --git a/_service b/_service new file mode 100644 index 0000000..d3d1662 --- /dev/null +++ b/_service @@ -0,0 +1,14 @@ + + + git://git.annexia.org/git/ocaml-libvirt.git + git + 0.6.1.4.%cd.%h + master + ocaml-libvirt + + + *.tar + xz + + + diff --git a/ocaml-libvirt-0.6.1.4.20160205.8853f5a.tar.xz b/ocaml-libvirt-0.6.1.4.20160205.8853f5a.tar.xz new file mode 100644 index 0000000..c432d36 --- /dev/null +++ b/ocaml-libvirt-0.6.1.4.20160205.8853f5a.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7469bf554cc9c7da42a3015cd7561aa759c60c2c2f962f0a6d5dddab781d9e79 +size 74392 diff --git a/ocaml-libvirt-0.6.1.4.tar.gz b/ocaml-libvirt-0.6.1.4.tar.gz deleted file mode 100644 index 2e49ad2..0000000 --- a/ocaml-libvirt-0.6.1.4.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4d36d57dbc9280881e5362f562d4ca7c7881e8ec9ff1954eb064acc9ccf0021b -size 136023 diff --git a/ocaml-libvirt.spec b/ocaml-libvirt.spec index fc510b2..07f8fbd 100644 --- a/ocaml-libvirt.spec +++ b/ocaml-libvirt.spec @@ -17,24 +17,20 @@ Name: ocaml-libvirt -Version: 0.6.1.4 +Version: 0.6.1.4.20160205.8853f5a Release: 0 %{ocaml_preserve_bytecode} Summary: OCaml binding for libvirt License: LGPL-2.0+ Group: Development/Libraries/Other Url: http://libvirt.org/ocaml/ -Source0: http://libvirt.org/sources/ocaml/%{name}-%{version}.tar.gz -# Upstream patch to fix int types. -Patch1: 0001-Use-C99-standard-int64_t-instead-of-OCaml-defined-an.patch -BuildRequires: gawk -# 0.9.10-3 contains virDomainGetCPUStats API, but not the qemu driver. -BuildRequires: libvirt-devel >= 0.9.10-3 -BuildRequires: ocaml >= 3.10.0 -BuildRequires: ocaml-rpm-macros >= 4.02.1 -BuildRequires: ocaml-findlib +Source0: %{name}-%{version}.tar.xz +BuildRequires: ocaml +BuildRequires: ocaml-oasis BuildRequires: ocaml-ocamldoc +BuildRequires: ocaml-rpm-macros >= 4.03 BuildRequires: perl +BuildRequires: pkgconfig(libvirt) Requires: libvirt-client >= 0.9.10-3 BuildRoot: %{_tmppath}/%{name}-%{version}-build # ocaml autodep start for pkg: ocaml-libvirt @@ -58,32 +54,94 @@ developing applications that use %{name}. %prep %setup -q -%patch1 -p1 - %build -%configure -make %{?_smp_mflags} all doc -%if %{ocaml_native_compiler} -make %{?_smp_mflags} opt -%endif +sed ' +s|@PACKAGE_NAME@|libvirt| +s|@PACKAGE_VERSION@|%{version}| +' libvirt/libvirt_version.ml.in > libvirt/libvirt_version.ml +# +tee config.h <<'_EOF_' +_EOF_ +# +libvirt_version="`pkg-config --modversion libvirt`" +libvirt_cflags="`pkg-config --cflags libvirt`" +libvirt_libs="`pkg-config --libs libvirt`" +# +pushd libvirt +mv -v libvirt_c.c libvirt_c.c.txt +perl -w generator.pl +diff -u libvirt_c.c.txt libvirt_c.c || : +popd +# obs service changes every ^Version line ... +sh -c "sed 's/^Version.*/Version: %{version}/' | tee _oasis" <<_EOF_ +OASISFormat: 0.4 +Name: libvirt +Version: 20160605.10e2437 +Synopsis: binding for libvirt +Authors: Richard W.M. Jones +License: LGPL-2.0+ +Plugins: META(`oasis version`) +BuildTools: ocamlbuild +Library mllibvirt + Path: libvirt + Install: true + Modules: Libvirt, Libvirt_version + FindlibName: libvirt + BuildDepends: unix + CSources: libvirt_c.c + CCOpt: -Wall -O2 -g -I$PWD -I$PWD/libvirt -Werror -D_GNU_SOURCE ${libvirt_cflags} + CCLib: ${libvirt_libs} + +Document libvirt + Title: API reference for libvirt + Type: ocamlbuild + BuildTools+: ocamldoc + InstallDir: \$htmldir + Install: true + XOCamlbuildPath: . + XOCamlbuildLibraries: libvirt + +Executable "%{name}-domain_events" + Install: true + Path: examples + MainIs: domain_events.ml + CompiledObject: best + BuildDepends: libvirt + +Executable "%{name}-get_cpu_stats" + Install: true + Path: examples + MainIs: get_cpu_stats.ml + CompiledObject: best + BuildDepends: libvirt + +Executable "%{name}-list_domains" + Install: true + Path: examples + MainIs: list_domains.ml + CompiledObject: best + BuildDepends: libvirt + +Executable "%{name}-node_info" + Install: true + Path: examples + MainIs: node_info.ml + CompiledObject: best + BuildDepends: libvirt +_EOF_ +%oasis_setup +%ocaml_oasis_configure --enable-docs +%ocaml_oasis_build +%ocaml_oasis_doc %install -# These rules work if the library uses 'ocamlfind install' to install itself. -export DESTDIR=%{buildroot} -export OCAMLFIND_DESTDIR=%{buildroot}%{_libdir}/ocaml -mkdir -p $OCAMLFIND_DESTDIR $OCAMLFIND_DESTDIR/stublibs -mkdir -p %{buildroot}%{_bindir} -%if %{ocaml_native_compiler} -make install-opt -%else -make install-byte -%endif +%ocaml_oasis_findlib_install # mkdir -vp %{buildroot}/etc/ld.so.conf.d/ tee %{buildroot}/etc/ld.so.conf.d/%{name}.conf <<_EOF_ -%{_libdir}/ocaml/stublibs +%{_libdir}/ocaml/libvirt _EOF_ # @@ -91,20 +149,22 @@ _EOF_ %postun -p /sbin/ldconfig - - %files %defattr(-,root,root,-) -%doc COPYING.LIB README ChangeLog +%doc COPYING.LIB README /etc/ld.so.conf.d/*.conf +%{_bindir}/* %dir %{_libdir}/ocaml %dir %{_libdir}/ocaml/* +%if %{ocaml_native_compiler} +%{_libdir}/ocaml/*/*.cmxs +%endif %{_libdir}/ocaml/*/*.so -%{_libdir}/ocaml/*/*.so.owner %files devel %defattr(-,root,root,-) -%doc COPYING.LIB README TODO.libvirt ChangeLog html/* +%doc COPYING.LIB README +%{oasis_docdir_html} %dir %{_libdir}/ocaml %dir %{_libdir}/ocaml/* %{_libdir}/ocaml/*/*.a @@ -112,8 +172,11 @@ _EOF_ %{_libdir}/ocaml/*/*.cmx %{_libdir}/ocaml/*/*.cmxa %endif +%{_libdir}/ocaml/*/*.annot %{_libdir}/ocaml/*/*.cma %{_libdir}/ocaml/*/*.cmi +%{_libdir}/ocaml/*/*.cmt +%{_libdir}/ocaml/*/*.cmti %{_libdir}/ocaml/*/*.mli %{_libdir}/ocaml/*/META