diff options
author | Sam James <sam@gentoo.org> | 2021-10-07 07:00:11 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-10-07 07:09:45 +0100 |
commit | 0f0d7d1bedc121027e3f4cccf5b94a71a971891e (patch) | |
tree | 0cadbf58d41091e46122b6ad2bdfb141fbdde4d7 /app-emulation/libguestfs | |
parent | dev-python/python-lsp-server: Remove old (diff) | |
download | gentoo-0f0d7d1bedc121027e3f4cccf5b94a71a971891e.tar.gz gentoo-0f0d7d1bedc121027e3f4cccf5b94a71a971891e.tar.bz2 gentoo-0f0d7d1bedc121027e3f4cccf5b94a71a971891e.zip |
app-emulation/libguestfs: split out tools into guestfs-tools, tidy ebuild
Bug: https://bugs.gentoo.org/816693
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-emulation/libguestfs')
-rw-r--r-- | app-emulation/libguestfs/libguestfs-1.46.0-r1.ebuild (renamed from app-emulation/libguestfs/libguestfs-1.46.0.ebuild) | 137 | ||||
-rw-r--r-- | app-emulation/libguestfs/metadata.xml | 23 |
2 files changed, 79 insertions, 81 deletions
diff --git a/app-emulation/libguestfs/libguestfs-1.46.0.ebuild b/app-emulation/libguestfs/libguestfs-1.46.0-r1.ebuild index 8f136aeb44fc..f1d3e7a9f308 100644 --- a/app-emulation/libguestfs/libguestfs-1.46.0.ebuild +++ b/app-emulation/libguestfs/libguestfs-1.46.0-r1.ebuild @@ -6,20 +6,20 @@ EAPI=7 LUA_COMPAT=( lua5-1 ) PYTHON_COMPAT=( python3_{8,9,10} ) -inherit autotools bash-completion-r1 linux-info lua-single perl-functions python-single-r1 strip-linguas toolchain-funcs xdg-utils flag-o-matic +inherit bash-completion-r1 flag-o-matic linux-info lua-single perl-functions python-single-r1 strip-linguas toolchain-funcs 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" +DESCRIPTION="Tools for accessing, inspecting, and modifying virtual machine (VM) disk images" HOMEPAGE="https://libguestfs.org/" SRC_URI="https://libguestfs.org/download/${MY_PV_1}-${SD}/${P}.tar.gz" LICENSE="GPL-2 LGPL-2" SLOT="0/${MY_PV_1}" - -KEYWORDS="~amd64" +# Unkeyworded for testing guestfs-tools split, #816693 +#KEYWORDS="~amd64" IUSE="doc erlang +fuse gtk inspect-icons introspection libvirt lua +ocaml +perl python ruby selinux static-libs systemtap test" RESTRICT="!test? ( test )" @@ -27,32 +27,36 @@ REQUIRED_USE="lua? ( ${LUA_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-admin/augeas-1.8.0 app-arch/cpio - dev-lang/perl:= + app-arch/lzma + app-arch/unzip[natspec] + app-arch/xz-utils app-cdr/cdrtools + app-crypt/gnupg >=app-emulation/qemu-2.0[qemu_softmmu_targets_x86_64,systemtap?,selinux?,filecaps] - sys-apps/fakeroot - sys-apps/file - libvirt? ( app-emulation/libvirt ) + >=app-misc/hivex-1.3.1 + dev-lang/perl:= + dev-libs/libconfig:= + dev-libs/libpcre:3 dev-libs/libxml2:2= + dev-libs/jansson:= + >=dev-libs/yajl-2.0.4 + net-libs/libtirpc:= + sys-libs/ncurses:0= >=sys-apps/fakechroot-2.8 - >=app-admin/augeas-1.8.0 + sys-apps/fakeroot + sys-apps/file + sys-devel/gettext sys-fs/squashfs-tools:* - dev-libs/libconfig:= - dev-libs/jansson:= - sys-libs/readline:0= >=sys-libs/db-4.6:* - app-arch/xz-utils - app-arch/lzma - app-crypt/gnupg - app-arch/unzip[natspec] + sys-libs/libcap + sys-libs/readline:= + virtual/acl + virtual/libcrypt:= + erlang? ( dev-lang/erlang ) perl? ( virtual/perl-ExtUtils-MakeMaker >=dev-perl/Sys-Virt-0.2.4 @@ -64,38 +68,34 @@ COMMON_DEPEND=" ) python? ( ${PYTHON_DEPS} ) fuse? ( sys-fs/fuse:= ) + gtk? ( + sys-apps/dbus + x11-libs/gtk+:3 + ) 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.03:=[ocamlopt] ) - erlang? ( dev-lang/erlang ) inspect-icons? ( media-libs/netpbm media-gfx/icoutils ) - virtual/acl - sys-libs/libcap + libvirt? ( app-emulation/libvirt ) lua? ( ${LUA_DEPS} ) - >=dev-libs/yajl-2.0.4 - gtk? ( - sys-apps/dbus - x11-libs/gtk+:3 + ocaml? ( >=dev-lang/ocaml-4.03:=[ocamlopt] ) + selinux? ( + sys-libs/libselinux + sys-libs/libsemanage ) - net-libs/libtirpc:= - sys-libs/libxcrypt:= + systemtap? ( dev-util/systemtap ) " # Some OCaml is always required # bug #729674 DEPEND="${COMMON_DEPEND} - dev-util/gperf >=dev-lang/ocaml-4.03:=[ocamlopt] + dev-util/gperf dev-ml/findlib[ocamlopt] + doc? ( app-text/po4a ) ocaml? ( dev-ml/ounit2[ocamlopt] || ( @@ -103,13 +103,13 @@ DEPEND="${COMMON_DEPEND} dev-ml/ocaml-gettext-stub[ocamlopt] ) ) - doc? ( app-text/po4a ) ruby? ( dev-lang/ruby virtual/rubygems dev-ruby/rake ) test? ( introspection? ( dev-libs/gjs ) ) " BDEPEND="virtual/pkgconfig" RDEPEND="${COMMON_DEPEND} app-emulation/libguestfs-appliance + acct-group/kvm " # Upstream build scripts compile and install Lua bindings for the ABI version # obtained by running 'lua' on the build host @@ -129,12 +129,6 @@ pkg_setup() { use python && python-single-r1_pkg_setup } -src_prepare() { - default - xdg_environment_reset - eautoreconf -} - src_configure() { # bug #794877 tc-export AR @@ -153,33 +147,36 @@ src_configure() { export vmchannel_test=no # Give a nudge to help find libxcrypt[-system] + # We have a := dep on virtual/libcrypt to ensure this doesn't become stale. # bug #703118, bug #789354 - append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/xcrypt" - append-ldflags "-Wl,-R${ESYSROOT}/usr/$(get_libdir)/xcrypt" + if ! has_version 'sys-libs/libxcrypt[system]' ; then + append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/xcrypt" + append-ldflags "-Wl,-R${ESYSROOT}/usr/$(get_libdir)/xcrypt" + fi econf \ - $(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 \ --disable-rust \ + --disable-php \ + --without-java \ + --with-extra="-gentoo" \ + --with-readline \ + $(usex doc '' PO4A=no) \ + $(use_enable ocaml) \ + $(use_enable erlang) \ + $(use_enable fuse) \ $(use_enable introspection gobject) \ $(use_enable introspection) \ - $(use_enable erlang) \ - $(use_enable static-libs static) \ - $(use_enable systemtap probes) \ + $(use_with libvirt) \ $(use_enable lua) \ - $(usex doc '' PO4A=no) + $(use_enable python) \ + $(use_enable perl) \ + $(use_enable ruby) \ + $(use_enable static-libs static) \ + $(use_enable systemtap probes) } src_install() { @@ -198,16 +195,24 @@ src_install() { fi } +pkg_preinst() { + local libguestfs_depstring="<app-emulation/libguestfs-1.46.0-r1" + + # Did we have a version of libguestfs before the split into guestfs-tools? + # (libguestfs used to install the tools too) + if has_version "${libguestfs_depstring}[ocaml]" || has_version "${libguestfs_depstring}[perl]" ; then + HAD_LIBGUESTFS_WITH_TOOLS=1 + fi +} + pkg_postinst() { + einfo "Please ensure you are in the 'kvm' group for decent performance!" + if ! use gtk ; then einfo "virt-p2v NOT installed" fi - if ! use ocaml ; then - einfo "OCaml based tools and bindings (virt-resize, virt-sparsify, virt-sysprep, ...) NOT installed" - fi - - if ! use perl ; then - einfo "Perl based tools NOT built" + if [[ ${HAD_LIBGUESTFS_WITH_TOOLS} -eq 1 ]] ; then + ewarn "libguestfs' tools are now packaged as app-emulation/guestfs-tools from 1.46.0 onwards!" fi } diff --git a/app-emulation/libguestfs/metadata.xml b/app-emulation/libguestfs/metadata.xml index 4f3be3f3c1c2..ddd4c20532b2 100644 --- a/app-emulation/libguestfs/metadata.xml +++ b/app-emulation/libguestfs/metadata.xml @@ -1,19 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<!-- maintainer-needed --> -<!-- -<maintainer type="person"> - <email>rich@annexia.org</email> - <name>Richard Jones</name> - <description>Upstream - please CC on bugs that concerns upstream</description> -</maintainer> ---> -<use> - <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> -</use> + <!-- maintainer-needed --> + <use> + <flag name="erlang">Build Erlang bindings</flag> + <flag name="fuse">Enable image mount support via <pkg>sys-fs/fuse</pkg></flag> + <flag name="inspect-icons">Use <pkg>media-gfx/icoutils</pkg> for accessing/inspecting icon file within images</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"</flag> + </use> </pkgmetadata> |