summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support
diff options
context:
space:
mode:
authorGianfranco Costamagna <gianfranco.costamagna@abinsula.com>2020-01-08 15:50:44 +0100
committerKhem Raj <raj.khem@gmail.com>2020-01-09 14:05:37 -0800
commitbfdefba0fb62c8c45fb32ad260ebd2f64c6e0074 (patch)
tree5820853e7f890bcb3b851f28ffd637bc783f3650 /meta-oe/recipes-support
parentb00f230c52fd45059d424a9f6a813847e1a1eebb (diff)
downloadmeta-openembedded-bfdefba0fb62c8c45fb32ad260ebd2f64c6e0074.tar.gz
vboxguestdrivers: update to version 6.1.0 and unblacklist
- Change oe_runmake call because the yocto one exposes AR/O and other variables, not understood by KBUILD makefile. - Add KBUILD_VERBOSE to add some build verbosity - Add upstream patch to fix export of the module tarball. Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it> Signed-off-by: Gianfranco Costamagna <locutusofborg@debian.org> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support')
-rw-r--r--meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch77
-rw-r--r--meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.0.bb (renamed from meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.2.22.bb)15
2 files changed, 84 insertions, 8 deletions
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch
new file mode 100644
index 0000000000..bfba3332b0
--- /dev/null
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch
@@ -0,0 +1,77 @@
1Index: src/VBox/Additions/linux/export_modules.sh
2===================================================================
3--- a/src/VBox/Additions/linux/export_modules.sh
4+++ b/src/VBox/Additions/linux/export_modules.sh
5@@ -46,7 +46,13 @@
6 VBOX_VERSION_MAJOR=`sed -e "s/^ *VBOX_VERSION_MAJOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
7 VBOX_VERSION_MINOR=`sed -e "s/^ *VBOX_VERSION_MINOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
8 VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
9-VBOX_SVN_REV=`sed -e 's/^ *VBOX_SVN_REV_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
10+VBOX_SVN_CONFIG_REV=`sed -e 's/^ *VBOX_SVN_REV_CONFIG_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
11+VBOX_SVN_VERSION_REV=`sed -e 's/^ *VBOX_SVN_REV_VERSION_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Version.kmk`
12+if [ "$VBOX_SVN_CONFIG_REV" -gt "$VBOX_SVN_VERSION_REV" ]; then
13+ VBOX_SVN_REV=$VBOX_SVN_CONFIG_REV
14+else
15+ VBOX_SVN_REV=$VBOX_SVN_VERSION_REV
16+fi
17 VBOX_VENDOR=`sed -e 's/^ *VBOX_VENDOR *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
18 VBOX_VENDOR_SHORT=`sed -e 's/^ *VBOX_VENDOR_SHORT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
19 VBOX_PRODUCT=`sed -e 's/^ *VBOX_PRODUCT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
20Index: src/VBox/HostDrivers/linux/export_modules.sh
21===================================================================
22--- a/src/VBox/HostDrivers/linux/export_modules.sh
23+++ b/src/VBox/HostDrivers/linux/export_modules.sh
24@@ -100,12 +100,26 @@
25 VBOX_VERSION_MINOR=`sed -e "s/^ *VBOX_VERSION_MINOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
26 VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
27 VBOX_VERSION_STRING=$VBOX_VERSION_MAJOR.$VBOX_VERSION_MINOR.$VBOX_VERSION_BUILD
28-VBOX_SVN_REV=`sed -e 's/^ *VBOX_SVN_REV_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk` VBOX_VENDOR=`sed -e 's/^ *VBOX_VENDOR *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk` VBOX_VENDOR_SHORT=`sed -e 's/^ *VBOX_VENDOR_SHORT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk` VBOX_PRODUCT=`sed -e 's/^ *VBOX_PRODUCT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk` VBOX_C_YEAR=`date +%Y`
29+VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
30+VBOX_SVN_CONFIG_REV=`sed -e 's/^ *VBOX_SVN_REV_CONFIG_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
31+VBOX_SVN_VERSION_REV=`sed -e 's/^ *VBOX_SVN_REV_VERSION_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Version.kmk`
32+if [ "$VBOX_SVN_CONFIG_REV" -gt "$VBOX_SVN_VERSION_REV" ]; then
33+ VBOX_SVN_REV=$VBOX_SVN_CONFIG_REV
34+else
35+ VBOX_SVN_REV=$VBOX_SVN_VERSION_REV
36+fi
37+VBOX_VENDOR=`sed -e 's/^ *VBOX_VENDOR *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
38+VBOX_VENDOR_SHORT=`sed -e 's/^ *VBOX_VENDOR_SHORT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
39+VBOX_PRODUCT=`sed -e 's/^ *VBOX_PRODUCT *= \+\(.\+\)/\1/;t;d' $PATH_ROOT/Config.kmk`
40+VBOX_C_YEAR=`date +%Y`
41+VBOX_WITH_PCI_PASSTHROUGH=`sed -e "s/^ *VBOX_WITH_PCI_PASSTHROUGH *= *\(1\?\)/\1/;t;d" $PATH_ROOT/Config.kmk`
42
43 . $PATH_VBOXDRV/linux/files_vboxdrv
44 . $PATH_VBOXNET/linux/files_vboxnetflt
45 . $PATH_VBOXADP/linux/files_vboxnetadp
46-. $PATH_VBOXPCI/linux/files_vboxpci
47+if [ "$VBOX_WITH_PCI_PASSTHROUGH" -eq "1" ]; then
48+ . $PATH_VBOXPCI/linux/files_vboxpci
49+fi
50
51 # Temporary path for creating the modules, will be removed later
52 rm -rf "$PATH_TMP"
53@@ -187,14 +201,16 @@
54 fi
55
56 # vboxpci (VirtualBox host PCI access kernel module)
57-mkdir $PATH_TMP/vboxpci || exit 1
58-for f in $VBOX_VBOXPCI_SOURCES; do
59- install -D -m 0644 `echo $f|cut -d'=' -f1` "$PATH_TMP/vboxpci/`echo $f|cut -d'>' -f2`"
60-done
61-if [ -n "$VBOX_WITH_HARDENING" ]; then
62- cat $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
63-else
64- sed -e "s;VBOX_WITH_HARDENING;;g" < $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
65+if [ "$VBOX_WITH_PCI_PASSTHROUGH" -eq "1" ]; then
66+ mkdir $PATH_TMP/vboxpci || exit 1
67+ for f in $VBOX_VBOXPCI_SOURCES; do
68+ install -D -m 0644 `echo $f|cut -d'=' -f1` "$PATH_TMP/vboxpci/`echo $f|cut -d'>' -f2`"
69+ done
70+ if [ -n "$VBOX_WITH_HARDENING" ]; then
71+ cat $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
72+ else
73+ sed -e "s;VBOX_WITH_HARDENING;;g" < $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
74+ fi
75 fi
76
77 install -D -m 0644 $PATH_LINUX/Makefile $PATH_TMP/Makefile
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.2.22.bb b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.0.bb
index 0f8d7af3fa..be18b10c66 100644
--- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.2.22.bb
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.0.bb
@@ -13,21 +13,22 @@ VBOX_NAME = "VirtualBox-${PV}"
13 13
14SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \ 14SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
15 file://Makefile.utils \ 15 file://Makefile.utils \
16 file://export.patch;patchdir=${WORKDIR}/${VBOX_NAME} \
16" 17"
17SRC_URI[md5sum] = "c9c2f162ac5f99d28d8c0ca43b19ed01" 18SRC_URI[md5sum] = "484b550f4692c9d61896b08bb0a1be7f"
18SRC_URI[sha256sum] = "5580e875349341a1aabc6d5d2f697d242f277487316faaf1fbe68d9014f788d4" 19SRC_URI[sha256sum] = "49005ed94454f893fc3955e1e2b9607e85c300235cb983b39d1df2cfcf29f039"
19 20
20S = "${WORKDIR}/vbox_module" 21S = "${WORKDIR}/vbox_module"
21 22
22export BUILD_TARGET_ARCH="${ARCH}" 23export BUILD_TARGET_ARCH="${ARCH}"
23export BUILD_TARGET_ARCH_x86-64="amd64" 24export BUILD_TARGET_ARCH_x86-64="amd64"
24 25
25EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build'" 26EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KBUILD_VERBOSE=1"
26 27
27# otherwise 5.2.22 builds just vboxguest 28# otherwise 5.2.22 builds just vboxguest
28MAKE_TARGETS = "all" 29MAKE_TARGETS = "all"
29 30
30addtask export_sources before do_patch after do_unpack 31addtask export_sources after do_patch before do_configure
31 32
32do_export_sources() { 33do_export_sources() {
33 mkdir -p "${S}" 34 mkdir -p "${S}"
@@ -50,7 +51,8 @@ do_configure_prepend() {
50} 51}
51 52
52# compile and install mount utility 53# compile and install mount utility
53do_compile_append() { 54do_compile() {
55 oe_runmake all
54 oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils 56 oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
55 if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then 57 if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
56 echo "ERROR: One of vbox*.ko modules wasn't built" 58 echo "ERROR: One of vbox*.ko modules wasn't built"
@@ -78,6 +80,3 @@ FILES_${PN} = "${base_sbindir}"
78 80
79# autoload if installed 81# autoload if installed
80KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo" 82KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo"
81
82PNBLACKLIST[vboxguestdrivers] = "Needs forward porting to kernel 5.2+"
83