summaryrefslogtreecommitdiff
path: root/user/virtualbox-guest-additions/APKBUILD
blob: a258654ff85f4edadd8dd6b530e7c0e6cc480a53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Contributor: Ben Allen <bensallen@me.com>
# Contributor: Peter Shkenev <santurysim@gmail.com>
# Maintainer: Zach van Rijn <me@zv.io>
pkgname=virtualbox-guest-additions
pkgver=7.0.12
pkgrel=0
pkgdesc="Host integration components for VirtualBox virtual machines"
arch="pmmx x86_64"
options="!check"  # no test suite
url="https://www.virtualbox.org/"
license="GPL-2.0-only OR (GPL-2.0-only AND CDDL-1.0)"
install="$pkgname.pre-install"
depends=""
makedepends="kbuild lvm2-dev yasm nasm zlib-dev openssl-dev curl-dev
	libxslt libxrandr-dev libxt-dev libxmu-dev linux-pam-dev utmps-dev cmd:which"
subpackages="$pkgname-x11 $pkgname-openrc $pkgname-eudev"
source="https://download.virtualbox.org/virtualbox/$pkgver/VirtualBox-$pkgver.tar.bz2
	musl-fix-stat-nsec.patch
	musl-no-glibc.patch
	musl-off_t.patch
	glibc-symvers.patch
	VBoxClient.patch

	$pkgname-localconfig
	$pkgname.initd
	virtualbox-drm-client.initd
	60-vbox-guest.rules
	"

builddir="$srcdir"/VirtualBox-$pkgver

prepare() {
	default_prepare
	rm -rf "$builddir"/kBuild/bin
	cp "$srcdir"/$pkgname-localconfig LocalConfig.kmk
}

build() {
	./configure \
		--nofatal \
		--disable-alsa \
		--build-headless \
		;
	kBuild/env.sh kmk VBOX_ONLY_ADDITIONS=1 KBUILD_VERBOSE=2
}

package() {
	install -v -Dm755 "$builddir"/out/linux.*/release/bin/additions/VBoxService "$pkgdir/usr/sbin/VBoxService"
	install -v -Dm755 "$builddir"/out/linux.*/release/bin/additions/VBoxControl "$pkgdir/usr/bin/VBoxControl"
	# mount.vboxsf needs to be in /sbin for "mount -t vboxsf..." to work.
	install -v -Dm755 "$builddir"/out/linux.*/release/bin/additions/mount.vboxsf "$pkgdir/sbin/mount.vboxsf"
	install -v -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
}

x11() {
	install_if="$pkgname=$pkgver-r$pkgrel libx11"

	install -v -Dm755 "$builddir"/out/linux.*/release/bin/additions/VBoxClient "$subpkgdir/usr/sbin/VBoxClient"
	install -v -Dm755 "$builddir"/out/linux.*/release/bin/additions/VBoxDRMClient "$subpkgdir/usr/sbin/VBoxDRMClient"
	install -v -Dm755 "$srcdir"/virtualbox-drm-client.initd "$subpkgdir"/etc/init.d/virtualbox-drm-client
}

eudev() {
	pkgdesc="VirtualBox guest rules"
	install_if="$pkgname-x11=$pkgver-r$pkgrel eudev"
	install -D -m0644 60-vbox-guest.rules "$subpkgdir"/usr/lib/udev/rules.d/60-vbox-guest.rules
}

sha512sums="
9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f  VirtualBox-7.0.12.tar.bz2
fe5003d340ef40490eec6746dbc79f1df89cccf55358ce8eef3cef7fcb8fac36c1223850109f1f3b8d3f8ea6f4183367579256ca0604cd98c893b98afa154a32  futimens.patch
7a97497605afe486d31b21b6fecd8e0763415983ea0259093ca9c4589046a9b7e87567bc16c3f5ff80407586aec709091f2f2b4493a8a6cee79311c67412a161  musl-no-glibc.patch
d5ea53cc11fd4a9f1a17f5c68ca3939004e178b11e105c61c8a49df456311633a9fe020d2773d37ee50e90c0a16f2c0c5f0944b2294ccaaafa099b86fe10fee0  musl-fix-stat-nsec.patch
b08e050c4738af121dfdb22ab2bdfe1dec3f27ac32d299ea9ca1130e15b4cd4a3619a9402012086f997fb56e3f9b5be3cddaf8f515ccf1e3014dc54d98bd2d6a  musl-off_t.patch
4879003fbd7c4a93fe12019e507fca94290ebd5227af911838f346bdb9cb6ef1e36aa27d32b1e69fb1d95fd05ed1929c4e43ae43b1f11693c20b72ac08f7fa3d  glibc-symvers.patch
922bb37d9b85daf1db469a6fc906539fbf8b99feee49e15a5df34ed5f5a223ee256786d5aca217a23adfd7e2e078b2f4f7a1843ecc405363659b7dd75b647a3e  VBoxClient.patch
4b4709cb9c8ce9f29d3e62d64d5a9aef406799ff21e94bb6ec07eeb2b05e9481ac66a32cbcf42bd0738b7d1831e3ef2df84e8f77ad95fe5979f3984f5e61c4e1  virtualbox-guest-additions-localconfig
ad6ff256def558f5c6b772c62a3e7a6ccd067ae208491e02ce6738a501d02bcac214056825b804c19fd21b33f3752c62bd8572eb8764f6c5eb10534fa668bd38  virtualbox-guest-additions.initd
44c900a4e96cde88521afaa3604a7e1fa28666196de2f86de02ef7e96d2a64c00f852f9ffb2d77be3a14e11d857d5baf37dec38dfce33ddef8e5518efd7532ed  virtualbox-drm-client.initd
0e4fb3bca40ef6b049306c0859e95c02736b411c23028e1917dad01be4c234fd9fcf81e2a184c31e602df3a2a87dd06862e9083a2207731a4253ac8096a47715  60-vbox-guest.rules
"
sha512sums="9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f  VirtualBox-7.0.12.tar.bz2
84de1c35574de12b0a8b9aed798a5f22063f8a754ccd21817ddc953ca1490e68a29e755095ab7622ddb23ac78af04f13bfd1408a7c3c49ab576d1fa5b3c97605  musl-fix-stat-nsec.patch
5d10c12ea3774fb412f4c3717729a5de5b961cf4326cf6d39905d69f8a62b9a6ce9a7e5bdec6b0c801ed56718eb14c109bcd2c8e1e6df835e637b55d5f06fd2d  musl-no-glibc.patch
b08e050c4738af121dfdb22ab2bdfe1dec3f27ac32d299ea9ca1130e15b4cd4a3619a9402012086f997fb56e3f9b5be3cddaf8f515ccf1e3014dc54d98bd2d6a  musl-off_t.patch
4879003fbd7c4a93fe12019e507fca94290ebd5227af911838f346bdb9cb6ef1e36aa27d32b1e69fb1d95fd05ed1929c4e43ae43b1f11693c20b72ac08f7fa3d  glibc-symvers.patch
922bb37d9b85daf1db469a6fc906539fbf8b99feee49e15a5df34ed5f5a223ee256786d5aca217a23adfd7e2e078b2f4f7a1843ecc405363659b7dd75b647a3e  VBoxClient.patch
587922642b1ff3132d5c47a359c60232b43e331ffcd48a3c97bd2aaea44e305c58cd11073e43c93a0b10bc91ff6070e481703455a5893b4a72c9840928d5dd4b  virtualbox-guest-additions-localconfig
ad6ff256def558f5c6b772c62a3e7a6ccd067ae208491e02ce6738a501d02bcac214056825b804c19fd21b33f3752c62bd8572eb8764f6c5eb10534fa668bd38  virtualbox-guest-additions.initd
b4cbc84e358cd55ac380a95952acd1bec79330c77242760aabaac08dbea52d9e9824e256381e8f1fd72187c78a5e2a379caa624ebd2d7658b3eb7d0c2d6cb77d  virtualbox-drm-client.initd
0e4fb3bca40ef6b049306c0859e95c02736b411c23028e1917dad01be4c234fd9fcf81e2a184c31e602df3a2a87dd06862e9083a2207731a4253ac8096a47715  60-vbox-guest.rules"