diff options
Diffstat (limited to 'libre/virtualbox-libre-modules/PKGBUILD')
-rw-r--r-- | libre/virtualbox-libre-modules/PKGBUILD | 161 |
1 files changed, 161 insertions, 0 deletions
diff --git a/libre/virtualbox-libre-modules/PKGBUILD b/libre/virtualbox-libre-modules/PKGBUILD new file mode 100644 index 000000000..d1b6f5fae --- /dev/null +++ b/libre/virtualbox-libre-modules/PKGBUILD @@ -0,0 +1,161 @@ +# $Id$ +#Maintainer: Ionut Biru <ibiru@archlinux.org> +#Maintainer (Parabola): Jorge López <jorginho@lavabit.com> +#Contributor (Parabola): André Silva <emulatorman@lavabit.com> + +pkgbase=virtualbox-libre-modules +pkgname=('virtualbox-libre-modules' 'virtualbox-libre-parabola-modules') +pkgver=4.1.18 +pkgrel=6 +arch=('i686' 'x86_64') +url='http://virtualbox.org' +license=('GPL') +makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libpng' 'libidl2' 'xalan-c' 'sdl' 'linux-libre-headers') +[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') +source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 + LocalConfig.kmk 60-vboxguest.rules os_blag_64.png os_blag.png + os_dragora_64.png os_dragora.png os_dynebolic.png os_gnewsense_64.png os_gnewsense.png + os_gnu_64.png os_gnuhurd.png os_gnulinux_64.png os_gnulinux.png os_gnu.png + os_musix_64.png os_musix.png os_parabola_64.png os_parabola.png os_trisquel_64.png + os_trisquel.png os_ututo_64.png os_ututo.png os_venenux.png libre.patch + free-distros.patch) +md5sums=('38db0a87cba659b484af868b0c2bd3ac' + '4c88bd122677a35f68abd76eb01b378b' + 'ed1341881437455d9735875ddf455fbe' + '8538dba8686d7449cb481c9bae9d722a' + '545c925b46f2ac95e5f8ae407fad101a' + 'f6416f509c2e5460e4dc624e0a57f3c1' + 'bbfb59dd517c020a23701b480187a355' + 'efacfdb61918286ea9bc89866b8fd239' + '7c3eb09995e8bafeef414374e44ad4ce' + 'a49ed3ab6bd0fb084de0ab3dd97ae93e' + '6b432b3305ed446125eef052c38355a6' + 'a70022a468bd3e9daf01818d2d74ac3c' + '6b432b3305ed446125eef052c38355a6' + 'a70022a468bd3e9daf01818d2d74ac3c' + 'a70022a468bd3e9daf01818d2d74ac3c' + '380eb2ab6cad3da198094585853c129c' + 'a60bb9a98abcc3c34156f9051d00df9a' + '3a908ef6952bcf987e63ef2fe4e98d24' + '02e87c39c353634cecacf98f1707fa15' + '0cf41a41e7a415d404d5584e047fd450' + '449cde3b58390284b59c5d663de3edc9' + 'c7951fe6888d939f3a7d0dafe477e82b' + '4da8eeb2ece7e475fc7a0d1003da26c6' + '5e4187af59726d71c5be48d0cd816c34' + 'a9e4724b56ddf99bb2e9a8fab8ad43ba' + 'f7d275fc52e5f3cfafd85646c2914063') + +_extramodules=extramodules-3.5-LIBRE + + + + +build() { + _kernver="$(cat /usr/lib/modules/${_extramodules}/version || true)" + + export KERN_DIR=/usr/lib/modules/${_kernver}/build + export KERN_INCL=/usr/src/linux-${_kernver}/include/ + + cd "$srcdir/VirtualBox-${pkgver}" + + patch -Np1 -i "$srcdir/libre.patch" + patch -Np1 -i "$srcdir/free-distros.patch" + + ## Removing Nonfree directories + rm -rv "./include/VBox/ExtPack" + rm -rv "./src/VBox/ExtPacks" + rm -rv "./src/VBox/Main/src-helper-apps" + + ## Removing Oracle VM VirtualBox Extension Pack icons + rm -v "./src/VBox/Resources/darwin/virtualbox-vbox-extpack.icns" + rm -v "./src/VBox/Resources/other/virtualbox-vbox-extpack-"{16px,20px,24px,32px,40px,48px,64px,72px,80px,96px,128px,256px,512px}.png + rm -v "./src/VBox/Resources/win/OSE/virtualbox-vbox-extpack.ico" + rm -v "./src/VBox/Frontends/VirtualBox/images/extension_pack_"{16px,32px,disabled{_16px,_32px},install{_16px,_32px},install_disabled{_16px,_32px},uninstall{_16px,_32px},uninstall_disabled{_16px,_32px}}.png + + ## Adding free distros icons + for i in {gnuhurd,dynebolic,venenux,{gnu{,linux},parabola,gnewsense,blag,dragora,ututo,musix,trisquel}{,_64}}; do + cp -v "$srcdir/os_${i}.png" "./src/VBox/Frontends/VirtualBox/images" + done + + ## Removing non-free OS icons + rm -v "./src/VBox/Frontends/VirtualBox/images/os_"{{{arch,turbo}linux,debian,fedora,gentoo,linux{24,26},macosx,mandriva,{free,net,open}bsd,redhat,solaris,opensuse,oracle{,solaris},ubuntu,win{2k{3,8},7,8,vista,xp},xandros}{,_64},dos,jrockitve,l4,linux{,22,_other},netware,qnx,os2{_other,ecs,warp{3,4,45}},win{2k,31,95,98,_other,me,nt4}}.png + + cp "$srcdir/LocalConfig.kmk" . + + ./configure \ + --with-linux=/usr/src/linux-${_kernver} \ + --disable-java \ + --disable-docs \ + --disable-xpcom \ + --disable-python \ + --disable-sdl-ttf \ + --disable-alsa \ + --disable-pulse \ + --disable-dbus \ + --disable-opengl \ + --build-headless \ + --nofatal + source ./env.sh + kmk all + + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + make -C "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" +} + +package_virtualbox-libre-parabola-modules(){ + pkgdesc="Additions only for Parabola guests (kernel modules)" + license=('GPL') + install=virtualbox-libre-parabola-modules.install + depends=('linux-libre>=3.5' 'linux-libre<3.6') + replaces=('virtualbox-archlinux-modules') + conflicts=('virtualbox-archlinux-modules') + provides=("virtualbox-archlinux-modules=$pkgver") + + source "$srcdir/VirtualBox-${pkgver}/env.sh" + + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + + for module in vboxguest.ko vboxsf.ko vboxvideo.ko; do + install -D -m644 ${module} \ + "$pkgdir/usr/lib/modules/${_extramodules}/${module}" + done + + install -D -m 0644 "$srcdir/60-vboxguest.rules" \ + "$pkgdir/usr/lib/udev/rules.d/60-vboxguest.rules" + + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; + + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-libre-parabola-modules.install" +} + +package_virtualbox-libre-modules(){ + pkgdesc="Kernel modules for VirtualBox" + license=('GPL') + install=virtualbox-libre-modules.install + depends=('linux-libre>=3.5' 'linux-libre<3.6') + replaces=('virtualbox-modules') + conflicts=('virtualbox-modules') + provides=("virtualbox-modules=$pkgver") + + source "$srcdir/VirtualBox-${pkgver}/env.sh" + + + cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + + install -D -m644 vboxdrv.ko \ + "$pkgdir/usr/lib/modules/${_extramodules}/vboxdrv.ko" + + install -D -m644 vboxnetadp.ko \ + "$pkgdir/usr/lib/modules/${_extramodules}/vboxnetadp.ko" + + install -D -m644 vboxnetflt.ko \ + "$pkgdir/usr/lib/modules/${_extramodules}/vboxnetflt.ko" + + install -D -m644 vboxpci.ko \ + "$pkgdir/usr/lib/modules/${_extramodules}/vboxpci.ko" + + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} + + + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-libre-modules.install" +} |