Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/libguestfs/
Date: Tue, 31 May 2022 08:43:05
Message-Id: 1653986574.29cc9e6c686f05b8017855a52741edc5dc296398.sam@gentoo
1 commit: 29cc9e6c686f05b8017855a52741edc5dc296398
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Tue May 31 08:39:51 2022 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Tue May 31 08:42:54 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29cc9e6c
7
8 app-emulation/libguestfs: add 1.48.3
9
10 Signed-off-by: Sam James <sam <AT> gentoo.org>
11
12 app-emulation/libguestfs/Manifest | 1 +
13 app-emulation/libguestfs/libguestfs-1.48.3.ebuild | 218 ++++++++++++++++++++++
14 2 files changed, 219 insertions(+)
15
16 diff --git a/app-emulation/libguestfs/Manifest b/app-emulation/libguestfs/Manifest
17 index c28ffbbb1e49..e08dbbea05b8 100644
18 --- a/app-emulation/libguestfs/Manifest
19 +++ b/app-emulation/libguestfs/Manifest
20 @@ -1 +1,2 @@
21 DIST libguestfs-1.48.0.tar.gz 18426132 BLAKE2B a0ace19998e6eb368fa8ad73242b7c35c72244e9b9881f3adb76dcc8ed6e9a77691012e5786a26680a944d0876091bbb1d0f9ac63c0f5046538acf4402f840ac SHA512 b2486f32a3958c2b3e68d3f547dcd192dc7f8c59e0efd8660cd27cae9c218ce4fc2a60480dcb6bb0d10d8abbc2d2f4796075aea1cfab5e3c7cd12c38d4352fe2
22 +DIST libguestfs-1.48.3.tar.gz 19185249 BLAKE2B 1de07920c731a64ece9f1541752672a0251af73e455a3bd74fff6d512e96ef3a1b8182728080571fbf0f49ef072ed17029c6a5bd12f8171a1d2079bff0c22df2 SHA512 d88b7869e6098af1f7748dc2e8163b245ea251fcdf962a71e3735f5a1748c9e87a17be259802da3e0bb13569d7f7233b2c5a554b20a2a7758e1974a30a70b786
23
24 diff --git a/app-emulation/libguestfs/libguestfs-1.48.3.ebuild b/app-emulation/libguestfs/libguestfs-1.48.3.ebuild
25 new file mode 100644
26 index 000000000000..c1141e2e9a88
27 --- /dev/null
28 +++ b/app-emulation/libguestfs/libguestfs-1.48.3.ebuild
29 @@ -0,0 +1,218 @@
30 +# Copyright 1999-2022 Gentoo Authors
31 +# Distributed under the terms of the GNU General Public License v2
32 +
33 +EAPI=7
34 +
35 +# Bump with app-emulation/guestfs-tools and app-emulation/libguestfs-appliance (if any new release there)
36 +
37 +LUA_COMPAT=( lua5-1 )
38 +PYTHON_COMPAT=( python3_{8,9,10} )
39 +
40 +inherit autotools flag-o-matic linux-info lua-single perl-functions python-single-r1 strip-linguas toolchain-funcs
41 +
42 +MY_PV_1="$(ver_cut 1-2)"
43 +MY_PV_2="$(ver_cut 2)"
44 +[[ $(( ${MY_PV_2} % 2 )) -eq 0 ]] && SD="stable" || SD="development"
45 +
46 +DESCRIPTION="Tools for accessing, inspecting, and modifying virtual machine (VM) disk images"
47 +HOMEPAGE="https://libguestfs.org/"
48 +SRC_URI="https://libguestfs.org/download/${MY_PV_1}-${SD}/${P}.tar.gz"
49 +
50 +LICENSE="GPL-2 LGPL-2"
51 +SLOT="0/${MY_PV_1}"
52 +KEYWORDS="~amd64"
53 +IUSE="doc erlang +fuse gtk inspect-icons introspection libvirt lua +ocaml +perl python ruby selinux static-libs systemtap test"
54 +RESTRICT="!test? ( test )"
55 +
56 +REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )
57 + python? ( ${PYTHON_REQUIRED_USE} )"
58 +
59 +# Failures - doc
60 +COMMON_DEPEND="
61 + >=app-admin/augeas-1.8.0
62 + app-arch/cpio
63 + app-arch/lzma
64 + app-arch/rpm
65 + app-arch/unzip[natspec]
66 + app-arch/xz-utils
67 + app-forensics/yara
68 + app-cdr/cdrtools
69 + app-crypt/gnupg
70 + >=app-emulation/qemu-2.0[qemu_softmmu_targets_x86_64,systemtap?,selinux?,filecaps]
71 + >=app-misc/hivex-1.3.1
72 + dev-lang/perl:=
73 + dev-libs/libconfig:=
74 + dev-libs/libpcre2
75 + dev-libs/libxml2:2=
76 + dev-libs/jansson:=
77 + >=dev-libs/yajl-2.0.4
78 + net-libs/libtirpc:=
79 + sys-libs/ncurses:0=
80 + >=sys-apps/fakechroot-2.8
81 + sys-apps/fakeroot
82 + sys-apps/file
83 + sys-devel/gettext
84 + sys-fs/squashfs-tools:*
85 + sys-libs/libcap
86 + sys-libs/readline:=
87 + virtual/acl
88 + virtual/libcrypt:=
89 + erlang? ( dev-lang/erlang )
90 + perl? (
91 + virtual/perl-ExtUtils-MakeMaker
92 + >=dev-perl/Sys-Virt-0.2.4
93 + virtual/perl-Getopt-Long
94 + virtual/perl-Data-Dumper
95 + dev-perl/libintl-perl
96 + >=app-misc/hivex-1.3.1[perl?]
97 + dev-perl/String-ShellQuote
98 + )
99 + python? ( ${PYTHON_DEPS} )
100 + fuse? ( sys-fs/fuse:= )
101 + gtk? (
102 + sys-apps/dbus
103 + x11-libs/gtk+:3
104 + )
105 + introspection? (
106 + >=dev-libs/glib-2.26:2
107 + >=dev-libs/gobject-introspection-1.30.0:=
108 + )
109 + inspect-icons? (
110 + media-libs/netpbm
111 + media-gfx/icoutils
112 + )
113 + libvirt? ( app-emulation/libvirt )
114 + lua? ( ${LUA_DEPS} )
115 + ocaml? ( >=dev-lang/ocaml-4.03:=[ocamlopt] )
116 + selinux? (
117 + sys-libs/libselinux:=
118 + sys-libs/libsemanage
119 + )
120 + systemtap? ( dev-util/systemtap )
121 +"
122 +# Some OCaml is always required
123 +# bug #729674
124 +DEPEND="${COMMON_DEPEND}
125 + >=dev-lang/ocaml-4.03:=[ocamlopt]
126 + dev-util/gperf
127 + dev-ml/findlib[ocamlopt]
128 + doc? ( app-text/po4a )
129 + ocaml? (
130 + dev-ml/ounit2[ocamlopt]
131 + || (
132 + <dev-ml/ocaml-gettext-0.4.2
133 + dev-ml/ocaml-gettext-stub[ocamlopt]
134 + )
135 + )
136 + ruby? ( dev-lang/ruby virtual/rubygems dev-ruby/rake )
137 + test? ( introspection? ( dev-libs/gjs ) )
138 +"
139 +BDEPEND="virtual/pkgconfig"
140 +RDEPEND="${COMMON_DEPEND}
141 + app-emulation/libguestfs-appliance
142 + acct-group/kvm
143 +"
144 +# Upstream build scripts compile and install Lua bindings for the ABI version
145 +# obtained by running 'lua' on the build host
146 +BDEPEND="lua? ( ${LUA_DEPS} )"
147 +
148 +DOCS=( AUTHORS BUGS ChangeLog HACKING README TODO )
149 +
150 +PATCHES=(
151 + #"${FILESDIR}"/${MY_PV_1}/
152 + "${FILESDIR}"/1.44/
153 +)
154 +
155 +pkg_setup() {
156 + CONFIG_CHECK="~KVM ~VIRTIO"
157 + [[ -n "${CONFIG_CHECK}" ]] && check_extra_config
158 +
159 + use lua && lua-single_pkg_setup
160 + use python && python-single-r1_pkg_setup
161 +}
162 +
163 +src_prepare() {
164 + default
165 +
166 + eautoreconf
167 +}
168 +
169 +src_configure() {
170 + # bug #794877
171 + tc-export AR
172 +
173 + # Skip Bash test
174 + # (See 13-test-suite.log in linked bug)
175 + # bug #794874
176 + export SKIP_TEST_COMPLETE_IN_SCRIPT_SH=1
177 +
178 + # Disable feature test for kvm for more reason
179 + # i.e: not loaded module in __build__ time,
180 + # build server not supported kvm, etc. ...
181 + #
182 + # In fact, this feature is virtio support and requires
183 + # configured kernel.
184 + export vmchannel_test=no
185 +
186 + # Give a nudge to help find libxcrypt[-system]
187 + # We have a := dep on virtual/libcrypt to ensure this doesn't become stale.
188 + # bug #703118, bug #789354
189 + if ! has_version 'sys-libs/libxcrypt[system]' ; then
190 + append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/xcrypt"
191 + append-ldflags "-Wl,-R${ESYSROOT}/usr/$(get_libdir)/xcrypt"
192 + fi
193 +
194 + # Avoid automagic SELinux dependency
195 + export ac_cv_header_selinux_selinux_h=$(usex selinux)
196 +
197 + # Test suite at least has a bunch of bashisms
198 + SHELL="${BROOT}"/bin/bash CONFIG_SHELL="${BROOT}"/bin/bash econf \
199 + --disable-appliance \
200 + --disable-daemon \
201 + --disable-haskell \
202 + --disable-golang \
203 + --disable-rust \
204 + --disable-php \
205 + --without-java \
206 + --with-extra="-gentoo" \
207 + --with-readline \
208 + $(usex doc '' PO4A=no) \
209 + $(use_enable ocaml) \
210 + $(use_enable erlang) \
211 + $(use_enable fuse) \
212 + $(use_enable introspection gobject) \
213 + $(use_enable introspection) \
214 + $(use_with libvirt) \
215 + $(use_enable lua) \
216 + $(use_enable python) \
217 + $(use_enable perl) \
218 + $(use_enable ruby) \
219 + $(use_enable static-libs static) \
220 + $(use_enable systemtap probes)
221 +}
222 +
223 +src_install() {
224 + strip-linguas -i po
225 +
226 + emake DESTDIR="${D}" install "LINGUAS=""${LINGUAS}"""
227 +
228 + find "${ED}" -name '*.la' -delete || die
229 +
230 + if use perl ; then
231 + perl_delete_localpod
232 +
233 + # Workaround Build.PL for now
234 + doman "${ED}"/usr/man/man3/Sys::Guestfs.3pm
235 + rm -rf "${ED}"/usr/man || die
236 + fi
237 +}
238 +
239 +pkg_postinst() {
240 + einfo "Please ensure you are in the 'kvm' group for decent performance!"
241 +
242 + if ! use gtk ; then
243 + einfo "virt-p2v NOT installed"
244 + fi
245 +
246 + einfo "Note that common tools like virt-resize are now part of app-emulation/guestfs-tools"
247 +}