From: Gianfranco Costamagna <costamagna.gianfranco@gmail.com>
To: openembedded-devel@lists.openembedded.org
Cc: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>,
Gianfranco Costamagna <gianfranco.costamagna@abinsula.com>,
Gianfranco Costamagna <locutusofborg@debian.org>
Subject: [meta-oe][PATCH] vboxguestdrivers: update to version 6.1.0 and unblacklist
Date: Wed, 8 Jan 2020 15:50:44 +0100 [thread overview]
Message-ID: <20200108145044.14535-1-costamagnagianfranco@yahoo.it> (raw)
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
reply other threads:[~2020-01-08 14:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200108145044.14535-1-costamagnagianfranco@yahoo.it \
--to=costamagna.gianfranco@gmail.com \
--cc=costamagnagianfranco@yahoo.it \
--cc=gianfranco.costamagna@abinsula.com \
--cc=locutusofborg@debian.org \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.