summaryrefslogtreecommitdiff
path: root/libre/virtualbox-libre-modules/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'libre/virtualbox-libre-modules/PKGBUILD')
-rw-r--r--libre/virtualbox-libre-modules/PKGBUILD161
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"
+}