From b62eed340b4b7cb6718bdb8c15fc46a9170da571 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20R=C4=99korajski?= Date: Wed, 31 Mar 2021 08:01:50 +0200 Subject: [PATCH] - started update to 1.40.2 --- augeas-libxml2.patch | 21 ++++---- libguestfs-completionsdir.patch | 7 +-- libguestfs.spec | 87 ++++++++++++++++++++------------- ocaml-4.12.patch | 32 ++++++++++++ 4 files changed, 100 insertions(+), 47 deletions(-) create mode 100644 ocaml-4.12.patch diff --git a/augeas-libxml2.patch b/augeas-libxml2.patch index a1ef4c8..12803a7 100644 --- a/augeas-libxml2.patch +++ b/augeas-libxml2.patch @@ -1,18 +1,19 @@ ---- libguestfs-1.20.1/daemon/Makefile.am.orig 2013-01-06 17:34:27.347761080 +0100 -+++ libguestfs-1.20.1/daemon/Makefile.am 2013-01-06 17:35:26.284426518 +0100 -@@ -189,6 +189,7 @@ - $(YAJL_LIBS) \ - $(SELINUX_LIB) \ +diff -urNp -x '*.orig' libguestfs-1.40.2.org/daemon/Makefile.am libguestfs-1.40.2/daemon/Makefile.am +--- libguestfs-1.40.2.org/daemon/Makefile.am 2019-02-07 15:45:56.644955783 +0100 ++++ libguestfs-1.40.2/daemon/Makefile.am 2021-03-30 23:01:01.769494093 +0200 +@@ -222,6 +222,7 @@ guestfsd_LDADD = \ + $(JANSSON_LIBS) \ + $(SELINUX_LIBS) \ $(AUGEAS_LIBS) \ + $(LIBXML2_LIBS) \ $(HIVEX_LIBS) \ + $(SD_JOURNAL_LIBS) \ $(top_builddir)/gnulib/lib/.libs/libgnu.a \ - $(GETADDRINFO_LIB) \ -@@ -203,6 +204,7 @@ - guestfsd_CFLAGS = \ +@@ -255,6 +256,7 @@ guestfsd_CFLAGS = \ $(WARN_CFLAGS) $(WERROR_CFLAGS) \ + $(RPC_CFLAGS) \ $(AUGEAS_CFLAGS) \ + $(LIBXML2_CFLAGS) \ $(HIVEX_CFLAGS) \ - $(YAJL_CFLAGS) - + $(SD_JOURNAL_CFLAGS) \ + $(JANSSON_CFLAGS) \ diff --git a/libguestfs-completionsdir.patch b/libguestfs-completionsdir.patch index 74da7d6..2ebfa72 100644 --- a/libguestfs-completionsdir.patch +++ b/libguestfs-completionsdir.patch @@ -1,5 +1,6 @@ ---- libguestfs-1.22.3/m4/guestfs_bash_completion.m4.orig 2013-06-14 17:10:32.000000000 +0200 -+++ libguestfs-1.22.3/m4/guestfs_bash_completion.m4 2013-06-19 18:14:18.122926776 +0200 +diff -urNp -x '*.orig' libguestfs-1.40.2.org/m4/guestfs-bash-completion.m4 libguestfs-1.40.2/m4/guestfs-bash-completion.m4 +--- libguestfs-1.40.2.org/m4/guestfs-bash-completion.m4 2019-02-07 15:45:56.974956261 +0100 ++++ libguestfs-1.40.2/m4/guestfs-bash-completion.m4 2021-03-30 23:04:13.624972254 +0200 @@ -16,6 +16,11 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. @@ -12,7 +13,7 @@ PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0], [ bash_completion=yes AC_MSG_CHECKING([for bash-completions directory]) -@@ -1536,4 +1541,5 @@ +@@ -26,4 +31,5 @@ PKG_CHECK_MODULES([BASH_COMPLETION], [ba bash_completion=no AC_MSG_WARN([bash-completion not installed]) ]) diff --git a/libguestfs.spec b/libguestfs.spec index 6c29fe5..e3981ab 100644 --- a/libguestfs.spec +++ b/libguestfs.spec @@ -1,6 +1,40 @@ # TODO: # - finish haskell bindings (when finished upstream, not ready as of 1.30.4) # - PLD appliance support? (needs at least package list adjustment) +# +# /etc/xdg/virt-builder/repos.d/opensuse.conf +# /etc/xdg/virt-builder/repos.d/opensuse.gpg +# %{_bindir}/virt-builder-repository +# %{bash_compdir}/libguestfs-test-tool +# %{_mandir}/ja/man1/guestfs-building.1* +# %{_mandir}/ja/man1/virt-v2v-copy-to-local.1* +# %{_mandir}/ja/man1/virt-v2v-input-vmware.1* +# %{_mandir}/ja/man1/virt-v2v-input-xen.1* +# %{_mandir}/ja/man1/virt-v2v-output-local.1* +# %{_mandir}/ja/man1/virt-v2v-output-openstack.1* +# %{_mandir}/ja/man1/virt-v2v-output-rhv.1* +# %{_mandir}/ja/man1/virt-v2v-support.1* +# %{_mandir}/ja/man3/guestfs-golang.3* +# %{_mandir}/ja/man3/guestfs-java.3* +# %{_mandir}/man1/guestfs-building.1* +# %{_mandir}/man1/virt-builder-repository.1* +# %{_mandir}/man1/virt-v2v-input-vmware.1* +# %{_mandir}/man1/virt-v2v-input-xen.1* +# %{_mandir}/man1/virt-v2v-output-local.1* +# %{_mandir}/man1/virt-v2v-output-openstack.1* +# %{_mandir}/man1/virt-v2v-output-rhv.1* +# %{_mandir}/man1/virt-v2v-support.1* +# %{_mandir}/man3/guestfs-gobject.3* +# %{_mandir}/uk/man1/guestfs-building.1* +# %{_mandir}/uk/man1/virt-v2v-copy-to-local.1* +# %{_mandir}/uk/man1/virt-v2v-input-vmware.1* +# %{_mandir}/uk/man1/virt-v2v-input-xen.1* +# %{_mandir}/uk/man1/virt-v2v-output-local.1* +# %{_mandir}/uk/man1/virt-v2v-output-openstack.1* +# %{_mandir}/uk/man1/virt-v2v-output-rhv.1* +# %{_mandir}/uk/man1/virt-v2v-support.1* +# %{_mandir}/uk/man3/guestfs-golang.3* +# %{_mandir}/uk/man3/guestfs-java.3* # # Conditional build: %bcond_with static_libs # build static libraries @@ -33,17 +67,18 @@ Summary: Library and tools for accessing and modifying virtual machine disk images Summary(pl.UTF-8): Biblioteka i narzędzia do dostępu i modyfikacji obrazów dysków maszyn wirtualnych Name: libguestfs -Version: 1.36.5 -Release: 8 +Version: 1.40.2 +Release: 0.1 License: LGPL v2+ Group: Libraries -Source0: http://libguestfs.org/download/1.36-stable/%{name}-%{version}.tar.gz -# Source0-md5: 9f989443e7cbdbe23498f578ed4a8b06 +Source0: http://libguestfs.org/download/1.40-stable/%{name}-%{version}.tar.gz +# Source0-md5: 7cf90b71013c83f28fead844d3b343ea Patch0: ncurses.patch Patch1: augeas-libxml2.patch Patch2: %{name}-link.patch Patch3: %{name}-completionsdir.patch Patch4: golang14nosrcpkg.patch +Patch5: ocaml-4.12.patch URL: http://libguestfs.org/ BuildRequires: acl-devel BuildRequires: attr-devel @@ -59,13 +94,13 @@ BuildRequires: glib2-devel >= 1:2.26.0 BuildRequires: gobject-introspection-devel >= 1.30.0 BuildRequires: gperf %{?with_gtk:BuildRequires: gtk+2-devel >= 2.0} -BuildRequires: gtk-doc >= 1.14 BuildRequires: hivex-devel >= 1.2.7 BuildRequires: libcap-devel BuildRequires: libconfig-devel BuildRequires: libfuse-devel BuildRequires: libmagic-devel BuildRequires: libselinux-devel +BuildRequires: libtirpc-devel BuildRequires: libtool BuildRequires: libvirt-devel >= 0.10.2 BuildRequires: libxml2-devel >= 2.0 @@ -110,6 +145,7 @@ BuildRequires: ocaml-camlp4 BuildRequires: ocaml-fileutils-devel BuildRequires: ocaml-findlib BuildRequires: ocaml-gettext-devel +BuildRequires: ocaml-hivex-devel BuildRequires: ocaml-libvirt-devel >= 0.6.1.4-4 BuildRequires: ocaml-pcre-devel # for virt-builder @@ -160,6 +196,7 @@ Requires: yajl >= 2.0.4 Suggests: db-utils Suggests: icoutils Suggests: netpbm-progs +Obsoletes: libguestfs-apidocs < 1.40.2 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %ifarch %{ix86} @@ -208,18 +245,6 @@ Static libguestfs library. %description static -l pl.UTF-8 Statyczna biblioteka libguestfs. -%package apidocs -Summary: libguestfs API documentation -Summary(pl.UTF-8): Dokumentacja API libguestfs -Group: Documentation -BuildArch: noarch - -%description apidocs -libguestfs API documentation. - -%description apidocs -l pl.UTF-8 -Dokumentacja API libguestfs. - %package gobject Summary: GObject bindings to libguestfs library Summary(pl.UTF-8): Wiązania GObject do biblioteki libguestfs @@ -443,6 +468,7 @@ Bashowe uzupełnianie argumentów dla narzędzi libguestfs. %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 %{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+perl(\s|$),#!%{__perl}\1,' \ tools/virt-list-filesystems \ @@ -452,9 +478,7 @@ Bashowe uzupełnianie argumentów dla narzędzi libguestfs. %build # preserve dir across libtoolize -%{__mv} build-aux/snippet{,.back} %{__libtoolize} -%{__mv} build-aux/snippet{.back,} %{__aclocal} -I m4 %{__autoconf} %{__autoheader} @@ -474,7 +498,6 @@ Bashowe uzupełnianie argumentów dla narzędzi libguestfs. QEMU=%{?qemu_bin}%{!?qemu_bin:/usr/bin/qemu} \ ZIP=/usr/bin/zip \ --with-completionsdir=%{_datadir}/bash-completion/completions \ - --with-html-dir=%{_gtkdocdir} \ --with-java=%{?with_java:%{java_home}}%{!?with_java:no} \ --with-python-installdir=%{py_sitedir} \ --enable-install-daemon \ @@ -584,10 +607,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/libguestfs.a %endif -%files apidocs -%defattr(644,root,root,755) -%{_gtkdocdir}/guestfs - %files gobject %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libguestfs-gobject-1.0.so.*.*.* @@ -859,7 +878,7 @@ rm -rf $RPM_BUILD_ROOT %files -n ocaml-libguestfs %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/ocaml/stublibs/dllmlguestfs.so -%attr(755,root,root) %{_libdir}/ocaml/stublibs/dllv2v_test_harness.so +#%attr(755,root,root) %{_libdir}/ocaml/stublibs/dllv2v_test_harness.so %dir %{_libdir}/ocaml/guestfs %{_libdir}/ocaml/guestfs/META %{_libdir}/ocaml/guestfs/mlguestfs.cma @@ -869,20 +888,20 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/ocaml/guestfs/guestfs.cmi %{_libdir}/ocaml/guestfs/guestfs.mli %{_libdir}/ocaml/guestfs/libmlguestfs.a -%dir %{_libdir}/ocaml/v2v_test_harness -%{_libdir}/ocaml/v2v_test_harness/META -%{_libdir}/ocaml/v2v_test_harness/libv2v_test_harness.a -%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmi -%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.mli +#%dir %{_libdir}/ocaml/v2v_test_harness +#%{_libdir}/ocaml/v2v_test_harness/META +#%{_libdir}/ocaml/v2v_test_harness/libv2v_test_harness.a +#%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmi +#%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.mli %if %{with ocaml_opt} %{_libdir}/ocaml/guestfs/guestfs.cmx %{_libdir}/ocaml/guestfs/mlguestfs.a %{_libdir}/ocaml/guestfs/mlguestfs.cmxa -%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.a -%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmx -%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmxa +#%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.a +#%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmx +#%{_libdir}/ocaml/v2v_test_harness/v2v_test_harness.cmxa %endif -%{_mandir}/man1/virt-v2v-test-harness.1* +#%{_mandir}/man1/virt-v2v-test-harness.1* %{_mandir}/man3/guestfs-ocaml.3* %lang(ja) %{_mandir}/ja/man1/virt-v2v-test-harness.1* %lang(uk) %{_mandir}/uk/man1/virt-v2v-test-harness.1* diff --git a/ocaml-4.12.patch b/ocaml-4.12.patch new file mode 100644 index 0000000..b2e26c8 --- /dev/null +++ b/ocaml-4.12.patch @@ -0,0 +1,32 @@ +From cc4ecbe236914f9b391ecf3815008547472632f8 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 2 Mar 2021 10:39:15 +0000 +Subject: [PATCH] mlstdutils/std_utils.ml: Fix for OCaml 4.12. + +We were using a default function from somewhere called "compare" +instead of the actual function (Pervasives.compare / Stdlib.compare). +Since the wrong default function was used it had a different type from +what we expected: + +File "std_utils.ml", line 312, characters 36-37: +312 | | (y, y') :: _ when cmp x y = 0 -> y' + ^ +Error: This expression has type int but an expression was expected of type + 'weak1 list -> int +--- + mlstdutils/std_utils.ml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/common/mlstdutils/std_utils.ml b/common/mlstdutils/std_utils.ml +index 4237ea5..8847717 100644 +--- a/common/mlstdutils/std_utils.ml ++++ b/common/mlstdutils/std_utils.ml +@@ -307,7 +307,7 @@ module List = struct + | x::xs, y::ys, z::zs -> (x, y, z) :: combine3 xs ys zs + | _ -> invalid_arg "combine3" + +- let rec assoc_lbl ?(cmp = compare) ~default x = function ++ let rec assoc_lbl ?(cmp = Pervasives.compare) ~default x = function + | [] -> default + | (y, y') :: _ when cmp x y = 0 -> y' + | _ :: ys -> assoc_lbl ~cmp ~default x ys -- 2.43.0