summaryrefslogtreecommitdiffstats
path: root/debian/virtualbox-source.files
diff options
context:
space:
mode:
Diffstat (limited to 'debian/virtualbox-source.files')
-rw-r--r--debian/virtualbox-source.files/Makefile3
-rw-r--r--debian/virtualbox-source.files/control.modules.in27
-rw-r--r--debian/virtualbox-source.files/postinst.modules.in23
-rw-r--r--debian/virtualbox-source.files/rules79
-rw-r--r--debian/virtualbox-source.files/udev3
5 files changed, 135 insertions, 0 deletions
diff --git a/debian/virtualbox-source.files/Makefile b/debian/virtualbox-source.files/Makefile
new file mode 100644
index 00000000..a9ffb7c4
--- /dev/null
+++ b/debian/virtualbox-source.files/Makefile
@@ -0,0 +1,3 @@
+.NOTPARALLEL:
+
+obj-m = vboxdrv/ vboxnetflt/ vboxnetadp/ vboxpci/
diff --git a/debian/virtualbox-source.files/control.modules.in b/debian/virtualbox-source.files/control.modules.in
new file mode 100644
index 00000000..174aea49
--- /dev/null
+++ b/debian/virtualbox-source.files/control.modules.in
@@ -0,0 +1,27 @@
+Source: virtualbox
+Section: contrib/misc
+Priority: optional
+Maintainer: Debian Virtualbox Team <team+debian-virtualbox@tracker.debian.org>
+Uploaders: Ritesh Raj Sarraf <rrs@debian.org>,
+ Gianfranco Costamagna <locutusofborg@debian.org>
+Build-Depends: debhelper (>= 10), kbuild
+Standards-Version: 4.3.0
+Homepage: https://www.virtualbox.org
+Vcs-Browser: https://salsa.debian.org/pkg-virtualbox-team/virtualbox
+Vcs-Git: https://salsa.debian.org/pkg-virtualbox-team/virtualbox.git
+
+Package: virtualbox-modules-_KVERS_
+Section: contrib/kernel
+Architecture: amd64 i386
+Depends: linux-modules-_KVERS_ | linux-image-_KVERS_
+Recommends: virtualbox
+Provides: virtualbox-modules
+Description: VirtualBox modules for Linux (kernel _KVERS_)
+ This package contains the set of loadable kernel modules for VirtualBox.
+ .
+ This package contains the compiled kernel modules for _KVERS_
+ .
+ If you have compiled your own kernel, you will most likely need to build
+ your own virtualbox-modules. The virtualbox-source package has been
+ provided for use with the Debian's module-assistant or kernel-package
+ utilities to produce a version of virtualbox-modules for your kernel.
diff --git a/debian/virtualbox-source.files/postinst.modules.in b/debian/virtualbox-source.files/postinst.modules.in
new file mode 100644
index 00000000..20417402
--- /dev/null
+++ b/debian/virtualbox-source.files/postinst.modules.in
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+set -e
+
+#DEBHELPER#
+
+case "${1}" in
+ configure)
+ # only restart if VirtualBox isn't running
+ if test -x /etc/init.d/virtualbox && ! pidof VBoxSVC > /dev/null; then
+ invoke-rc.d virtualbox restart || true
+ fi
+ ;;
+
+ abort-upgrade|abort-deconfigure|abort-remove)
+
+ ;;
+
+ *)
+ echo "${0} called with unknown argument \`${1}'" 1>&2
+ exit 1
+ ;;
+esac
diff --git a/debian/virtualbox-source.files/rules b/debian/virtualbox-source.files/rules
new file mode 100644
index 00000000..c7057a36
--- /dev/null
+++ b/debian/virtualbox-source.files/rules
@@ -0,0 +1,79 @@
+#!/usr/bin/make -f
+
+# some default definitions, important!
+#
+# Name of the source package
+psource:=virtualbox-source
+gsource:=virtualbox-guest-source
+
+# The short upstream name, used for the module source directory
+sname:=virtualbox
+uname:=virtualbox-guest-utils
+
+### KERNEL SETUP
+### Setup the stuff needed for making kernel module packages
+### taken from /usr/share/kernel-package/sample.module.rules
+
+# prefix of the target package name
+PACKAGE := virtualbox-modules
+# modifieable for experiments or debugging m-a
+MA_DIR ?= /usr/share/modass
+# load generic variable handling
+-include $(MA_DIR)/include/generic.make
+# load default rules, including kdist, kdist_image, ...
+-include $(MA_DIR)/include/common-rules.make
+
+# module assistant calculates all needed things for us and sets
+# following variables:
+# KSRC (kernel source directory), KVERS (kernel version string), KDREV
+# (revision of the Debian kernel-image package), CC (the correct
+# compiler), VERSION (the final package version string), PKGNAME (full
+# package name with KVERS included), DEB_DESTDIR (path to store DEBs)
+
+# The kdist_configure target is called by make-kpkg modules_config and
+# by kdist* rules by dependency. It should configure the module so it is
+# ready for compilation (mostly useful for calling configure).
+# prep-deb-files from module-assistant creates the neccessary debian/ files
+kdist_configure: prep-deb-files
+
+# the kdist_clean target is called by make-kpkg modules_clean and from
+# kdist* rules. It is responsible for cleaning up any changes that have
+# been made by the other kdist_commands (except for the .deb files created)
+kdist_clean: clean
+ $(MAKE) $(MFLAGS) -f debian/rules clean
+#
+### end KERNEL SETUP
+
+#see bug #785161
+#MAKE:=kmk
+
+clean:
+ $(MAKE) -C vboxdrv clean
+ $(MAKE) -C vboxnetflt clean
+ $(MAKE) -C vboxnetadp clean
+ $(MAKE) -C vboxpci clean
+ dh_clean
+
+binary-modules: prep-deb-files
+ dh_testroot
+ dh_clean -k
+ # Build the module
+ $(MAKE) -C $(KSRC) M=$(CURDIR)
+ # Install the module
+ dh_install vboxdrv/vboxdrv.ko /lib/modules/$(KVERS)/misc/
+ dh_install vboxnetflt/vboxnetflt.ko /lib/modules/$(KVERS)/misc/
+ dh_install vboxnetadp/vboxnetadp.ko /lib/modules/$(KVERS)/misc/
+ dh_install vboxpci/vboxpci.ko /lib/modules/$(KVERS)/misc/
+ dh_installudev
+ dh_installdocs
+ dh_installchangelogs
+ dh_compress
+ dh_fixperms
+ dh_installmodules
+ dh_installdeb
+ dh_gencontrol -- -v$(VERSION)
+ dh_md5sums
+ dh_builddeb --destdir=$(DEB_DESTDIR)
+ dh_clean -k
+
+.PHONY: build clean binary-arch binary-indep binary install binary-modules kdist kdist_configure kdist_image kdist_clean
diff --git a/debian/virtualbox-source.files/udev b/debian/virtualbox-source.files/udev
new file mode 100644
index 00000000..865e460e
--- /dev/null
+++ b/debian/virtualbox-source.files/udev
@@ -0,0 +1,3 @@
+KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600"
+KERNEL=="vboxdrvu", NAME="vboxdrvu", OWNER="root", GROUP="root", MODE="0666"
+KERNEL=="vboxnetctl", NAME="vboxnetctl", OWNER="root", GROUP="root", MODE="0600"