Gentoo Archives: gentoo-commits

From: Viorel Munteanu <ceamac@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox-modules/files/, app-emulation/virtualbox/, ...
Date: Wed, 02 Nov 2022 06:41:47
Message-Id: 1667371182.f2247b6b3f3b1a8d17c323a3671edf043b501438.ceamac@gentoo
1 commit: f2247b6b3f3b1a8d17c323a3671edf043b501438
2 Author: Viorel Munteanu <ceamac.paragon <AT> gmail <DOT> com>
3 AuthorDate: Wed Nov 2 05:59:04 2022 +0000
4 Commit: Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
5 CommitDate: Wed Nov 2 06:39:42 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f2247b6b
7
8 app-emulation/virtualbox*: drop 6.1.36, 6.1.38
9
10 Bug: https://bugs.gentoo.org/877601
11 Signed-off-by: Viorel Munteanu <ceamac.paragon <AT> gmail.com>
12 Closes: https://github.com/gentoo/gentoo/pull/27894
13 Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>
14
15 app-emulation/virtualbox-additions/Manifest | 2 -
16 .../virtualbox-additions-6.1.36.ebuild | 30 -
17 .../virtualbox-additions-6.1.38.ebuild | 30 -
18 app-emulation/virtualbox-extpack-oracle/Manifest | 2 -
19 .../virtualbox-extpack-oracle-6.1.36.ebuild | 41 --
20 .../virtualbox-extpack-oracle-6.1.38.ebuild | 41 --
21 app-emulation/virtualbox-guest-additions/Manifest | 2 -
22 .../virtualbox-guest-additions-6.1.36.ebuild | 280 ---------
23 .../virtualbox-guest-additions-6.1.38.ebuild | 281 ---------
24 .../files/virtualbox-modules-5.2.8-pax-const.patch | 44 --
25 .../virtualbox-modules/files/virtualbox.conf | 4 -
26 .../virtualbox-modules-6.1.36.ebuild | 65 --
27 .../virtualbox-modules-6.1.38.ebuild | 65 --
28 app-emulation/virtualbox/Manifest | 2 -
29 .../virtualbox/virtualbox-6.1.36-r2.ebuild | 654 --------------------
30 app-emulation/virtualbox/virtualbox-6.1.38.ebuild | 663 ---------------------
31 16 files changed, 2206 deletions(-)
32
33 diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
34 index 9ab6de8f40e3..d5b7af278fbd 100644
35 --- a/app-emulation/virtualbox-additions/Manifest
36 +++ b/app-emulation/virtualbox-additions/Manifest
37 @@ -1,4 +1,2 @@
38 -DIST VBoxGuestAdditions_6.1.36.iso 63803392 BLAKE2B bcd795e4f4ed5b25542011370b0d0ede0a163c89df597d085d731627bf041a5bc8eb8d60c2041bfe1654986751e16bb382680ad487d90def2e8a7d9fab21dd24 SHA512 cf07e77ac882eb9cd6da39c6491f2536ac8c1e4bddb27e50bb6d1016ab7a291746cd59c6966c54ba007bb4cb79b82ebcfacec5984a6e7453f60ad167014542aa
39 -DIST VBoxGuestAdditions_6.1.38.iso 63887360 BLAKE2B 36688f43d8be5b0f408715f9ad902caf1e298d01f77e5fbb236e15c56da5097c91a4df846b786cb3fa4aa9b97d0360c627b757eebc0503a675b7eb6b752015a0 SHA512 df7051988174227af733d2fb4fd703c885f9637345077090034f3392b2c4deef8ac87d0b9e76f29149609b6e2b7158109377c9af5fdbcdc5691ae6e401c4731b
40 DIST VBoxGuestAdditions_6.1.40.iso 63883264 BLAKE2B b9a22604b7dc135e9944bb46e7fb59e6202e692dd75de89763c6fe432328f65bacf4d893221a5e6f90ed3236fd36af2f6608932402e0ae967eb1ed24f6b1153a SHA512 149311a826c20f9bc8212e7580d3b552b4cd82f7e9dbaf4e44f363807f8132f0a81eb39082fc8876fcd5fb527d7d7c8ae1b3b6d8372b9bb39273d88fbd84a185
41 DIST VBoxGuestAdditions_7.0.2.iso 52957184 BLAKE2B 8740a9c57268b96995d9412a7799f1c5d7901619f909eb8bef244e3fbadf5a6d94f35f40fa437eb8eda563a77110723bfad4eac518a93fc00e7ee246fd820ac8 SHA512 8084e97b37c6a4471bea8df4ba8464b4c709b4c9b69141c92adec70c12bc32fab583fa20ab04135bcab67f4902b88dbc9539c88909ab65e3eef6bce4c93c692a
42
43 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-6.1.36.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-6.1.36.ebuild
44 deleted file mode 100644
45 index 7cc456fe3207..000000000000
46 --- a/app-emulation/virtualbox-additions/virtualbox-additions-6.1.36.ebuild
47 +++ /dev/null
48 @@ -1,30 +0,0 @@
49 -# Copyright 2022 Gentoo Authors
50 -# Distributed under the terms of the GNU General Public License v2
51 -
52 -EAPI=8
53 -
54 -MY_PN=VBoxGuestAdditions
55 -MY_PV="${PV/beta/BETA}"
56 -MY_PV="${MY_PV/rc/RC}"
57 -MY_P=${MY_PN}_${MY_PV}
58 -
59 -DESCRIPTION="CD image containing guest additions for VirtualBox"
60 -HOMEPAGE="https://www.virtualbox.org/"
61 -SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
62 -
63 -LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
64 -SLOT="0/$(ver_cut 1-2)"
65 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
66 -KEYWORDS="amd64"
67 -IUSE=""
68 -
69 -S="${WORKDIR}"
70 -
71 -src_unpack() {
72 - return 0
73 -}
74 -
75 -src_install() {
76 - insinto /usr/share/${PN/-additions}
77 - newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
78 -}
79
80 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-6.1.38.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-6.1.38.ebuild
81 deleted file mode 100644
82 index 7cc456fe3207..000000000000
83 --- a/app-emulation/virtualbox-additions/virtualbox-additions-6.1.38.ebuild
84 +++ /dev/null
85 @@ -1,30 +0,0 @@
86 -# Copyright 2022 Gentoo Authors
87 -# Distributed under the terms of the GNU General Public License v2
88 -
89 -EAPI=8
90 -
91 -MY_PN=VBoxGuestAdditions
92 -MY_PV="${PV/beta/BETA}"
93 -MY_PV="${MY_PV/rc/RC}"
94 -MY_P=${MY_PN}_${MY_PV}
95 -
96 -DESCRIPTION="CD image containing guest additions for VirtualBox"
97 -HOMEPAGE="https://www.virtualbox.org/"
98 -SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
99 -
100 -LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
101 -SLOT="0/$(ver_cut 1-2)"
102 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
103 -KEYWORDS="amd64"
104 -IUSE=""
105 -
106 -S="${WORKDIR}"
107 -
108 -src_unpack() {
109 - return 0
110 -}
111 -
112 -src_install() {
113 - insinto /usr/share/${PN/-additions}
114 - newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
115 -}
116
117 diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
118 index 996774baafec..aec779e0d8e4 100644
119 --- a/app-emulation/virtualbox-extpack-oracle/Manifest
120 +++ b/app-emulation/virtualbox-extpack-oracle/Manifest
121 @@ -1,4 +1,2 @@
122 -DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.36.tar.gz 11231896 BLAKE2B 08872189b8be959e13f07b69635b08d41661841cc30bdea1bec73c8fc87f1e374e53658e160cd290b919465bad62ef633cdc79e11d477a6bf0b9a67ae8131f73 SHA512 98ba542fbe60848877c25cf8e8f252081e231687d8b4cc4324283e6e787c00cb83c0570379a50364ee239a10195b25740f9c2e0e559cec28b75f56717623df16
123 -DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.38.tar.gz 11232961 BLAKE2B d736cad4b9d2f0eb6207918588a1f4794b3366cc2cb5ad857d9b7501d9cf8db6e9e56fa1d99954016d508d9600218e06587b5725b3834e82d0e2ec754db00877 SHA512 1ae455bd478d47eafd13ca196914685a08105156cd706c7aa86103daac2bbe76edd051deb56a873344b40df2f8418308ce69de61f2ea68353b34a27d8ffd9510
124 DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.40.tar.gz 11233264 BLAKE2B c169747b6c0214bd850c5e639d5245e2084701c1ee764e8798a779545d95b8eb8ec0cf4622d5156c0a17126a6a522d041ec126984062b72e71a2283ae9652bd7 SHA512 6d8ff0f7f0c4eaaf9c6fcf965133fddc1d4057cffb98a10ade6cf0065e9f656bc49656bb3ac817694cbf9ca2fb4226f3e9ac9b1383ab07cdcbe05ffe18809ce1
125 DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.2.tar.gz 18515967 BLAKE2B c1b0a52b8dd80089130e0c7ed255d622144ef6271cfe71e120aa4be69fb9c04b83a33c78305eb6b6f44cb648d18170490c506e8ce765acb649de598abcae88ad SHA512 3d465b250051bef68b332b4908cbf1f0b07f32fddfec76a4e85de41e018beaf6bf7b29214dafbd05e6fcf3e3c694b621a05bfa98f12f56c1b3d224d9fff22f74
126
127 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.36.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.36.ebuild
128 deleted file mode 100644
129 index 3dbb1658be56..000000000000
130 --- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.36.ebuild
131 +++ /dev/null
132 @@ -1,41 +0,0 @@
133 -# Copyright 2022 Gentoo Authors
134 -# Distributed under the terms of the GNU General Public License v2
135 -
136 -EAPI=8
137 -
138 -MAIN_PV="$(ver_cut 1-3)"
139 -if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
140 - MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
141 - DEP_PV="${MY_PV}"
142 - MY_PV="${MY_PV/beta/BETA}"
143 - MY_PV="${MY_PV/rc/RC}"
144 -else
145 - MY_PV="${MAIN_PV}"
146 - DEP_PV="${MAIN_PV}"
147 -fi
148 -#VBOX_BUILD_ID="$(ver_cut 4)"
149 -MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
150 -MY_P="${MY_PN}-${MY_PV}" #-${VBOX_BUILD_ID}"
151 -
152 -DESCRIPTION="PUEL extensions for VirtualBox"
153 -HOMEPAGE="https://www.virtualbox.org/"
154 -SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
155 -
156 -LICENSE="PUEL"
157 -SLOT="0/$(ver_cut 1-2)"
158 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
159 -KEYWORDS="amd64"
160 -IUSE=""
161 -RESTRICT="bindist mirror strip"
162 -
163 -RDEPEND="=app-emulation/virtualbox-${DEP_PV}*"
164 -
165 -S="${WORKDIR}"
166 -
167 -QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
168 -
169 -src_install() {
170 - insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
171 - doins -r linux.${ARCH}
172 - doins ExtPack* PXE-Intel.rom
173 -}
174
175 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.38.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.38.ebuild
176 deleted file mode 100644
177 index 3dbb1658be56..000000000000
178 --- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.38.ebuild
179 +++ /dev/null
180 @@ -1,41 +0,0 @@
181 -# Copyright 2022 Gentoo Authors
182 -# Distributed under the terms of the GNU General Public License v2
183 -
184 -EAPI=8
185 -
186 -MAIN_PV="$(ver_cut 1-3)"
187 -if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
188 - MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
189 - DEP_PV="${MY_PV}"
190 - MY_PV="${MY_PV/beta/BETA}"
191 - MY_PV="${MY_PV/rc/RC}"
192 -else
193 - MY_PV="${MAIN_PV}"
194 - DEP_PV="${MAIN_PV}"
195 -fi
196 -#VBOX_BUILD_ID="$(ver_cut 4)"
197 -MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
198 -MY_P="${MY_PN}-${MY_PV}" #-${VBOX_BUILD_ID}"
199 -
200 -DESCRIPTION="PUEL extensions for VirtualBox"
201 -HOMEPAGE="https://www.virtualbox.org/"
202 -SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
203 -
204 -LICENSE="PUEL"
205 -SLOT="0/$(ver_cut 1-2)"
206 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
207 -KEYWORDS="amd64"
208 -IUSE=""
209 -RESTRICT="bindist mirror strip"
210 -
211 -RDEPEND="=app-emulation/virtualbox-${DEP_PV}*"
212 -
213 -S="${WORKDIR}"
214 -
215 -QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
216 -
217 -src_install() {
218 - insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
219 - doins -r linux.${ARCH}
220 - doins ExtPack* PXE-Intel.rom
221 -}
222
223 diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
224 index 7223bc1b6af8..a5e8f21a51a9 100644
225 --- a/app-emulation/virtualbox-guest-additions/Manifest
226 +++ b/app-emulation/virtualbox-guest-additions/Manifest
227 @@ -1,5 +1,3 @@
228 -DIST VirtualBox-6.1.36.tar.bz2 165685382 BLAKE2B 98dbb06450b9df650cb72493bcdea4b88fa9dd21f76d723fdc0bb2c1ab8266f67e972a7222dc9b5bd0d43754911710664bddace753995be025cf6bcc05a24ae5 SHA512 cc3b984a7da40c9bf14831808a2bc2bf7bf6821e53c25fa11cb4b4275feb1d4b0cb4a47d8a360b90c89e5a4038481efe8fe28ee22996dbefb6446761e88a8dec
229 -DIST VirtualBox-6.1.38.tar.bz2 165761175 BLAKE2B decda6e7a595f79e6ace6f8f6b8a7829223ac1422c3d280b6287a40ef942e773ad473f4fa4640a76f8fb825ebd8561c646f1b3d87922b1af55c138298b4c8f4f SHA512 7a4f2dc80e3251b1da6d29d3c6f6b802527decc70497b1a1d1008c0ab3109c2039d131c587d6ec4786aea619546757655337c2ec3456243336ca13c6f6748116
230 DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
231 DIST VirtualBox-7.0.2.tar.bz2 199461536 BLAKE2B 94f7c2961c13530b6086bf4576f243b5b260f43ec445c8a2e411205989a9db229715502f2b76b8f3cb45a49ff565410701be90f1e850f069aae5579c0796b503 SHA512 c79d6365f83e1fde356a7f4a6ccd23bc7306d1b5b4be669634c575f08ba53338caca684758c9409ecef2b05ab6f9ad37dfa6075ad6afbc5d7909d46ee6794927
232 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
233
234 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.36.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.36.ebuild
235 deleted file mode 100644
236 index 43c37b24a0d7..000000000000
237 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.36.ebuild
238 +++ /dev/null
239 @@ -1,280 +0,0 @@
240 -# Copyright 2022 Gentoo Authors
241 -# Distributed under the terms of the GNU General Public License v2
242 -
243 -EAPI=8
244 -
245 -inherit edo linux-mod systemd toolchain-funcs udev
246 -
247 -MY_PN="VirtualBox"
248 -MY_PV="${PV/beta/BETA}"
249 -MY_PV="${MY_PV/rc/RC}"
250 -MY_P="${MY_PN}-${MY_PV}"
251 -[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
252 -
253 -DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
254 -HOMEPAGE="https://www.virtualbox.org/"
255 -SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
256 - https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-${MY_PV}.tar.bz2"
257 -
258 -LICENSE="GPL-2"
259 -SLOT="0/$(ver_cut 1-2)"
260 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
261 -KEYWORDS="amd64 x86"
262 -IUSE="X"
263 -
264 -# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
265 -RDEPEND="
266 - acct-group/vboxguest
267 - acct-group/vboxsf
268 - acct-user/vboxguest
269 - X? ( x11-apps/xrandr
270 - x11-apps/xrefresh
271 - x11-libs/libXmu
272 - x11-libs/libX11
273 - x11-libs/libXt
274 - x11-libs/libXext
275 - x11-libs/libXau
276 - x11-libs/libXdmcp
277 - x11-libs/libSM
278 - x11-libs/libICE )
279 - sys-apps/dbus
280 -"
281 -DEPEND="
282 - ${RDEPEND}
283 - >=dev-util/kbuild-0.1.9998.3127
284 - >=dev-lang/yasm-0.6.2
285 - sys-devel/bin86
286 - sys-libs/pam
287 - sys-power/iasl
288 - x11-base/xorg-proto
289 -"
290 -PDEPEND="
291 - X? ( x11-drivers/xf86-video-vboxvideo )
292 -"
293 -BUILD_TARGETS="all"
294 -BUILD_TARGET_ARCH="${ARCH}"
295 -
296 -S="${WORKDIR}/${MY_PN}-${DIR_PV:-${PV}}"
297 -VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
298 -
299 -pkg_setup() {
300 - export DISTCC_DISABLE=1 #674256
301 - MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
302 - vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
303 - use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
304 -
305 - linux-mod_pkg_setup
306 -}
307 -
308 -src_prepare() {
309 - # Remove shipped binaries (kBuild,yasm), see bug #232775
310 - rm -r kBuild/bin tools || die
311 -
312 - # Provide kernel sources
313 - pushd src/VBox/Additions &>/dev/null || die
314 - ebegin "Extracting guest kernel module sources"
315 - kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null
316 - eend $? || die
317 - popd &>/dev/null || die
318 -
319 - # PaX fixes (see bug #298988)
320 - pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
321 - eapply "${FILESDIR}"/vboxguest-6.1.36-log-use-c99.patch
322 - popd &>/dev/null || die
323 -
324 - # Disable things unused or splitted into separate ebuilds
325 - cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
326 - use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
327 -
328 - # Remove pointless GCC version check
329 - sed -e '/^check_gcc$/d' -i configure || die
330 -
331 - # Respect LDFLAGS (bug #759100)
332 - sed -i -e '/TEMPLATE_VBOXR3EXE_LDFLAGS.linux[ ]*=/ s/$/ $(CCLDFLAGS)/' Config.kmk
333 -
334 - # Do not use hard-coded ld (related to bug #488176)
335 - #sed -e '/QUIET)ld /s@ld @$(LD) @' \
336 - # -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
337 -
338 - eapply "${WORKDIR}/virtualbox-patches-${MY_PV}/patches"
339 - eapply_user
340 -}
341 -
342 -src_configure() {
343 - tc-export AR CC CXX LD RANLIB
344 -
345 - # Build the user-space tools, warnings are harmless
346 - local myconf=(
347 - --with-gcc="$(tc-getCC)"
348 - --with-g++="$(tc-getCXX)"
349 -
350 - --nofatal
351 - --disable-xpcom
352 - --disable-sdl-ttf
353 - --disable-pulse
354 - --disable-alsa
355 - --target-arch=${ARCH}
356 - --with-linux="${KV_OUT_DIR}"
357 - --build-headless
358 - )
359 -
360 - # bug #843437
361 - # Respect LDFLAGS (bug #759100)
362 - # Cannot use LDFLAGS here because they also get passed to $(LD)
363 - cat >> LocalConfig.kmk <<-EOF || die
364 - CFLAGS=${CFLAGS}
365 - CXXFLAGS=${CXXFLAGS}
366 - CCLDFLAGS=${LDFLAGS}
367 - EOF
368 -
369 - edo ./configure "${myconf[@]}"
370 -}
371 -
372 -src_compile() {
373 - source ./env.sh || die
374 -
375 - # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
376 - MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
377 - MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
378 - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
379 -
380 - local myemakeargs=(
381 - VBOX_BUILD_PUBLISHER=_Gentoo
382 - VBOX_ONLY_ADDITIONS=1
383 -
384 - KBUILD_VERBOSE=2
385 -
386 - AS="$(tc-getCC)"
387 - CC="$(tc-getCC)"
388 - CXX="$(tc-getCXX)"
389 - LD="$(tc-getCC)"
390 -
391 - TOOL_GCC3_CC="$(tc-getCC)"
392 - TOOL_GCC3_CXX="$(tc-getCXX)"
393 - TOOL_GCC3_LD="$(tc-getCC)"
394 - TOOL_GCC3_AS="$(tc-getCC)"
395 - TOOL_GCC3_AR="$(tc-getAR)"
396 - TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
397 - #TOOL_GCC3_LD_SYSMOD="$(tc-getCC)"
398 -
399 - TOOL_GXX3_CC="$(tc-getCC)"
400 - TOOL_GXX3_CXX="$(tc-getCXX)"
401 - TOOL_GXX3_LD="$(tc-getCXX)"
402 - TOOL_GXX3_AS="$(tc-getCXX)"
403 - TOOL_GXX3_AR="$(tc-getAR)"
404 - TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
405 - #TOOL_GXX3_LD_SYSMOD="$(tc-getCXX)"
406 -
407 - TOOL_GCC3_CFLAGS="${CFLAGS}"
408 - TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
409 - VBOX_GCC_OPT="${CXXFLAGS}"
410 - VBOX_NM="$(tc-getNM)"
411 - TOOL_YASM_AS=yasm
412 - )
413 -
414 - MAKE="kmk" emake "${myemakeargs[@]}"
415 -
416 - # Now creating the kernel modules. We must do this _after_
417 - # we compiled the user-space tools as we need two of the
418 - # automatically generated header files. (>=3.2.0)
419 - # Move this here for bug 836037
420 - BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
421 - linux-mod_src_compile
422 -}
423 -
424 -src_install() {
425 - linux-mod_src_install
426 -
427 - cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
428 -
429 - insinto /sbin
430 - newins mount.vboxsf mount.vboxsf
431 - fperms 4755 /sbin/mount.vboxsf
432 -
433 - newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN}
434 -
435 - insinto /usr/sbin/
436 - newins VBoxService vboxguest-service
437 - fperms 0755 /usr/sbin/vboxguest-service
438 -
439 - insinto /usr/bin
440 - doins VBoxControl
441 - fperms 0755 /usr/bin/VBoxControl
442 -
443 - # VBoxClient user service and xrandr wrapper
444 - if use X ; then
445 - doins VBoxClient
446 - fperms 0755 /usr/bin/VBoxClient
447 - doins VBoxDRMClient
448 - fperms 4755 /usr/bin/VBoxDRMClient
449 -
450 - pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
451 - || die
452 - newins 98vboxadd-xclient VBoxClient-all
453 - fperms 0755 /usr/bin/VBoxClient-all
454 - popd &>/dev/null || die
455 - fi
456 -
457 - # udev rule for vboxdrv
458 - local udev_rules_dir="/lib/udev/rules.d"
459 - dodir ${udev_rules_dir}
460 - echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
461 - >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
462 - || die
463 - echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
464 - >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
465 - || die
466 -
467 - # VBoxClient autostart file
468 - insinto /etc/xdg/autostart
469 - doins "${FILESDIR}"/vboxclient.desktop
470 -
471 - # sample xorg.conf
472 - dodoc "${FILESDIR}"/xorg.conf.vbox
473 - docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
474 -
475 - systemd_dounit "${FILESDIR}/${PN}.service"
476 -}
477 -
478 -pkg_postinst() {
479 - linux-mod_pkg_postinst
480 - udev_reload
481 - if ! use X ; then
482 - elog "use flag X is off, enable it to install the"
483 - elog "X Window System video driver."
484 - fi
485 - elog ""
486 - elog "Please add users to the \"vboxguest\" group so they can"
487 - elog "benefit from seamless mode, auto-resize and clipboard."
488 - elog ""
489 - elog "The vboxsf group has been added to make automount services work."
490 - elog "These services are part of the shared folders support."
491 - elog ""
492 - elog "Please add:"
493 - elog "/etc/init.d/${PN}"
494 - elog "to the default runlevel in order to start"
495 - elog "needed services."
496 - elog "To use the VirtualBox X driver, use the following"
497 - elog "file as your /etc/X11/xorg.conf:"
498 - elog " /usr/share/doc/${PF}/xorg.conf.vbox"
499 - elog ""
500 - elog "Also make sure you use the Mesa library for OpenGL:"
501 - elog " eselect opengl set xorg-x11"
502 - elog ""
503 - elog "An autostart .desktop file has been installed to start"
504 - elog "VBoxClient in desktop sessions."
505 - elog ""
506 - elog "You can mount shared folders with:"
507 - elog " mount -t vboxsf <shared_folder_name> <mount_point>"
508 - elog ""
509 - elog "Warning:"
510 - elog "this ebuild is only needed if you are running gentoo"
511 - elog "inside a VirtualBox Virtual Machine, you don't need"
512 - elog "it to run VirtualBox itself."
513 - elog ""
514 -}
515 -
516 -pkg_postrm() {
517 - linux-mod_pkg_postrm
518 - udev_reload
519 -}
520
521 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.38.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.38.ebuild
522 deleted file mode 100644
523 index 90ed39cc4aaa..000000000000
524 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.38.ebuild
525 +++ /dev/null
526 @@ -1,281 +0,0 @@
527 -# Copyright 2022 Gentoo Authors
528 -# Distributed under the terms of the GNU General Public License v2
529 -
530 -EAPI=8
531 -
532 -inherit edo linux-mod systemd toolchain-funcs udev
533 -
534 -MY_PN="VirtualBox"
535 -MY_PV="${PV/beta/BETA}"
536 -MY_PV="${MY_PV/rc/RC}"
537 -MY_P="${MY_PN}-${MY_PV}"
538 -[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
539 -
540 -DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
541 -HOMEPAGE="https://www.virtualbox.org/"
542 -SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
543 - https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
544 -
545 -LICENSE="GPL-2"
546 -SLOT="0/$(ver_cut 1-2)"
547 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
548 -KEYWORDS="amd64 x86"
549 -IUSE="X"
550 -
551 -# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
552 -RDEPEND="
553 - acct-group/vboxguest
554 - acct-group/vboxsf
555 - acct-user/vboxguest
556 - X? ( x11-apps/xrandr
557 - x11-apps/xrefresh
558 - x11-libs/libXmu
559 - x11-libs/libX11
560 - x11-libs/libXt
561 - x11-libs/libXext
562 - x11-libs/libXau
563 - x11-libs/libXdmcp
564 - x11-libs/libSM
565 - x11-libs/libICE )
566 - sys-apps/dbus
567 -"
568 -DEPEND="
569 - ${RDEPEND}
570 - >=dev-util/kbuild-0.1.9998.3127
571 - >=dev-lang/yasm-0.6.2
572 - sys-devel/bin86
573 - sys-libs/pam
574 - sys-power/iasl
575 - x11-base/xorg-proto
576 -"
577 -PDEPEND="
578 - X? ( x11-drivers/xf86-video-vboxvideo )
579 -"
580 -BUILD_TARGETS="all"
581 -BUILD_TARGET_ARCH="${ARCH}"
582 -
583 -S="${WORKDIR}/${MY_PN}-${DIR_PV:-${PV}}"
584 -VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
585 -MODULESD_VBOXSF_ALIASES=("fs-vboxsf vboxsf") # 485996
586 -
587 -pkg_setup() {
588 - export DISTCC_DISABLE=1 #674256
589 - MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
590 - vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
591 - use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
592 -
593 - linux-mod_pkg_setup
594 -}
595 -
596 -src_prepare() {
597 - # Remove shipped binaries (kBuild,yasm), see bug #232775
598 - rm -r kBuild/bin tools || die
599 -
600 - # Provide kernel sources
601 - pushd src/VBox/Additions &>/dev/null || die
602 - ebegin "Extracting guest kernel module sources"
603 - kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null
604 - eend $? || die
605 - popd &>/dev/null || die
606 -
607 - # PaX fixes (see bug #298988)
608 - pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
609 - eapply "${FILESDIR}"/vboxguest-6.1.36-log-use-c99.patch
610 - popd &>/dev/null || die
611 -
612 - # Disable things unused or splitted into separate ebuilds
613 - cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
614 - use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
615 -
616 - # Remove pointless GCC version check
617 - sed -e '/^check_gcc$/d' -i configure || die
618 -
619 - # Respect LDFLAGS (bug #759100)
620 - sed -i -e '/TEMPLATE_VBOXR3EXE_LDFLAGS.linux[ ]*=/ s/$/ $(CCLDFLAGS)/' Config.kmk
621 -
622 - # Do not use hard-coded ld (related to bug #488176)
623 - #sed -e '/QUIET)ld /s@ld @$(LD) @' \
624 - # -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
625 -
626 - eapply "${WORKDIR}/virtualbox-patches-6.1.36/patches"
627 - eapply_user
628 -}
629 -
630 -src_configure() {
631 - tc-export AR CC CXX LD RANLIB
632 -
633 - # Build the user-space tools, warnings are harmless
634 - local myconf=(
635 - --with-gcc="$(tc-getCC)"
636 - --with-g++="$(tc-getCXX)"
637 -
638 - --nofatal
639 - --disable-xpcom
640 - --disable-sdl-ttf
641 - --disable-pulse
642 - --disable-alsa
643 - --target-arch=${ARCH}
644 - --with-linux="${KV_OUT_DIR}"
645 - --build-headless
646 - )
647 -
648 - # bug #843437
649 - # Respect LDFLAGS (bug #759100)
650 - # Cannot use LDFLAGS here because they also get passed to $(LD)
651 - cat >> LocalConfig.kmk <<-EOF || die
652 - CFLAGS=${CFLAGS}
653 - CXXFLAGS=${CXXFLAGS}
654 - CCLDFLAGS=${LDFLAGS}
655 - EOF
656 -
657 - edo ./configure "${myconf[@]}"
658 -}
659 -
660 -src_compile() {
661 - source ./env.sh || die
662 -
663 - # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
664 - MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
665 - MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
666 - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
667 -
668 - local myemakeargs=(
669 - VBOX_BUILD_PUBLISHER=_Gentoo
670 - VBOX_ONLY_ADDITIONS=1
671 -
672 - KBUILD_VERBOSE=2
673 -
674 - AS="$(tc-getCC)"
675 - CC="$(tc-getCC)"
676 - CXX="$(tc-getCXX)"
677 - LD="$(tc-getCC)"
678 -
679 - TOOL_GCC3_CC="$(tc-getCC)"
680 - TOOL_GCC3_CXX="$(tc-getCXX)"
681 - TOOL_GCC3_LD="$(tc-getCC)"
682 - TOOL_GCC3_AS="$(tc-getCC)"
683 - TOOL_GCC3_AR="$(tc-getAR)"
684 - TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
685 - #TOOL_GCC3_LD_SYSMOD="$(tc-getCC)"
686 -
687 - TOOL_GXX3_CC="$(tc-getCC)"
688 - TOOL_GXX3_CXX="$(tc-getCXX)"
689 - TOOL_GXX3_LD="$(tc-getCXX)"
690 - TOOL_GXX3_AS="$(tc-getCXX)"
691 - TOOL_GXX3_AR="$(tc-getAR)"
692 - TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
693 - #TOOL_GXX3_LD_SYSMOD="$(tc-getCXX)"
694 -
695 - TOOL_GCC3_CFLAGS="${CFLAGS}"
696 - TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
697 - VBOX_GCC_OPT="${CXXFLAGS}"
698 - VBOX_NM="$(tc-getNM)"
699 - TOOL_YASM_AS=yasm
700 - )
701 -
702 - MAKE="kmk" emake "${myemakeargs[@]}"
703 -
704 - # Now creating the kernel modules. We must do this _after_
705 - # we compiled the user-space tools as we need two of the
706 - # automatically generated header files. (>=3.2.0)
707 - # Move this here for bug 836037
708 - BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
709 - linux-mod_src_compile
710 -}
711 -
712 -src_install() {
713 - linux-mod_src_install
714 -
715 - cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
716 -
717 - insinto /sbin
718 - newins mount.vboxsf mount.vboxsf
719 - fperms 4755 /sbin/mount.vboxsf
720 -
721 - newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN}
722 -
723 - insinto /usr/sbin/
724 - newins VBoxService vboxguest-service
725 - fperms 0755 /usr/sbin/vboxguest-service
726 -
727 - insinto /usr/bin
728 - doins VBoxControl
729 - fperms 0755 /usr/bin/VBoxControl
730 -
731 - # VBoxClient user service and xrandr wrapper
732 - if use X ; then
733 - doins VBoxClient
734 - fperms 0755 /usr/bin/VBoxClient
735 - doins VBoxDRMClient
736 - fperms 4755 /usr/bin/VBoxDRMClient
737 -
738 - pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
739 - || die
740 - newins 98vboxadd-xclient VBoxClient-all
741 - fperms 0755 /usr/bin/VBoxClient-all
742 - popd &>/dev/null || die
743 - fi
744 -
745 - # udev rule for vboxdrv
746 - local udev_rules_dir="/lib/udev/rules.d"
747 - dodir ${udev_rules_dir}
748 - echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
749 - >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
750 - || die
751 - echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
752 - >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
753 - || die
754 -
755 - # VBoxClient autostart file
756 - insinto /etc/xdg/autostart
757 - doins "${FILESDIR}"/vboxclient.desktop
758 -
759 - # sample xorg.conf
760 - dodoc "${FILESDIR}"/xorg.conf.vbox
761 - docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
762 -
763 - systemd_dounit "${FILESDIR}/${PN}.service"
764 -}
765 -
766 -pkg_postinst() {
767 - linux-mod_pkg_postinst
768 - udev_reload
769 - if ! use X ; then
770 - elog "use flag X is off, enable it to install the"
771 - elog "X Window System video driver."
772 - fi
773 - elog ""
774 - elog "Please add users to the \"vboxguest\" group so they can"
775 - elog "benefit from seamless mode, auto-resize and clipboard."
776 - elog ""
777 - elog "The vboxsf group has been added to make automount services work."
778 - elog "These services are part of the shared folders support."
779 - elog ""
780 - elog "Please add:"
781 - elog "/etc/init.d/${PN}"
782 - elog "to the default runlevel in order to start"
783 - elog "needed services."
784 - elog "To use the VirtualBox X driver, use the following"
785 - elog "file as your /etc/X11/xorg.conf:"
786 - elog " /usr/share/doc/${PF}/xorg.conf.vbox"
787 - elog ""
788 - elog "Also make sure you use the Mesa library for OpenGL:"
789 - elog " eselect opengl set xorg-x11"
790 - elog ""
791 - elog "An autostart .desktop file has been installed to start"
792 - elog "VBoxClient in desktop sessions."
793 - elog ""
794 - elog "You can mount shared folders with:"
795 - elog " mount -t vboxsf <shared_folder_name> <mount_point>"
796 - elog ""
797 - elog "Warning:"
798 - elog "this ebuild is only needed if you are running gentoo"
799 - elog "inside a VirtualBox Virtual Machine, you don't need"
800 - elog "it to run VirtualBox itself."
801 - elog ""
802 -}
803 -
804 -pkg_postrm() {
805 - linux-mod_pkg_postrm
806 - udev_reload
807 -}
808
809 diff --git a/app-emulation/virtualbox-modules/files/virtualbox-modules-5.2.8-pax-const.patch b/app-emulation/virtualbox-modules/files/virtualbox-modules-5.2.8-pax-const.patch
810 deleted file mode 100644
811 index 6251e33ce59e..000000000000
812 --- a/app-emulation/virtualbox-modules/files/virtualbox-modules-5.2.8-pax-const.patch
813 +++ /dev/null
814 @@ -1,44 +0,0 @@
815 ---- vboxdrv/SUPDrvIDC.h
816 -+++ vboxdrv/SUPDrvIDC.h
817 -@@ -160,7 +160,7 @@ typedef struct SUPDRVIDCREQGETSYM
818 - {
819 - /** The symbol address. */
820 - PFNRT pfnSymbol;
821 -- } Out;
822 -+ } __no_const Out;
823 - } u;
824 - } SUPDRVIDCREQGETSYM;
825 - /** Pointer to a SUPDRV IDC get symbol request. */
826 ---- vboxnetflt/include/VBox/intnet.h
827 -+++ vboxnetflt/include/VBox/intnet.h
828 -@@ -783,7 +783,7 @@ typedef struct INTNETTRUNKFACTORY
829 - DECLR0CALLBACKMEMBER(int, pfnCreateAndConnect,(struct INTNETTRUNKFACTORY *pIfFactory, const char *pszName,
830 - PINTNETTRUNKSWPORT pSwitchPort, uint32_t fFlags,
831 - PINTNETTRUNKIFPORT *ppIfPort));
832 --} INTNETTRUNKFACTORY;
833 -+} __no_const INTNETTRUNKFACTORY;
834 - /** Pointer to the trunk factory. */
835 - typedef INTNETTRUNKFACTORY *PINTNETTRUNKFACTORY;
836 -
837 ---- vboxnetflt/linux/VBoxNetFlt-linux.c
838 -+++ vboxnetflt/linux/VBoxNetFlt-linux.c
839 -@@ -840,7 +840,7 @@ typedef struct ethtool_ops OVR_OPSTYPE;
840 -
841 - # else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) */
842 -
843 --typedef struct net_device_ops OVR_OPSTYPE;
844 -+typedef net_device_ops_no_const OVR_OPSTYPE;
845 - # define OVR_OPS netdev_ops
846 - # define OVR_XMIT pOrgOps->ndo_start_xmit
847 -
848 ---- vboxpci/include/VBox/rawpci.h
849 -+++ vboxpci/include/VBox/rawpci.h
850 -@@ -545,7 +545,7 @@ typedef struct RAWPCIFACTORY
851 - DECLR0CALLBACKMEMBER(void, pfnDeinitVm,(PRAWPCIFACTORY pFactory,
852 - PVM pVM,
853 - PRAWPCIPERVM pVmData));
854 --} RAWPCIFACTORY;
855 -+} __no_const RAWPCIFACTORY;
856 -
857 - #define RAWPCIFACTORY_UUID_STR "ea089839-4171-476f-adfb-9e7ab1cbd0fb"
858 -
859
860 diff --git a/app-emulation/virtualbox-modules/files/virtualbox.conf b/app-emulation/virtualbox-modules/files/virtualbox.conf
861 deleted file mode 100644
862 index c8c79a249887..000000000000
863 --- a/app-emulation/virtualbox-modules/files/virtualbox.conf
864 +++ /dev/null
865 @@ -1,4 +0,0 @@
866 -vboxdrv
867 -vboxnetflt
868 -vboxnetadp
869 -vboxpci
870
871 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-6.1.36.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-6.1.36.ebuild
872 deleted file mode 100644
873 index b5ac55a89c1f..000000000000
874 --- a/app-emulation/virtualbox-modules/virtualbox-modules-6.1.36.ebuild
875 +++ /dev/null
876 @@ -1,65 +0,0 @@
877 -# Copyright 2022 Gentoo Authors
878 -# Distributed under the terms of the GNU General Public License v2
879 -
880 -# XXX: the tarball here is just the kernel modules split out of the binary
881 -# package that comes from VirtualBox-*.run
882 -
883 -EAPI=8
884 -
885 -inherit linux-mod toolchain-funcs
886 -
887 -MY_P="vbox-kernel-module-src-${PV}"
888 -DESCRIPTION="Kernel Modules for Virtualbox"
889 -HOMEPAGE="https://www.virtualbox.org/"
890 -SRC_URI="https://github.com/ceamac/virtualbox-modules-dist/releases/download/v${PV}/${MY_P}.tar.xz"
891 -
892 -LICENSE="GPL-2"
893 -SLOT="0/$(ver_cut 1-2)"
894 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
895 -KEYWORDS="amd64"
896 -IUSE="pax-kernel"
897 -
898 -S="${WORKDIR}"
899 -
900 -BUILD_TARGETS="all"
901 -MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
902 -MODULESD_VBOXDRV_ENABLED="yes"
903 -MODULESD_VBOXNETADP_ENABLED="no"
904 -MODULESD_VBOXNETFLT_ENABLED="no"
905 -
906 -pkg_setup() {
907 - linux-mod_pkg_setup
908 - BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
909 - if linux_chkconfig_present CC_IS_CLANG; then
910 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
911 -
912 - BUILD_PARAMS+=' CC=${CHOST}-clang'
913 - if linux_chkconfig_present LD_IS_LLD; then
914 - BUILD_PARAMS+=' LD=ld.lld'
915 - if linux_chkconfig_present LTO_CLANG_THIN; then
916 - # kernel enables cache by default leading to sandbox violations
917 - BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
918 - fi
919 - fi
920 - fi
921 -}
922 -
923 -src_prepare() {
924 - if use pax-kernel && kernel_is -ge 3 0 0 ; then
925 - eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
926 - fi
927 -
928 - default
929 -}
930 -
931 -src_install() {
932 - linux-mod_src_install
933 - insinto /usr/lib/modules-load.d/
934 - newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
935 -}
936 -
937 -pkg_postinst() {
938 - # Remove vboxpci.ko from current running kernel
939 - find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
940 - linux-mod_pkg_postinst
941 -}
942
943 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-6.1.38.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-6.1.38.ebuild
944 deleted file mode 100644
945 index b5ac55a89c1f..000000000000
946 --- a/app-emulation/virtualbox-modules/virtualbox-modules-6.1.38.ebuild
947 +++ /dev/null
948 @@ -1,65 +0,0 @@
949 -# Copyright 2022 Gentoo Authors
950 -# Distributed under the terms of the GNU General Public License v2
951 -
952 -# XXX: the tarball here is just the kernel modules split out of the binary
953 -# package that comes from VirtualBox-*.run
954 -
955 -EAPI=8
956 -
957 -inherit linux-mod toolchain-funcs
958 -
959 -MY_P="vbox-kernel-module-src-${PV}"
960 -DESCRIPTION="Kernel Modules for Virtualbox"
961 -HOMEPAGE="https://www.virtualbox.org/"
962 -SRC_URI="https://github.com/ceamac/virtualbox-modules-dist/releases/download/v${PV}/${MY_P}.tar.xz"
963 -
964 -LICENSE="GPL-2"
965 -SLOT="0/$(ver_cut 1-2)"
966 -[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
967 -KEYWORDS="amd64"
968 -IUSE="pax-kernel"
969 -
970 -S="${WORKDIR}"
971 -
972 -BUILD_TARGETS="all"
973 -MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
974 -MODULESD_VBOXDRV_ENABLED="yes"
975 -MODULESD_VBOXNETADP_ENABLED="no"
976 -MODULESD_VBOXNETFLT_ENABLED="no"
977 -
978 -pkg_setup() {
979 - linux-mod_pkg_setup
980 - BUILD_PARAMS="CC=\"$(tc-getBUILD_CC)\" KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
981 - if linux_chkconfig_present CC_IS_CLANG; then
982 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental."
983 -
984 - BUILD_PARAMS+=' CC=${CHOST}-clang'
985 - if linux_chkconfig_present LD_IS_LLD; then
986 - BUILD_PARAMS+=' LD=ld.lld'
987 - if linux_chkconfig_present LTO_CLANG_THIN; then
988 - # kernel enables cache by default leading to sandbox violations
989 - BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
990 - fi
991 - fi
992 - fi
993 -}
994 -
995 -src_prepare() {
996 - if use pax-kernel && kernel_is -ge 3 0 0 ; then
997 - eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
998 - fi
999 -
1000 - default
1001 -}
1002 -
1003 -src_install() {
1004 - linux-mod_src_install
1005 - insinto /usr/lib/modules-load.d/
1006 - newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
1007 -}
1008 -
1009 -pkg_postinst() {
1010 - # Remove vboxpci.ko from current running kernel
1011 - find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
1012 - linux-mod_pkg_postinst
1013 -}
1014
1015 diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
1016 index 7223bc1b6af8..a5e8f21a51a9 100644
1017 --- a/app-emulation/virtualbox/Manifest
1018 +++ b/app-emulation/virtualbox/Manifest
1019 @@ -1,5 +1,3 @@
1020 -DIST VirtualBox-6.1.36.tar.bz2 165685382 BLAKE2B 98dbb06450b9df650cb72493bcdea4b88fa9dd21f76d723fdc0bb2c1ab8266f67e972a7222dc9b5bd0d43754911710664bddace753995be025cf6bcc05a24ae5 SHA512 cc3b984a7da40c9bf14831808a2bc2bf7bf6821e53c25fa11cb4b4275feb1d4b0cb4a47d8a360b90c89e5a4038481efe8fe28ee22996dbefb6446761e88a8dec
1021 -DIST VirtualBox-6.1.38.tar.bz2 165761175 BLAKE2B decda6e7a595f79e6ace6f8f6b8a7829223ac1422c3d280b6287a40ef942e773ad473f4fa4640a76f8fb825ebd8561c646f1b3d87922b1af55c138298b4c8f4f SHA512 7a4f2dc80e3251b1da6d29d3c6f6b802527decc70497b1a1d1008c0ab3109c2039d131c587d6ec4786aea619546757655337c2ec3456243336ca13c6f6748116
1022 DIST VirtualBox-6.1.40.tar.bz2 165769795 BLAKE2B 5c216f23422be3fc4f7760881c666c57a516d12726ed8ef040bbdf918f1af53c69d204b22949e25f751cbe788b00c810c49c27b7c51c1837fd1c503a3eff202c SHA512 0dace071fe58500d0912fe4da4751de6840752375039554a56c8c753a0880a419c4a1ed7f1b0ebc51230f7099ca3f5d987dc7b91ad4d98dbd75bf63e3c27e096
1023 DIST VirtualBox-7.0.2.tar.bz2 199461536 BLAKE2B 94f7c2961c13530b6086bf4576f243b5b260f43ec445c8a2e411205989a9db229715502f2b76b8f3cb45a49ff565410701be90f1e850f069aae5579c0796b503 SHA512 c79d6365f83e1fde356a7f4a6ccd23bc7306d1b5b4be669634c575f08ba53338caca684758c9409ecef2b05ab6f9ad37dfa6075ad6afbc5d7909d46ee6794927
1024 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57
1025
1026 diff --git a/app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild b/app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild
1027 deleted file mode 100644
1028 index 1ecfee53049c..000000000000
1029 --- a/app-emulation/virtualbox/virtualbox-6.1.36-r2.ebuild
1030 +++ /dev/null
1031 @@ -1,654 +0,0 @@
1032 -# Copyright 2022 Gentoo Authors
1033 -# Distributed under the terms of the GNU General Public License v2
1034 -
1035 -EAPI=8
1036 -
1037 -# To add a new Python here:
1038 -# 1. Patch src/libs/xpcom18a4/python/Makefile.kmk (copy the previous impl's logic)
1039 -# Do NOT skip this part. It'll end up silently not-building the Python extension
1040 -# or otherwise misbehaving if you do.
1041 -#
1042 -# 2. Then update PYTHON_COMPAT & set PYTHON_SINGLE_TARGET for testing w/ USE=python.
1043 -#
1044 -# May need to look at other distros (e.g. Arch Linux) to find patches for newer
1045 -# Python versions as upstream tends to lag. Upstream may have patches on their
1046 -# trunk branch but not release branch.
1047 -#
1048 -# See bug #785835, bug #856121.
1049 -PYTHON_COMPAT=( python3_{8..10} )
1050 -
1051 -inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info multilib optfeature pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
1052 -
1053 -MY_PN="VirtualBox"
1054 -MY_PV="${PV/beta/BETA}"
1055 -MY_PV="${MY_PV/rc/RC}"
1056 -MY_P=${MY_PN}-${MY_PV}
1057 -[[ ${PV} == *a ]] && DIR_PV="$(ver_cut 1-3)"
1058 -
1059 -DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
1060 -HOMEPAGE="https://www.virtualbox.org/"
1061 -SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
1062 - https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-${MY_PV}.tar.bz2"
1063 -S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
1064 -
1065 -LICENSE="GPL-2 dtrace? ( CDDL )"
1066 -SLOT="0/$(ver_cut 1-2)"
1067 -if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
1068 - KEYWORDS="amd64"
1069 -fi
1070 -IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
1071 -
1072 -unset WATCOM #856769
1073 -
1074 -COMMON_DEPEND="
1075 - ${PYTHON_DEPS}
1076 - acct-group/vboxusers
1077 - ~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
1078 - dev-libs/libIDL
1079 - >=dev-libs/libxslt-1.1.19
1080 - net-misc/curl
1081 - dev-libs/libxml2
1082 - media-libs/libpng:0=
1083 - media-libs/libvpx:0=
1084 - sys-libs/zlib:=
1085 - !headless? (
1086 - sdl? ( media-libs/libsdl:0[X,video] )
1087 - x11-libs/libX11
1088 - x11-libs/libxcb:=
1089 - x11-libs/libXcursor
1090 - x11-libs/libXext
1091 - x11-libs/libXmu
1092 - x11-libs/libXt
1093 - opengl? (
1094 - media-libs/libglvnd[X]
1095 - virtual/glu
1096 - )
1097 - qt5? (
1098 - dev-qt/qtcore:5
1099 - dev-qt/qtgui:5
1100 - dev-qt/qtprintsupport:5
1101 - dev-qt/qtwidgets:5
1102 - dev-qt/qtx11extras:5
1103 - opengl? ( dev-qt/qtopengl:5 )
1104 - x11-libs/libXinerama
1105 - )
1106 - )
1107 - dev-libs/openssl:0=
1108 - virtual/libcrypt:=
1109 - lvm? ( sys-fs/lvm2 )
1110 - opus? ( media-libs/opus )
1111 - udev? ( >=virtual/udev-171 )
1112 - vnc? ( >=net-libs/libvncserver-0.9.9 )
1113 -"
1114 -# We're stuck on JDK (and JRE, I guess?) 1.8 because of need for wsimport
1115 -# with USE="vboxwebsrv java". Note that we have to put things in DEPEND,
1116 -# not (only, anyway) BDEPEND, as the eclass magic to set the environment variables
1117 -# based on *DEPEND doesn't work for BDEPEND at least right now.
1118 -#
1119 -# There's a comment in Config.kmk about it
1120 -# ("With Java 11 wsimport was removed, usually part of a separate install now.")
1121 -# but it needs more investigation.
1122 -#
1123 -# See bug #832166.
1124 -DEPEND="
1125 - ${COMMON_DEPEND}
1126 - alsa? ( >=media-libs/alsa-lib-1.0.13 )
1127 - !headless? (
1128 - x11-libs/libXinerama
1129 - opengl? ( virtual/opengl )
1130 - )
1131 - java? ( virtual/jdk:1.8 )
1132 - pam? ( sys-libs/pam )
1133 - pax-kernel? ( sys-apps/elfix )
1134 - pulseaudio? ( media-sound/pulseaudio )
1135 - vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
1136 -"
1137 -BDEPEND="
1138 - ${PYTHON_DEPS}
1139 - >=dev-util/kbuild-0.1.9998.3127
1140 - >=dev-lang/yasm-0.6.2
1141 - sys-apps/which
1142 - sys-devel/bin86
1143 - sys-libs/libcap
1144 - sys-power/iasl
1145 - virtual/pkgconfig
1146 - doc? (
1147 - app-text/docbook-sgml-dtd:4.4
1148 - dev-texlive/texlive-basic
1149 - dev-texlive/texlive-latex
1150 - dev-texlive/texlive-latexrecommended
1151 - dev-texlive/texlive-latexextra
1152 - dev-texlive/texlive-fontsrecommended
1153 - dev-texlive/texlive-fontsextra
1154 - )
1155 - java? ( virtual/jdk:1.8 )
1156 - qt5? ( dev-qt/linguist-tools:5 )
1157 -"
1158 -RDEPEND="
1159 - ${COMMON_DEPEND}
1160 - java? ( virtual/jre:1.8 )
1161 -"
1162 -
1163 -QA_FLAGS_IGNORED="
1164 - usr/lib64/virtualbox/VBoxDDR0.r0
1165 - usr/lib64/virtualbox/VMMR0.r0
1166 -"
1167 -
1168 -QA_TEXTRELS="
1169 - usr/lib64/virtualbox/VMMR0.r0
1170 -"
1171 -
1172 -QA_EXECSTACK="
1173 - usr/lib64/virtualbox/iPxeBaseBin
1174 - usr/lib64/virtualbox/VMMR0.r0
1175 - usr/lib64/virtualbox/VBoxDDR0.r0
1176 -"
1177 -
1178 -QA_WX_LOAD="
1179 - usr/lib64/virtualbox/iPxeBaseBin
1180 -"
1181 -
1182 -QA_PRESTRIPPED="
1183 - usr/lib64/virtualbox/VMMR0.r0
1184 - usr/lib64/virtualbox/VBoxDDR0.r0
1185 -"
1186 -
1187 -REQUIRED_USE="
1188 - java? ( sdk )
1189 - python? ( sdk )
1190 - vboxwebsrv? ( java )
1191 - ${PYTHON_REQUIRED_USE}
1192 -"
1193 -
1194 -PATCHES=(
1195 - "${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
1196 -
1197 - # This patch is needed to avoid automagic detection based on a hardcoded
1198 - # list of Pythons in configure. It's necessary but not sufficient
1199 - # (see the rest of the ebuild's logic for the remainder) to handle
1200 - # proper Python selection.
1201 - "${FILESDIR}"/${PN}-6.1.34-r3-python.patch
1202 -
1203 - # Patch grabbed from Arch Linux / upstream for Python 3.10 support
1204 - "${FILESDIR}"/${PN}-6.1.36-python3.10.patch
1205 -
1206 - # 865361
1207 - "${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
1208 -
1209 - # Downloaded patchset
1210 - "${WORKDIR}"/virtualbox-patches-${MY_PV}/patches
1211 -)
1212 -
1213 -pkg_pretend() {
1214 - if ! use headless && ! use qt5 ; then
1215 - einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
1216 - elif use headless && use qt5 ; then
1217 - einfo "You selected USE=\"headless qt5\", defaulting to"
1218 - einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
1219 - fi
1220 -
1221 - if ! use opengl ; then
1222 - einfo "No USE=\"opengl\" selected, this build will lack"
1223 - einfo "the OpenGL feature."
1224 - fi
1225 - if ! use python ; then
1226 - einfo "You have disabled the \"python\" USE flag. This will only"
1227 - einfo "disable the python bindings being installed."
1228 - fi
1229 -}
1230 -
1231 -pkg_setup() {
1232 - java-pkg-opt-2_pkg_setup
1233 - python-single-r1_pkg_setup
1234 -}
1235 -
1236 -src_prepare() {
1237 - default
1238 -
1239 - # Only add nopie patch when we're on hardened
1240 - if gcc-specs-pie ; then
1241 - eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch
1242 - fi
1243 -
1244 - # Only add paxmark patch when we're on pax-kernel
1245 - if use pax-kernel ; then
1246 - eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
1247 - fi
1248 -
1249 - # Remove shipped binaries (kBuild, yasm), see bug #232775
1250 - rm -r kBuild/bin tools || die
1251 -
1252 - # Replace pointless GCC version check with something more sensible.
1253 - # This is needed for the qt5 version check.
1254 - sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
1255 - -i configure || die
1256 -
1257 - # Disable things unused or split into separate ebuilds
1258 - sed -e "s@MY_LIBDIR@$(get_libdir)@" \
1259 - "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
1260 -
1261 - if ! use pch ; then
1262 - # bug #753323
1263 - printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
1264 - >> LocalConfig.kmk || die
1265 - fi
1266 -
1267 - # Respect LDFLAGS
1268 - sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
1269 - -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
1270 -
1271 - # Do not use hard-coded ld (related to bug #488176)
1272 - sed -e '/QUIET)ld /s@ld @$(LD) @' \
1273 - -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
1274 -
1275 - # Use PAM only when pam USE flag is enbaled (bug #376531)
1276 - if ! use pam ; then
1277 - einfo "Disabling PAM removes the possibility to use the VRDP features."
1278 - sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
1279 - sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
1280 - src/VBox/HostServices/Makefile.kmk || die
1281 - fi
1282 -
1283 - # add correct java path
1284 - if use java ; then
1285 - sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
1286 - -i "${S}"/Config.kmk || die
1287 - java-pkg-opt-2_src_prepare
1288 - fi
1289 -}
1290 -
1291 -src_configure() {
1292 - tc-ld-disable-gold # bug #488176
1293 -
1294 - #856811 #864274
1295 - # cannot filter out only one flag, some combinations of these flags produce buggy executables
1296 - for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
1297 - append-cflags $(test-flags-CC -mno-$i)
1298 - append-cxxflags $(test-flags-CXX -mno-$i)
1299 - done
1300 -
1301 - tc-export AR CC CXX LD RANLIB
1302 - export HOST_CC="$(tc-getBUILD_CC)"
1303 -
1304 - local myconf=(
1305 - --with-gcc="$(tc-getCC)"
1306 - --with-g++="$(tc-getCXX)"
1307 -
1308 - --disable-dbus
1309 - --disable-kmods
1310 -
1311 - $(usex alsa '' --disable-alsa)
1312 - $(usex debug --build-debug '')
1313 - $(usex doc '' --disable-docs)
1314 - $(usex java '' --disable-java)
1315 - $(usex lvm '' --disable-devmapper)
1316 - $(usex opus '' --disable-libopus)
1317 - $(usex pulseaudio '' --disable-pulse)
1318 - $(usex python '' --disable-python)
1319 - $(usex vboxwebsrv --enable-webservice '')
1320 - $(usex vnc --enable-vnc '')
1321 - )
1322 -
1323 - if ! use headless ; then
1324 - myconf+=(
1325 - $(usex opengl '' --disable-opengl)
1326 - $(usex qt5 '' --disable-qt)
1327 - $(usex sdl '' --disable-sdl)
1328 - )
1329 - else
1330 - myconf+=(
1331 - --build-headless
1332 - --disable-opengl
1333 - )
1334 - fi
1335 -
1336 - if use amd64 && ! has_multilib_profile ; then
1337 - myconf+=( --disable-vmmraw )
1338 - fi
1339 -
1340 - # bug #843437
1341 - cat >> LocalConfig.kmk <<-EOF || die
1342 - CXXFLAGS=${CXXFLAGS}
1343 - CFLAGS=${CFLAGS}
1344 - EOF
1345 -
1346 - # not an autoconf script
1347 - edo ./configure "${myconf[@]}"
1348 -
1349 - # Force usage of chosen Python implementation
1350 - # bug #856121, bug #785835
1351 - sed -i \
1352 - -e '/VBOX_WITH_PYTHON.*=/d' \
1353 - -e '/VBOX_PATH_PYTHON_INC.*=/d' \
1354 - -e '/VBOX_LIB_PYTHON.*=/d' \
1355 - AutoConfig.kmk || die
1356 -
1357 - cat >> AutoConfig.kmk <<-EOF || die
1358 - VBOX_WITH_PYTHON=$(usev python 1)
1359 - VBOX_PATH_PYTHON_INC=$(python_get_includedir)
1360 - VBOX_LIB_PYTHON=$(python_get_library_path)
1361 - EOF
1362 -
1363 - if use python ; then
1364 - local mangled_python="${EPYTHON#python}"
1365 - mangled_python="${mangled_python/.}"
1366 -
1367 - # Stub out the script which defines what the Makefile ends up
1368 - # building for. gen_python_deps.py gets called by the Makefile
1369 - # with some args and it spits out a bunch of paths for a hardcoded
1370 - # list of Pythons. We just override it with what we're actually using.
1371 - # This minimises the amount of patching we have to do for new Pythons.
1372 - cat > src/libs/xpcom18a4/python/gen_python_deps.py <<-EOF || die
1373 - print("VBOX_PYTHON${mangled_python}_INC=$(python_get_includedir)")
1374 - print("VBOX_PYTHON${mangled_python}_LIB=$(python_get_library_path)")
1375 - print("VBOX_PYTHONDEF_INC=$(python_get_includedir)")
1376 - print("VBOX_PYTHONDEF_LIB=$(python_get_library_path)")
1377 - EOF
1378 -
1379 - chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
1380 - fi
1381 -}
1382 -
1383 -src_compile() {
1384 - source ./env.sh || die
1385 -
1386 - # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
1387 - MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
1388 - MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
1389 - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
1390 -
1391 - local myemakeargs=(
1392 - VBOX_BUILD_PUBLISHER=_Gentoo
1393 - VBOX_WITH_VBOXIMGMOUNT=1
1394 -
1395 - KBUILD_VERBOSE=2
1396 -
1397 - AS="$(tc-getCC)"
1398 - CC="$(tc-getCC)"
1399 - CXX="$(tc-getCXX)"
1400 -
1401 - TOOL_GCC3_CC="$(tc-getCC)"
1402 - TOOL_GCC3_LD="$(tc-getCC)"
1403 - TOOL_GCC3_AS="$(tc-getCC)"
1404 - TOOL_GCC3_AR="$(tc-getAR)"
1405 - TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
1406 -
1407 - TOOL_GXX3_CC="$(tc-getCC)"
1408 - TOOL_GXX3_CXX="$(tc-getCXX)"
1409 - TOOL_GXX3_LD="$(tc-getCXX)"
1410 - TOOL_GXX3_AS="$(tc-getCXX)"
1411 - TOOL_GXX3_AR="$(tc-getAR)"
1412 - TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
1413 -
1414 - TOOL_GCC3_CFLAGS="${CFLAGS}"
1415 - TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
1416 - VBOX_GCC_OPT="${CXXFLAGS}"
1417 - VBOX_NM="$(tc-getNM)"
1418 -
1419 - TOOL_YASM_AS=yasm
1420 - )
1421 -
1422 - if use amd64 && has_multilib_profile ; then
1423 - myemakeargs+=(
1424 - CC32="$(tc-getCC) -m32"
1425 - CXX32="$(tc-getCXX) -m32"
1426 -
1427 - TOOL_GCC32_CC="$(tc-getCC) -m32"
1428 - TOOL_GCC32_CXX="$(tc-getCXX) -m32"
1429 - TOOL_GCC32_LD="$(tc-getCC) -m32"
1430 - TOOL_GCC32_AS="$(tc-getCC) -m32"
1431 - TOOL_GCC32_AR="$(tc-getAR)"
1432 - TOOL_GCC32_OBJCOPY="$(tc-getOBJCOPY)"
1433 -
1434 - TOOL_GXX32_CC="$(tc-getCC) -m32"
1435 - TOOL_GXX32_CXX="$(tc-getCXX) -m32"
1436 - TOOL_GXX32_LD="$(tc-getCXX) -m32"
1437 - TOOL_GXX32_AS="$(tc-getCXX) -m32"
1438 - TOOL_GXX32_AR="$(tc-getAR)"
1439 - TOOL_GXX32_OBJCOPY="$(tc-getOBJCOPY)"
1440 - )
1441 - fi
1442 -
1443 - MAKE="kmk" emake "${myemakeargs[@]}" all
1444 -}
1445 -
1446 -src_install() {
1447 - cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
1448 -
1449 - local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
1450 -
1451 - vbox_inst() {
1452 - local binary="${1}"
1453 - local perms="${2:-0750}"
1454 - local path="${3:-${vbox_inst_path}}"
1455 -
1456 - [[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
1457 - [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
1458 -
1459 - insinto ${path}
1460 - doins ${binary}
1461 - fowners root:vboxusers ${path}/${binary}
1462 - fperms ${perms} ${path}/${binary}
1463 - }
1464 -
1465 - # Create configuration files
1466 - insinto /etc/vbox
1467 - newins "${FILESDIR}/${PN}-4-config" vbox.cfg
1468 -
1469 - # Set the correct libdir
1470 - sed \
1471 - -e "s@MY_LIBDIR@$(get_libdir)@" \
1472 - -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
1473 -
1474 - # Install the wrapper script
1475 - exeinto ${vbox_inst_path}
1476 - newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
1477 - fowners root:vboxusers ${vbox_inst_path}/VBox
1478 - fperms 0750 ${vbox_inst_path}/VBox
1479 -
1480 - # Install binaries and libraries
1481 - insinto ${vbox_inst_path}
1482 - doins -r components
1483 -
1484 - for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; do
1485 - vbox_inst ${each}
1486 - done
1487 -
1488 - # These binaries need to be suid root.
1489 - for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
1490 - vbox_inst ${each} 4750
1491 - done
1492 -
1493 - # Install EFI Firmware files (bug #320757)
1494 - for each in VBoxEFI{32,64}.fd ; do
1495 - vbox_inst ${each} 0644
1496 - done
1497 -
1498 - # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
1499 - # VBoxXPCOMIPCD (bug #524202)
1500 - for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
1501 - pax-mark -m "${ED}"${vbox_inst_path}/${each}
1502 - done
1503 -
1504 - # Symlink binaries to the shipped wrapper
1505 - for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
1506 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1507 - done
1508 - dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
1509 - dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
1510 -
1511 - if use pam ; then
1512 - # VRDPAuth only works with this (bug #351949)
1513 - dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
1514 - fi
1515 -
1516 - # set an env-variable for 3rd party tools
1517 - echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
1518 - doenvd "${T}/90virtualbox"
1519 -
1520 - if ! use headless ; then
1521 - vbox_inst rdesktop-vrdp
1522 - if use sdl ; then
1523 - vbox_inst VBoxSDL 4750
1524 - pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
1525 -
1526 - for each in vboxsdl VBoxSDL ; do
1527 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1528 - done
1529 - fi
1530 -
1531 - if use qt5 ; then
1532 - vbox_inst VirtualBox
1533 - vbox_inst VirtualBoxVM 4750
1534 - for each in VirtualBox{,VM} ; do
1535 - pax-mark -m "${ED}"${vbox_inst_path}/${each}
1536 - done
1537 -
1538 - if use opengl ; then
1539 - vbox_inst VBoxTestOGL
1540 - pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
1541 - fi
1542 -
1543 - for each in virtualbox{,vm} VirtualBox{,VM} ; do
1544 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1545 - done
1546 -
1547 - insinto /usr/share/${PN}
1548 - doins -r nls
1549 - doins -r UnattendedTemplates
1550 -
1551 - domenu ${PN}.desktop
1552 - fi
1553 -
1554 - pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
1555 - for size in 16 32 48 64 128 ; do
1556 - newicon -s ${size} ${PN}-${size}px.png ${PN}.png
1557 - done
1558 - newicon ${PN}-48px.png ${PN}.png
1559 - doicon -s scalable ${PN}.svg
1560 - popd &>/dev/null || die
1561 - pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
1562 - for size in 16 24 32 48 64 72 96 128 256 512 ; do
1563 - for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
1564 - icofile="${PN}-${ico}-${size}px.png"
1565 - if [[ -f "${icofile}" ]] ; then
1566 - newicon -s ${size} ${icofile} ${PN}-${ico}.png
1567 - fi
1568 - done
1569 - done
1570 - popd &>/dev/null || die
1571 - fi
1572 -
1573 - if use lvm ; then
1574 - vbox_inst VBoxVolInfo 4750
1575 - dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
1576 - fi
1577 -
1578 - if use sdk ; then
1579 - insinto ${vbox_inst_path}
1580 - doins -r sdk
1581 -
1582 - if use java ; then
1583 - java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
1584 - java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
1585 - fi
1586 - fi
1587 -
1588 - if use udev ; then
1589 - local udevdir="$(get_udevdir)"
1590 - local udev_file="VBoxCreateUSBNode.sh"
1591 - local rules_file="10-virtualbox.rules"
1592 -
1593 - insinto ${udevdir}
1594 - doins ${udev_file}
1595 - fowners root:vboxusers ${udevdir}/${udev_file}
1596 - fperms 0750 ${udevdir}/${udev_file}
1597 -
1598 - insinto ${udevdir}/rules.d
1599 - sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/${rules_file} \
1600 - > "${T}"/${rules_file} || die
1601 - doins "${T}"/${rules_file}
1602 - fi
1603 -
1604 - if use vboxwebsrv ; then
1605 - vbox_inst vboxwebsrv
1606 - dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
1607 - newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
1608 - newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
1609 - fi
1610 -
1611 - # Remove dead symlinks (bug #715338)
1612 - find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
1613 -
1614 - # Fix version string in extensions or else they don't get accepted
1615 - # by the virtualbox host process (see bug #438930)
1616 - find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
1617 - | xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
1618 - || die
1619 -
1620 - local extensions_dir="${vbox_inst_path}/ExtensionPacks"
1621 -
1622 - if use vnc ; then
1623 - insinto ${extensions_dir}
1624 - doins -r ExtensionPacks/VNC
1625 - fi
1626 -
1627 - if use dtrace ; then
1628 - insinto ${extensions_dir}
1629 - doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
1630 - fi
1631 -
1632 - if use doc ; then
1633 - dodoc UserManual.pdf
1634 - fi
1635 -
1636 - if use python ; then
1637 - local mangled_python="${EPYTHON#python}"
1638 - mangled_python="${mangled_python/./_}"
1639 -
1640 - local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.so"
1641 - if [[ ! -x "${python_path_ext}" ]] ; then
1642 - eerror "Couldn't find ${python_path_ext}! Bindings were requested with USE=python"
1643 - eerror "but none were installed. This may happen if support for a Python target"
1644 - eerror "(listed in PYTHON_COMPAT in the ebuild) is incomplete within the Makefiles."
1645 - die "Incomplete installation of Python bindings! File a bug with Gentoo!"
1646 - fi
1647 - fi
1648 -
1649 - newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
1650 -}
1651 -
1652 -pkg_postinst() {
1653 - xdg_pkg_postinst
1654 -
1655 - if use udev ; then
1656 - udev_reload
1657 - udevadm trigger --subsystem-match=usb
1658 - fi
1659 -
1660 - tmpfiles_process virtualbox-vboxusb.conf
1661 -
1662 - if ! use headless && use qt5 ; then
1663 - elog "To launch VirtualBox just type: \"virtualbox\"."
1664 - fi
1665 -
1666 - elog "You must be in the vboxusers group to use VirtualBox."
1667 - elog ""
1668 - elog "The latest user manual is available for download at:"
1669 - elog "https://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
1670 - elog ""
1671 -
1672 - optfeature "Advanced networking setups" net-misc/bridge-utils sys-apps/usermode-utilities
1673 - optfeature "USB2, USB3, PXE boot, and VRDP support" app-emulation/virtualbox-extpack-oracle
1674 - optfeature "Guest additions ISO" app-emulation/virtualbox-additions
1675 -
1676 - if ! use udev ; then
1677 - ewarn "Without USE=udev, USB devices will likely not work in ${PN}."
1678 - fi
1679 -}
1680 -
1681 -pkg_postrm() {
1682 - xdg_pkg_postrm
1683 -
1684 - use udev && udev_reload
1685 -}
1686
1687 diff --git a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild b/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
1688 deleted file mode 100644
1689 index 7067d184bf7e..000000000000
1690 --- a/app-emulation/virtualbox/virtualbox-6.1.38.ebuild
1691 +++ /dev/null
1692 @@ -1,663 +0,0 @@
1693 -# Copyright 2022 Gentoo Authors
1694 -# Distributed under the terms of the GNU General Public License v2
1695 -
1696 -EAPI=8
1697 -
1698 -# To add a new Python here:
1699 -# 1. Patch src/libs/xpcom18a4/python/Makefile.kmk (copy the previous impl's logic)
1700 -# Do NOT skip this part. It'll end up silently not-building the Python extension
1701 -# or otherwise misbehaving if you do.
1702 -#
1703 -# 2. Then update PYTHON_COMPAT & set PYTHON_SINGLE_TARGET for testing w/ USE=python.
1704 -#
1705 -# May need to look at other distros (e.g. Arch Linux) to find patches for newer
1706 -# Python versions as upstream tends to lag. Upstream may have patches on their
1707 -# trunk branch but not release branch.
1708 -#
1709 -# See bug #785835, bug #856121.
1710 -PYTHON_COMPAT=( python3_{8..10} )
1711 -
1712 -inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info multilib optfeature pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
1713 -
1714 -MY_PN="VirtualBox"
1715 -MY_PV="${PV/beta/BETA}"
1716 -MY_PV="${MY_PV/rc/RC}"
1717 -MY_P=${MY_PN}-${MY_PV}
1718 -[[ ${PV} == *a ]] && DIR_PV="$(ver_cut 1-3)"
1719 -
1720 -DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
1721 -HOMEPAGE="https://www.virtualbox.org/"
1722 -SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
1723 - https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2"
1724 -S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
1725 -
1726 -LICENSE="GPL-2 dtrace? ( CDDL )"
1727 -SLOT="0/$(ver_cut 1-2)"
1728 -if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
1729 - KEYWORDS="amd64"
1730 -fi
1731 -IUSE="alsa debug doc dtrace headless java lvm +opus pam pax-kernel pch pulseaudio +opengl python +qt5 +sdk +sdl +udev vboxwebsrv vnc"
1732 -
1733 -unset WATCOM #856769
1734 -
1735 -COMMON_DEPEND="
1736 - ${PYTHON_DEPS}
1737 - acct-group/vboxusers
1738 - ~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
1739 - dev-libs/libIDL
1740 - >=dev-libs/libxslt-1.1.19
1741 - net-misc/curl
1742 - dev-libs/libxml2
1743 - media-libs/libpng:0=
1744 - media-libs/libvpx:0=
1745 - sys-libs/zlib:=
1746 - !headless? (
1747 - sdl? ( media-libs/libsdl:0[X,video] )
1748 - x11-libs/libX11
1749 - x11-libs/libxcb:=
1750 - x11-libs/libXcursor
1751 - x11-libs/libXext
1752 - x11-libs/libXmu
1753 - x11-libs/libXt
1754 - opengl? (
1755 - media-libs/libglvnd[X]
1756 - virtual/glu
1757 - )
1758 - qt5? (
1759 - dev-qt/qtcore:5
1760 - dev-qt/qtgui:5
1761 - dev-qt/qtprintsupport:5
1762 - dev-qt/qtwidgets:5
1763 - dev-qt/qtx11extras:5
1764 - opengl? ( dev-qt/qtopengl:5 )
1765 - x11-libs/libXinerama
1766 - )
1767 - )
1768 - dev-libs/openssl:0=
1769 - virtual/libcrypt:=
1770 - lvm? ( sys-fs/lvm2 )
1771 - opus? ( media-libs/opus )
1772 - udev? ( >=virtual/udev-171 )
1773 - vnc? ( >=net-libs/libvncserver-0.9.9 )
1774 -"
1775 -# We're stuck on JDK (and JRE, I guess?) 1.8 because of need for wsimport
1776 -# with USE="vboxwebsrv java". Note that we have to put things in DEPEND,
1777 -# not (only, anyway) BDEPEND, as the eclass magic to set the environment variables
1778 -# based on *DEPEND doesn't work for BDEPEND at least right now.
1779 -#
1780 -# There's a comment in Config.kmk about it
1781 -# ("With Java 11 wsimport was removed, usually part of a separate install now.")
1782 -# but it needs more investigation.
1783 -#
1784 -# See bug #832166.
1785 -DEPEND="
1786 - ${COMMON_DEPEND}
1787 - alsa? ( >=media-libs/alsa-lib-1.0.13 )
1788 - !headless? (
1789 - x11-libs/libXinerama
1790 - opengl? ( virtual/opengl )
1791 - )
1792 - java? ( virtual/jdk:1.8 )
1793 - pam? ( sys-libs/pam )
1794 - pax-kernel? ( sys-apps/elfix )
1795 - pulseaudio? ( media-sound/pulseaudio )
1796 - vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
1797 -"
1798 -BDEPEND="
1799 - ${PYTHON_DEPS}
1800 - >=dev-util/kbuild-0.1.9998.3127
1801 - >=dev-lang/yasm-0.6.2
1802 - sys-apps/which
1803 - sys-devel/bin86
1804 - sys-libs/libcap
1805 - sys-power/iasl
1806 - virtual/pkgconfig
1807 - doc? (
1808 - app-text/docbook-sgml-dtd:4.4
1809 - dev-texlive/texlive-basic
1810 - dev-texlive/texlive-latex
1811 - dev-texlive/texlive-latexrecommended
1812 - dev-texlive/texlive-latexextra
1813 - dev-texlive/texlive-fontsrecommended
1814 - dev-texlive/texlive-fontsextra
1815 - )
1816 - java? ( virtual/jdk:1.8 )
1817 - qt5? ( dev-qt/linguist-tools:5 )
1818 -"
1819 -RDEPEND="
1820 - ${COMMON_DEPEND}
1821 - java? ( virtual/jre:1.8 )
1822 -"
1823 -
1824 -QA_FLAGS_IGNORED="
1825 - usr/lib64/virtualbox/VBoxDDR0.r0
1826 - usr/lib64/virtualbox/VMMR0.r0
1827 -"
1828 -
1829 -QA_TEXTRELS="
1830 - usr/lib64/virtualbox/VMMR0.r0
1831 -"
1832 -
1833 -QA_EXECSTACK="
1834 - usr/lib64/virtualbox/iPxeBaseBin
1835 - usr/lib64/virtualbox/VMMR0.r0
1836 - usr/lib64/virtualbox/VBoxDDR0.r0
1837 -"
1838 -
1839 -QA_WX_LOAD="
1840 - usr/lib64/virtualbox/iPxeBaseBin
1841 -"
1842 -
1843 -QA_PRESTRIPPED="
1844 - usr/lib64/virtualbox/VMMR0.r0
1845 - usr/lib64/virtualbox/VBoxDDR0.r0
1846 -"
1847 -
1848 -REQUIRED_USE="
1849 - java? ( sdk )
1850 - python? ( sdk )
1851 - vboxwebsrv? ( java )
1852 - ${PYTHON_REQUIRED_USE}
1853 -"
1854 -
1855 -PATCHES=(
1856 - "${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
1857 -
1858 - # This patch is needed to avoid automagic detection based on a hardcoded
1859 - # list of Pythons in configure. It's necessary but not sufficient
1860 - # (see the rest of the ebuild's logic for the remainder) to handle
1861 - # proper Python selection.
1862 - "${FILESDIR}"/${PN}-6.1.34-r3-python.patch
1863 -
1864 - # Patch grabbed from Arch Linux / upstream for Python 3.10 support
1865 - "${FILESDIR}"/${PN}-6.1.36-python3.10.patch
1866 -
1867 - # 865361
1868 - "${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
1869 -
1870 - # Downloaded patchset
1871 - "${WORKDIR}"/virtualbox-patches-6.1.36/patches
1872 -)
1873 -
1874 -pkg_pretend() {
1875 - if ! use headless && ! use qt5 ; then
1876 - einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
1877 - elif use headless && use qt5 ; then
1878 - einfo "You selected USE=\"headless qt5\", defaulting to"
1879 - einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
1880 - fi
1881 -
1882 - if ! use opengl ; then
1883 - einfo "No USE=\"opengl\" selected, this build will lack"
1884 - einfo "the OpenGL feature."
1885 - fi
1886 - if ! use python ; then
1887 - einfo "You have disabled the \"python\" USE flag. This will only"
1888 - einfo "disable the python bindings being installed."
1889 - fi
1890 -
1891 - # 749273
1892 - local d=${ROOT}
1893 - for i in usr "$(get_libdir)"; do
1894 - d="${d}/$i"
1895 - if [[ "$(stat -L -c "%g %u" "${d}")" != "0 0" ]]; then
1896 - die "${d} should be owned by root, VirtualBox will not start otherwise"
1897 - fi
1898 - done
1899 -}
1900 -
1901 -pkg_setup() {
1902 - java-pkg-opt-2_pkg_setup
1903 - python-single-r1_pkg_setup
1904 -}
1905 -
1906 -src_prepare() {
1907 - default
1908 -
1909 - # Only add nopie patch when we're on hardened
1910 - if gcc-specs-pie ; then
1911 - eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch
1912 - fi
1913 -
1914 - # Only add paxmark patch when we're on pax-kernel
1915 - if use pax-kernel ; then
1916 - eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
1917 - fi
1918 -
1919 - # Remove shipped binaries (kBuild, yasm), see bug #232775
1920 - rm -r kBuild/bin tools || die
1921 -
1922 - # Replace pointless GCC version check with something more sensible.
1923 - # This is needed for the qt5 version check.
1924 - sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
1925 - -i configure || die
1926 -
1927 - # Disable things unused or split into separate ebuilds
1928 - sed -e "s@MY_LIBDIR@$(get_libdir)@" \
1929 - "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
1930 -
1931 - if ! use pch ; then
1932 - # bug #753323
1933 - printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
1934 - >> LocalConfig.kmk || die
1935 - fi
1936 -
1937 - # Respect LDFLAGS
1938 - sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
1939 - -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
1940 -
1941 - # Do not use hard-coded ld (related to bug #488176)
1942 - sed -e '/QUIET)ld /s@ld @$(LD) @' \
1943 - -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
1944 -
1945 - # Use PAM only when pam USE flag is enbaled (bug #376531)
1946 - if ! use pam ; then
1947 - einfo "Disabling PAM removes the possibility to use the VRDP features."
1948 - sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
1949 - sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
1950 - src/VBox/HostServices/Makefile.kmk || die
1951 - fi
1952 -
1953 - # add correct java path
1954 - if use java ; then
1955 - sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
1956 - -i "${S}"/Config.kmk || die
1957 - java-pkg-opt-2_src_prepare
1958 - fi
1959 -}
1960 -
1961 -src_configure() {
1962 - tc-ld-disable-gold # bug #488176
1963 -
1964 - #856811 #864274
1965 - # cannot filter out only one flag, some combinations of these flags produce buggy executables
1966 - for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
1967 - append-cflags $(test-flags-CC -mno-$i)
1968 - append-cxxflags $(test-flags-CXX -mno-$i)
1969 - done
1970 -
1971 - tc-export AR CC CXX LD RANLIB
1972 - export HOST_CC="$(tc-getBUILD_CC)"
1973 -
1974 - local myconf=(
1975 - --with-gcc="$(tc-getCC)"
1976 - --with-g++="$(tc-getCXX)"
1977 -
1978 - --disable-dbus
1979 - --disable-kmods
1980 -
1981 - $(usex alsa '' --disable-alsa)
1982 - $(usex debug --build-debug '')
1983 - $(usex doc '' --disable-docs)
1984 - $(usex java '' --disable-java)
1985 - $(usex lvm '' --disable-devmapper)
1986 - $(usex opus '' --disable-libopus)
1987 - $(usex pulseaudio '' --disable-pulse)
1988 - $(usex python '' --disable-python)
1989 - $(usex vboxwebsrv --enable-webservice '')
1990 - $(usex vnc --enable-vnc '')
1991 - )
1992 -
1993 - if ! use headless ; then
1994 - myconf+=(
1995 - $(usex opengl '' --disable-opengl)
1996 - $(usex qt5 '' --disable-qt)
1997 - $(usex sdl '' --disable-sdl)
1998 - )
1999 - else
2000 - myconf+=(
2001 - --build-headless
2002 - --disable-opengl
2003 - )
2004 - fi
2005 -
2006 - if use amd64 && ! has_multilib_profile ; then
2007 - myconf+=( --disable-vmmraw )
2008 - fi
2009 -
2010 - # bug #843437
2011 - cat >> LocalConfig.kmk <<-EOF || die
2012 - CXXFLAGS=${CXXFLAGS}
2013 - CFLAGS=${CFLAGS}
2014 - EOF
2015 -
2016 - # not an autoconf script
2017 - edo ./configure "${myconf[@]}"
2018 -
2019 - # Force usage of chosen Python implementation
2020 - # bug #856121, bug #785835
2021 - sed -i \
2022 - -e '/VBOX_WITH_PYTHON.*=/d' \
2023 - -e '/VBOX_PATH_PYTHON_INC.*=/d' \
2024 - -e '/VBOX_LIB_PYTHON.*=/d' \
2025 - AutoConfig.kmk || die
2026 -
2027 - cat >> AutoConfig.kmk <<-EOF || die
2028 - VBOX_WITH_PYTHON=$(usev python 1)
2029 - VBOX_PATH_PYTHON_INC=$(python_get_includedir)
2030 - VBOX_LIB_PYTHON=$(python_get_library_path)
2031 - EOF
2032 -
2033 - if use python ; then
2034 - local mangled_python="${EPYTHON#python}"
2035 - mangled_python="${mangled_python/.}"
2036 -
2037 - # Stub out the script which defines what the Makefile ends up
2038 - # building for. gen_python_deps.py gets called by the Makefile
2039 - # with some args and it spits out a bunch of paths for a hardcoded
2040 - # list of Pythons. We just override it with what we're actually using.
2041 - # This minimises the amount of patching we have to do for new Pythons.
2042 - cat > src/libs/xpcom18a4/python/gen_python_deps.py <<-EOF || die
2043 - print("VBOX_PYTHON${mangled_python}_INC=$(python_get_includedir)")
2044 - print("VBOX_PYTHON${mangled_python}_LIB=$(python_get_library_path)")
2045 - print("VBOX_PYTHONDEF_INC=$(python_get_includedir)")
2046 - print("VBOX_PYTHONDEF_LIB=$(python_get_library_path)")
2047 - EOF
2048 -
2049 - chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
2050 - fi
2051 -}
2052 -
2053 -src_compile() {
2054 - source ./env.sh || die
2055 -
2056 - # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
2057 - MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
2058 - MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
2059 - MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
2060 -
2061 - local myemakeargs=(
2062 - VBOX_BUILD_PUBLISHER=_Gentoo
2063 - VBOX_WITH_VBOXIMGMOUNT=1
2064 -
2065 - KBUILD_VERBOSE=2
2066 -
2067 - AS="$(tc-getCC)"
2068 - CC="$(tc-getCC)"
2069 - CXX="$(tc-getCXX)"
2070 -
2071 - TOOL_GCC3_CC="$(tc-getCC)"
2072 - TOOL_GCC3_LD="$(tc-getCC)"
2073 - TOOL_GCC3_AS="$(tc-getCC)"
2074 - TOOL_GCC3_AR="$(tc-getAR)"
2075 - TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
2076 -
2077 - TOOL_GXX3_CC="$(tc-getCC)"
2078 - TOOL_GXX3_CXX="$(tc-getCXX)"
2079 - TOOL_GXX3_LD="$(tc-getCXX)"
2080 - TOOL_GXX3_AS="$(tc-getCXX)"
2081 - TOOL_GXX3_AR="$(tc-getAR)"
2082 - TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
2083 -
2084 - TOOL_GCC3_CFLAGS="${CFLAGS}"
2085 - TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
2086 - VBOX_GCC_OPT="${CXXFLAGS}"
2087 - VBOX_NM="$(tc-getNM)"
2088 -
2089 - TOOL_YASM_AS=yasm
2090 - )
2091 -
2092 - if use amd64 && has_multilib_profile ; then
2093 - myemakeargs+=(
2094 - CC32="$(tc-getCC) -m32"
2095 - CXX32="$(tc-getCXX) -m32"
2096 -
2097 - TOOL_GCC32_CC="$(tc-getCC) -m32"
2098 - TOOL_GCC32_CXX="$(tc-getCXX) -m32"
2099 - TOOL_GCC32_LD="$(tc-getCC) -m32"
2100 - TOOL_GCC32_AS="$(tc-getCC) -m32"
2101 - TOOL_GCC32_AR="$(tc-getAR)"
2102 - TOOL_GCC32_OBJCOPY="$(tc-getOBJCOPY)"
2103 -
2104 - TOOL_GXX32_CC="$(tc-getCC) -m32"
2105 - TOOL_GXX32_CXX="$(tc-getCXX) -m32"
2106 - TOOL_GXX32_LD="$(tc-getCXX) -m32"
2107 - TOOL_GXX32_AS="$(tc-getCXX) -m32"
2108 - TOOL_GXX32_AR="$(tc-getAR)"
2109 - TOOL_GXX32_OBJCOPY="$(tc-getOBJCOPY)"
2110 - )
2111 - fi
2112 -
2113 - MAKE="kmk" emake "${myemakeargs[@]}" all
2114 -}
2115 -
2116 -src_install() {
2117 - cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
2118 -
2119 - local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
2120 -
2121 - vbox_inst() {
2122 - local binary="${1}"
2123 - local perms="${2:-0750}"
2124 - local path="${3:-${vbox_inst_path}}"
2125 -
2126 - [[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
2127 - [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
2128 -
2129 - insinto ${path}
2130 - doins ${binary}
2131 - fowners root:vboxusers ${path}/${binary}
2132 - fperms ${perms} ${path}/${binary}
2133 - }
2134 -
2135 - # Create configuration files
2136 - insinto /etc/vbox
2137 - newins "${FILESDIR}/${PN}-4-config" vbox.cfg
2138 -
2139 - # Set the correct libdir
2140 - sed \
2141 - -e "s@MY_LIBDIR@$(get_libdir)@" \
2142 - -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
2143 -
2144 - # Install the wrapper script
2145 - exeinto ${vbox_inst_path}
2146 - newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
2147 - fowners root:vboxusers ${vbox_inst_path}/VBox
2148 - fperms 0750 ${vbox_inst_path}/VBox
2149 -
2150 - # Install binaries and libraries
2151 - insinto ${vbox_inst_path}
2152 - doins -r components
2153 -
2154 - for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; do
2155 - vbox_inst ${each}
2156 - done
2157 -
2158 - # These binaries need to be suid root.
2159 - for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
2160 - vbox_inst ${each} 4750
2161 - done
2162 -
2163 - # Install EFI Firmware files (bug #320757)
2164 - for each in VBoxEFI{32,64}.fd ; do
2165 - vbox_inst ${each} 0644
2166 - done
2167 -
2168 - # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
2169 - # VBoxXPCOMIPCD (bug #524202)
2170 - for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
2171 - pax-mark -m "${ED}"${vbox_inst_path}/${each}
2172 - done
2173 -
2174 - # Symlink binaries to the shipped wrapper
2175 - for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
2176 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2177 - done
2178 - dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
2179 - dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
2180 -
2181 - if use pam ; then
2182 - # VRDPAuth only works with this (bug #351949)
2183 - dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
2184 - fi
2185 -
2186 - # set an env-variable for 3rd party tools
2187 - echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
2188 - doenvd "${T}/90virtualbox"
2189 -
2190 - if ! use headless ; then
2191 - vbox_inst rdesktop-vrdp
2192 - if use sdl ; then
2193 - vbox_inst VBoxSDL 4750
2194 - pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
2195 -
2196 - for each in vboxsdl VBoxSDL ; do
2197 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2198 - done
2199 - fi
2200 -
2201 - if use qt5 ; then
2202 - vbox_inst VirtualBox
2203 - vbox_inst VirtualBoxVM 4750
2204 - for each in VirtualBox{,VM} ; do
2205 - pax-mark -m "${ED}"${vbox_inst_path}/${each}
2206 - done
2207 -
2208 - if use opengl ; then
2209 - vbox_inst VBoxTestOGL
2210 - pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
2211 - fi
2212 -
2213 - for each in virtualbox{,vm} VirtualBox{,VM} ; do
2214 - dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2215 - done
2216 -
2217 - insinto /usr/share/${PN}
2218 - doins -r nls
2219 - doins -r UnattendedTemplates
2220 -
2221 - domenu ${PN}.desktop
2222 - fi
2223 -
2224 - pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
2225 - for size in 16 32 48 64 128 ; do
2226 - newicon -s ${size} ${PN}-${size}px.png ${PN}.png
2227 - done
2228 - newicon ${PN}-48px.png ${PN}.png
2229 - doicon -s scalable ${PN}.svg
2230 - popd &>/dev/null || die
2231 - pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
2232 - for size in 16 24 32 48 64 72 96 128 256 512 ; do
2233 - for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
2234 - icofile="${PN}-${ico}-${size}px.png"
2235 - if [[ -f "${icofile}" ]] ; then
2236 - newicon -s ${size} ${icofile} ${PN}-${ico}.png
2237 - fi
2238 - done
2239 - done
2240 - popd &>/dev/null || die
2241 - fi
2242 -
2243 - if use lvm ; then
2244 - vbox_inst VBoxVolInfo 4750
2245 - dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
2246 - fi
2247 -
2248 - if use sdk ; then
2249 - insinto ${vbox_inst_path}
2250 - doins -r sdk
2251 -
2252 - if use java ; then
2253 - java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
2254 - java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
2255 - fi
2256 - fi
2257 -
2258 - if use udev ; then
2259 - local udevdir="$(get_udevdir)"
2260 - local udev_file="VBoxCreateUSBNode.sh"
2261 - local rules_file="10-virtualbox.rules"
2262 -
2263 - insinto ${udevdir}
2264 - doins ${udev_file}
2265 - fowners root:vboxusers ${udevdir}/${udev_file}
2266 - fperms 0750 ${udevdir}/${udev_file}
2267 -
2268 - insinto ${udevdir}/rules.d
2269 - sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/${rules_file} \
2270 - > "${T}"/${rules_file} || die
2271 - doins "${T}"/${rules_file}
2272 - fi
2273 -
2274 - if use vboxwebsrv ; then
2275 - vbox_inst vboxwebsrv
2276 - dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
2277 - newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
2278 - newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
2279 - fi
2280 -
2281 - # Remove dead symlinks (bug #715338)
2282 - find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
2283 -
2284 - # Fix version string in extensions or else they don't get accepted
2285 - # by the virtualbox host process (see bug #438930)
2286 - find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
2287 - | xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
2288 - || die
2289 -
2290 - local extensions_dir="${vbox_inst_path}/ExtensionPacks"
2291 -
2292 - if use vnc ; then
2293 - insinto ${extensions_dir}
2294 - doins -r ExtensionPacks/VNC
2295 - fi
2296 -
2297 - if use dtrace ; then
2298 - insinto ${extensions_dir}
2299 - doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
2300 - fi
2301 -
2302 - if use doc ; then
2303 - dodoc UserManual.pdf
2304 - fi
2305 -
2306 - if use python ; then
2307 - local mangled_python="${EPYTHON#python}"
2308 - mangled_python="${mangled_python/./_}"
2309 -
2310 - local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython${mangled_python}.so"
2311 - if [[ ! -x "${python_path_ext}" ]] ; then
2312 - eerror "Couldn't find ${python_path_ext}! Bindings were requested with USE=python"
2313 - eerror "but none were installed. This may happen if support for a Python target"
2314 - eerror "(listed in PYTHON_COMPAT in the ebuild) is incomplete within the Makefiles."
2315 - die "Incomplete installation of Python bindings! File a bug with Gentoo!"
2316 - fi
2317 - fi
2318 -
2319 - newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
2320 -}
2321 -
2322 -pkg_postinst() {
2323 - xdg_pkg_postinst
2324 -
2325 - if use udev ; then
2326 - udev_reload
2327 - udevadm trigger --subsystem-match=usb
2328 - fi
2329 -
2330 - tmpfiles_process virtualbox-vboxusb.conf
2331 -
2332 - if ! use headless && use qt5 ; then
2333 - elog "To launch VirtualBox just type: \"virtualbox\"."
2334 - fi
2335 -
2336 - elog "You must be in the vboxusers group to use VirtualBox."
2337 - elog ""
2338 - elog "The latest user manual is available for download at:"
2339 - elog "https://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
2340 - elog ""
2341 -
2342 - optfeature "Advanced networking setups" net-misc/bridge-utils sys-apps/usermode-utilities
2343 - optfeature "USB2, USB3, PXE boot, and VRDP support" app-emulation/virtualbox-extpack-oracle
2344 - optfeature "Guest additions ISO" app-emulation/virtualbox-additions
2345 -
2346 - if ! use udev ; then
2347 - ewarn "Without USE=udev, USB devices will likely not work in ${PN}."
2348 - fi
2349 -}
2350 -
2351 -pkg_postrm() {
2352 - xdg_pkg_postrm
2353 -
2354 - use udev && udev_reload
2355 -}