summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dartiguelongue <eva@gentoo.org>2018-12-07 13:38:03 +0100
committerGilles Dartiguelongue <eva@gentoo.org>2018-12-07 14:02:16 +0100
commit04f7e992bebab5eb33872a7a77d4872067c406b0 (patch)
tree105d839192f1b10eaf24e70da12921f0f015f7b0 /app-emulation/libguestfs
parentapp-emulation/virt-what: 1.18 → 1.19 (diff)
downloadgentoo-04f7e992bebab5eb33872a7a77d4872067c406b0.tar.gz
gentoo-04f7e992bebab5eb33872a7a77d4872067c406b0.tar.bz2
gentoo-04f7e992bebab5eb33872a7a77d4872067c406b0.zip
app-emulation/libguestfs: 1.36.13 → 1.36.15
Do not RDEPEND on bash-completion and drop unused USE flag. Fix static-libs USE flag to actually do something. Fix build failure with USE=-ocaml, bug #670968. Make libvirt support optional, bug #672452. Remove unused debug USE flag. Switch from versionator eclass to eapi7-ver. gjs is a test dependency only. Fix sandbox issues, bug #653104. Closes: https://bugs.gentoo.org/653104 Closes: https://bugs.gentoo.org/670968 Closes: https://bugs.gentoo.org/672452 Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Gilles Dartiguelongue <eva@gentoo.org>
Diffstat (limited to 'app-emulation/libguestfs')
-rw-r--r--app-emulation/libguestfs/Manifest1
-rw-r--r--app-emulation/libguestfs/files/1.36/0003-Fix-install-failure-when-not-built-with-OCaml-suppor.patch40
-rw-r--r--app-emulation/libguestfs/files/1.36/0004-Loosen-build-time-requirement-on-bash-completion.patch45
-rw-r--r--app-emulation/libguestfs/libguestfs-1.36.15.ebuild178
-rw-r--r--app-emulation/libguestfs/metadata.xml5
5 files changed, 267 insertions, 2 deletions
diff --git a/app-emulation/libguestfs/Manifest b/app-emulation/libguestfs/Manifest
index 6dd41368a289..7a661171f962 100644
--- a/app-emulation/libguestfs/Manifest
+++ b/app-emulation/libguestfs/Manifest
@@ -1,3 +1,4 @@
DIST libguestfs-1.28.5.tar.gz 12747537 BLAKE2B b0cc023efef41955c4b448b68bd5578d88d305364afdc1fc24c7d26ba5fae4a1b81ee58799d42774ea28e162208edbf36a0e49c1a7e4f751c74e9c45e9a472a6 SHA512 5ab25498fa9141950c1077cc52bae05a2781fa86a983b5fa49fbd4a4bca70710db3d4f7b9f45fb6f8b4ee8e3d77ffde7c4c0d9e9e526443e2a8251a62306ebb6
DIST libguestfs-1.36.13.tar.gz 22886310 BLAKE2B b0961cc6b941f1b68bba23af72e8b5478ed33da6f343e453f90decd7454cfc6a94cf67a81ad59c443df744727afa9bd4e98c77411efc4134e3422eaae59ffff5 SHA512 7c9799d5d563ffd8296f70a8402582aba85f3bf3c0dcaa18c44ecff5b7f771a3bc3f297aa85a4056351758298c79752d456a4b46e41924ff9acf196c992d51fb
+DIST libguestfs-1.36.15.tar.gz 22256729 BLAKE2B 7ed9c0010ffe6b904b055068e86544f12a884ff52f1f3322a3014574310de9a69077d1865e641ad8304149d1a2eb0d0fbc5e107c93a9790135dc543592da68a6 SHA512 a918bc886b60340d748093bdcca3a048ed26b31508ba256cd7903b76798816e54f836446d9286f7c452fa0d4fa82c0c1216606d01fce2ada9d7386fa463857c7
DIST libguestfs-1.36.5.tar.gz 23012703 BLAKE2B 31dcbef2ae1c287c4a353f671e6073cdb4eb2c7173666ff9589ed0e0ce909c2dfa00f2da14b40a0a6a9384dd830082f1f721b0c1dafabe2862391f0f75ff3f3d SHA512 01f10ab902386130f0565f53d0c361b903d6790b572e5562a2180e896952ead2e7661795bd976a7e2442887ea17014a6767db8b6e575de634f32de82ca4124c6
diff --git a/app-emulation/libguestfs/files/1.36/0003-Fix-install-failure-when-not-built-with-OCaml-suppor.patch b/app-emulation/libguestfs/files/1.36/0003-Fix-install-failure-when-not-built-with-OCaml-suppor.patch
new file mode 100644
index 000000000000..093a53f11632
--- /dev/null
+++ b/app-emulation/libguestfs/files/1.36/0003-Fix-install-failure-when-not-built-with-OCaml-suppor.patch
@@ -0,0 +1,40 @@
+From dc35ce2ba774a9284360bfd6532acb527a2f73d7 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Fri, 7 Dec 2018 11:21:25 +0100
+Subject: [PATCH 3/4] Fix install failure when not built with OCaml support
+
+Makefile rules in po/ require builder/index-parse.c to be generated to
+allow translation utilities to work on it, however builder/ is
+completely masked behind OCaml conditional build even if some tools do
+not require it and proper guards are in place already.
+
+Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1614502
+---
+ Makefile.am | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 7eefacbeb..c0a68151f 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -155,7 +155,6 @@ if HAVE_OCAML
+ SUBDIRS += \
+ mllib \
+ customize \
+- builder builder/templates \
+ get-kernel \
+ resize \
+ sparsify \
+@@ -169,6 +168,9 @@ SUBDIRS += dib
+ endif
+ endif
+
++# Tools mixed with more OCAML based tools
++SUBDIRS += builder builder/templates
++
+ # Perl tools.
+ if HAVE_TOOLS
+ SUBDIRS += tools
+--
+2.19.2
+
diff --git a/app-emulation/libguestfs/files/1.36/0004-Loosen-build-time-requirement-on-bash-completion.patch b/app-emulation/libguestfs/files/1.36/0004-Loosen-build-time-requirement-on-bash-completion.patch
new file mode 100644
index 000000000000..9bce9b05b051
--- /dev/null
+++ b/app-emulation/libguestfs/files/1.36/0004-Loosen-build-time-requirement-on-bash-completion.patch
@@ -0,0 +1,45 @@
+From 1f51b8ef921ad804022fc39b7465f9f731cbb6be Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Fri, 7 Dec 2018 12:14:15 +0100
+Subject: [PATCH 4/5] Loosen build time requirement on bash-completion
+
+Distributions might avoid pulling bash-completion during build as it is
+an optional feature and would only make sense at runtime anyway. Since
+this setting is well-known across a given distribution, allow them to
+provide the value and avoid the dependency.
+---
+ m4/guestfs_bash_completion.m4 | 21 ++++++++++-----------
+ 1 file changed, 10 insertions(+), 11 deletions(-)
+
+diff --git a/m4/guestfs_bash_completion.m4 b/m4/guestfs_bash_completion.m4
+index 1f171b79d..9e877f6ab 100644
+--- a/m4/guestfs_bash_completion.m4
++++ b/m4/guestfs_bash_completion.m4
+@@ -16,14 +16,13 @@
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ dnl Bash completion.
+-PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0], [
+- bash_completion=yes
+- AC_MSG_CHECKING([for bash-completions directory])
+- BASH_COMPLETIONS_DIR="`pkg-config --variable=completionsdir bash-completion`"
+- AC_MSG_RESULT([$BASH_COMPLETIONS_DIR])
+- AC_SUBST([BASH_COMPLETIONS_DIR])
+-],[
+- bash_completion=no
+- AC_MSG_WARN([bash-completion not installed])
+-])
+-AM_CONDITIONAL([HAVE_BASH_COMPLETION],[test "x$bash_completion" = "xyes"])
++AC_ARG_WITH([bashcompletiondir],
++ AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]),
++ [],
++ [AS_IF([$($PKG_CONFIG --exists bash-completion)], [
++ with_bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion)
++ ] , [
++ with_bashcompletiondir=${datadir}/bash-completion/completions
++ ])])
++AC_SUBST([BASH_COMPLETIONS_DIR], [$with_bashcompletiondir])
++AM_CONDITIONAL([HAVE_BASH_COMPLETION],[test -n "$with_bashcompletiondir"])
+--
+2.19.2
+
diff --git a/app-emulation/libguestfs/libguestfs-1.36.15.ebuild b/app-emulation/libguestfs/libguestfs-1.36.15.ebuild
new file mode 100644
index 000000000000..4fda3526f90b
--- /dev/null
+++ b/app-emulation/libguestfs/libguestfs-1.36.15.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
+
+inherit autotools bash-completion-r1 eapi7-ver eutils linux-info perl-functions python-single-r1 xdg-utils
+
+MY_PV_1="$(ver_cut 1-2)"
+MY_PV_2="$(ver_cut 2)"
+[[ $(( ${MY_PV_2} % 2 )) -eq 0 ]] && SD="stable" || SD="development"
+
+DESCRIPTION="Tools for accessing, inspect and modifying virtual machine (VM) disk images"
+HOMEPAGE="http://libguestfs.org/"
+SRC_URI="http://libguestfs.org/download/${MY_PV_1}-${SD}/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0/"${MY_PV_1}""
+
+KEYWORDS="~amd64"
+IUSE="doc erlang +fuse gtk inspect-icons introspection libvirt lua ocaml +perl python ruby selinux static-libs systemtap test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# Failures - doc
+
+# FIXME: selinux support is automagic
+COMMON_DEPEND="
+ sys-libs/ncurses:0=
+ sys-devel/gettext
+ >=app-misc/hivex-1.3.1
+ dev-libs/libpcre:3
+ app-arch/cpio
+ dev-lang/perl
+ virtual/cdrtools
+ >=app-emulation/qemu-2.0[qemu_softmmu_targets_x86_64,systemtap?,selinux?,filecaps]
+ sys-apps/fakeroot
+ sys-apps/file
+ libvirt? ( app-emulation/libvirt )
+ dev-libs/libxml2:2
+ >=sys-apps/fakechroot-2.8
+ >=app-admin/augeas-1.0.0
+ sys-fs/squashfs-tools:*
+ dev-libs/libconfig
+ sys-libs/readline:0=
+ >=sys-libs/db-4.6:*
+ app-arch/xz-utils
+ app-arch/lzma
+ app-crypt/gnupg
+ app-arch/unzip[natspec]
+ perl? (
+ virtual/perl-ExtUtils-MakeMaker
+ >=dev-perl/Sys-Virt-0.2.4
+ virtual/perl-Getopt-Long
+ virtual/perl-Data-Dumper
+ dev-perl/libintl-perl
+ >=app-misc/hivex-1.3.1[perl?]
+ dev-perl/String-ShellQuote
+ )
+ python? ( ${PYTHON_DEPS} )
+ fuse? ( sys-fs/fuse:= )
+ introspection? (
+ >=dev-libs/glib-2.26:2
+ >=dev-libs/gobject-introspection-1.30.0:=
+ )
+ selinux? (
+ sys-libs/libselinux
+ sys-libs/libsemanage
+ )
+ systemtap? ( dev-util/systemtap )
+ ocaml? (
+ >=dev-lang/ocaml-4.02[ocamlopt]
+ dev-ml/findlib[ocamlopt]
+ dev-ml/ocaml-gettext
+ >=dev-ml/ounit-2
+ )
+ erlang? ( dev-lang/erlang )
+ inspect-icons? (
+ media-libs/netpbm
+ media-gfx/icoutils
+ )
+ virtual/acl
+ sys-libs/libcap
+ lua? ( dev-lang/lua:* )
+ >=dev-libs/yajl-2.0.4
+ gtk? (
+ sys-apps/dbus
+ x11-libs/gtk+:3
+ )
+ net-libs/libtirpc
+ sys-libs/libxcrypt
+ "
+DEPEND="${COMMON_DEPEND}
+ dev-util/gperf
+ doc? ( app-text/po4a )
+ ruby? ( dev-lang/ruby virtual/rubygems dev-ruby/rake )
+ test? ( introspection? ( dev-libs/gjs ) )
+ "
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/libguestfs-appliance
+ "
+
+DOCS=( AUTHORS BUGS ChangeLog HACKING README TODO )
+
+PATCHES=(
+ "${FILESDIR}"/${MY_PV_1}/0001-Update-libtool-initialization.patch
+ "${FILESDIR}"/${MY_PV_1}/0002-Add-support-for-Gentoo-in-distribution-detection.patch
+ "${FILESDIR}"/${MY_PV_1}/0003-Fix-install-failure-when-not-built-with-OCaml-suppor.patch
+ "${FILESDIR}"/${MY_PV_1}/0004-Loosen-build-time-requirement-on-bash-completion.patch
+)
+
+pkg_setup () {
+ CONFIG_CHECK="~KVM ~VIRTIO"
+ [ -n "${CONFIG_CHECK}" ] && check_extra_config;
+
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+ xdg_environment_reset
+ eautoreconf
+}
+
+src_configure() {
+ # Disable feature test for kvm for more reason
+ # i.e: not loaded module in __build__ time,
+ # build server not supported kvm, etc. ...
+ #
+ # In fact, this feature is virtio support and requires
+ # configured kernel.
+ export vmchannel_test=no
+
+ econf \
+ --with-bashcompletiondir="$(get_bashcompdir)" \
+ $(use_with libvirt) \
+ --disable-appliance \
+ --disable-daemon \
+ --with-extra="-gentoo" \
+ --with-readline \
+ --disable-php \
+ $(use_enable python) \
+ --without-java \
+ $(use_enable perl) \
+ $(use_enable fuse) \
+ $(use_enable ocaml) \
+ $(use_enable ruby) \
+ --disable-haskell \
+ --disable-golang \
+ $(use_enable introspection gobject) \
+ $(use_enable introspection) \
+ $(use_enable erlang) \
+ $(use_enable static-libs static) \
+ $(use_enable systemtap probes) \
+ $(use_enable lua) \
+ --with-gtk=$(usex gtk 3 no) \
+ $(usex doc '' PO4A=no)
+}
+
+src_install() {
+ strip-linguas -i po
+ emake DESTDIR="${D}" install "LINGUAS=""${LINGUAS}"""
+ find "${ED}" -name '*.la' -delete || die
+ use perl && perl_delete_localpod
+}
+
+pkg_postinst() {
+ if ! use gtk ; then
+ einfo "virt-p2v NOT installed"
+ fi
+ if ! use ocaml ; then
+ einfo "Ocaml based tools ( sysprep , ... ) NOT installed"
+ fi
+ if ! use perl ; then
+ einfo "Perl based tools NOT build"
+ fi
+}
diff --git a/app-emulation/libguestfs/metadata.xml b/app-emulation/libguestfs/metadata.xml
index 8a1be2d16af7..5978f915af33 100644
--- a/app-emulation/libguestfs/metadata.xml
+++ b/app-emulation/libguestfs/metadata.xml
@@ -17,9 +17,10 @@
<longdescription>Libguestfs is a library and tool set for accessing and
modifying virtual machine (VM) disk images</longdescription>
<use>
- <flag name="fuse">Enable image mount support via fuse</flag>
<flag name="erlang">Build Erlang bindings</flag>
+ <flag name="fuse">Enable image mount support via fuse</flag>
+ <flag name="inspect-icons">Use <pkg>media-gfx/icoutils</pkg> for acces icon file in image and inspect it</flag>
+ <flag name="libvirt">Use <pkg>app-emulation/libvirt</pkg> to manipulate VMs</flag>
<flag name="systemtap">Use <pkg>dev-util/systemtap</pkg> to inspect VM via "probes" way</flag>
- <flag name="inspect-icons">Use <pkg>media-gfx/icoutils</pkg>for acces icon file in image and inspect it</flag>
</use>
</pkgmetadata>