All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCH] vboxguestdrivers: update to version 6.1.0 and unblacklist
@ 2020-01-08 14:50 Gianfranco Costamagna
  0 siblings, 0 replies; only message in thread
From: Gianfranco Costamagna @ 2020-01-08 14:50 UTC (permalink / raw)
  To: openembedded-devel
  Cc: Gianfranco Costamagna, Gianfranco Costamagna, Gianfranco Costamagna

From: Gianfranco Costamagna <gianfranco.costamagna@abinsula.com>

- 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>
---
 .../vboxguestdrivers/export.patch             | 77 +++++++++++++++++++
 ...rs_5.2.22.bb => vboxguestdrivers_6.1.0.bb} | 15 ++--
 2 files changed, 84 insertions(+), 8 deletions(-)
 create mode 100644 meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch
 rename meta-oe/recipes-support/vboxguestdrivers/{vboxguestdrivers_5.2.22.bb => vboxguestdrivers_6.1.0.bb} (87%)

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 000000000..bfba3332b
--- /dev/null
+++ b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers/export.patch
@@ -0,0 +1,77 @@
+Index: src/VBox/Additions/linux/export_modules.sh
+===================================================================
+--- a/src/VBox/Additions/linux/export_modules.sh
++++ b/src/VBox/Additions/linux/export_modules.sh
+@@ -46,7 +46,13 @@
+ VBOX_VERSION_MAJOR=`sed -e "s/^ *VBOX_VERSION_MAJOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
+ VBOX_VERSION_MINOR=`sed -e "s/^ *VBOX_VERSION_MINOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
+ VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
+-VBOX_SVN_REV=`sed -e 's/^ *VBOX_SVN_REV_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
++VBOX_SVN_CONFIG_REV=`sed -e 's/^ *VBOX_SVN_REV_CONFIG_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
++VBOX_SVN_VERSION_REV=`sed -e 's/^ *VBOX_SVN_REV_VERSION_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Version.kmk`
++if [ "$VBOX_SVN_CONFIG_REV" -gt "$VBOX_SVN_VERSION_REV" ]; then
++    VBOX_SVN_REV=$VBOX_SVN_CONFIG_REV
++else
++    VBOX_SVN_REV=$VBOX_SVN_VERSION_REV
++fi
+ 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`
+Index: src/VBox/HostDrivers/linux/export_modules.sh
+===================================================================
+--- a/src/VBox/HostDrivers/linux/export_modules.sh
++++ b/src/VBox/HostDrivers/linux/export_modules.sh
+@@ -100,12 +100,26 @@
+ VBOX_VERSION_MINOR=`sed -e "s/^ *VBOX_VERSION_MINOR *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
+ VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
+ VBOX_VERSION_STRING=$VBOX_VERSION_MAJOR.$VBOX_VERSION_MINOR.$VBOX_VERSION_BUILD
+-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`
++VBOX_VERSION_BUILD=`sed -e "s/^ *VBOX_VERSION_BUILD *= \+\([0-9]\+\)/\1/;t;d" $PATH_ROOT/Version.kmk`
++VBOX_SVN_CONFIG_REV=`sed -e 's/^ *VBOX_SVN_REV_CONFIG_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Config.kmk`
++VBOX_SVN_VERSION_REV=`sed -e 's/^ *VBOX_SVN_REV_VERSION_FALLBACK *:= \+\$(patsubst *%:,, *\$Rev: *\([0-9]\+\) *\$ *) */\1/;t;d' $PATH_ROOT/Version.kmk`
++if [ "$VBOX_SVN_CONFIG_REV" -gt "$VBOX_SVN_VERSION_REV" ]; then
++    VBOX_SVN_REV=$VBOX_SVN_CONFIG_REV
++else
++    VBOX_SVN_REV=$VBOX_SVN_VERSION_REV
++fi
++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`
++VBOX_WITH_PCI_PASSTHROUGH=`sed -e "s/^ *VBOX_WITH_PCI_PASSTHROUGH *= *\(1\?\)/\1/;t;d" $PATH_ROOT/Config.kmk`
+ 
+ . $PATH_VBOXDRV/linux/files_vboxdrv
+ . $PATH_VBOXNET/linux/files_vboxnetflt
+ . $PATH_VBOXADP/linux/files_vboxnetadp
+-. $PATH_VBOXPCI/linux/files_vboxpci
++if [ "$VBOX_WITH_PCI_PASSTHROUGH" -eq "1" ]; then
++    . $PATH_VBOXPCI/linux/files_vboxpci
++fi
+ 
+ # Temporary path for creating the modules, will be removed later
+ rm -rf "$PATH_TMP"
+@@ -187,14 +201,16 @@
+ fi
+ 
+ # vboxpci (VirtualBox host PCI access kernel module)
+-mkdir $PATH_TMP/vboxpci || exit 1
+-for f in $VBOX_VBOXPCI_SOURCES; do
+-    install -D -m 0644 `echo $f|cut -d'=' -f1` "$PATH_TMP/vboxpci/`echo $f|cut -d'>' -f2`"
+-done
+-if [ -n "$VBOX_WITH_HARDENING" ]; then
+-    cat                                   $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
+-else
+-    sed -e "s;VBOX_WITH_HARDENING;;g" < $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
++if [ "$VBOX_WITH_PCI_PASSTHROUGH" -eq "1" ]; then
++    mkdir $PATH_TMP/vboxpci || exit 1
++    for f in $VBOX_VBOXPCI_SOURCES; do
++        install -D -m 0644 `echo $f|cut -d'=' -f1` "$PATH_TMP/vboxpci/`echo $f|cut -d'>' -f2`"
++    done
++    if [ -n "$VBOX_WITH_HARDENING" ]; then
++        cat                                   $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
++    else
++        sed -e "s;VBOX_WITH_HARDENING;;g" < $PATH_VBOXPCI/linux/Makefile > $PATH_TMP/vboxpci/Makefile
++    fi
+ fi
+ 
+ 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
similarity index 87%
rename from meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.2.22.bb
rename to meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.0.bb
index 0f8d7af3f..be18b10c6 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}"
 
 SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
     file://Makefile.utils \
+    file://export.patch;patchdir=${WORKDIR}/${VBOX_NAME} \
 "
-SRC_URI[md5sum] = "c9c2f162ac5f99d28d8c0ca43b19ed01"
-SRC_URI[sha256sum] = "5580e875349341a1aabc6d5d2f697d242f277487316faaf1fbe68d9014f788d4"
+SRC_URI[md5sum] = "484b550f4692c9d61896b08bb0a1be7f"
+SRC_URI[sha256sum] = "49005ed94454f893fc3955e1e2b9607e85c300235cb983b39d1df2cfcf29f039"
 
 S = "${WORKDIR}/vbox_module"
 
 export BUILD_TARGET_ARCH="${ARCH}"
 export BUILD_TARGET_ARCH_x86-64="amd64"
 
-EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build'"
+EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KBUILD_VERBOSE=1"
 
 # otherwise 5.2.22 builds just vboxguest
 MAKE_TARGETS = "all"
 
-addtask export_sources before do_patch after do_unpack
+addtask export_sources after do_patch before do_configure
 
 do_export_sources() {
     mkdir -p "${S}"
@@ -50,7 +51,8 @@ do_configure_prepend() {
 }
 
 # compile and install mount utility
-do_compile_append() {
+do_compile() {
+    oe_runmake all
     oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
     if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
         echo "ERROR: One of vbox*.ko modules wasn't built"
@@ -78,6 +80,3 @@ FILES_${PN} = "${base_sbindir}"
 
 # autoload if installed
 KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo"
-
-PNBLACKLIST[vboxguestdrivers] = "Needs forward porting to kernel 5.2+"
-
-- 
2.17.1



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-01-08 14:50 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-08 14:50 [meta-oe][PATCH] vboxguestdrivers: update to version 6.1.0 and unblacklist Gianfranco Costamagna

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.