summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2018-06-11 16:38:20 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-18 10:59:33 +0100
commitd10fd6ae3fe46290c6e3a5250878966d9f12ca3f (patch)
tree61168f7d00c0532856c5152175ed5903aade9571 /meta
parentf3247720dc4b1c49e8fad734e20b17ba55843b97 (diff)
downloadopenembedded-core-d10fd6ae3fe46290c6e3a5250878966d9f12ca3f.tar.gz
qemuwrapper-cross: enable multilib and nativesdk variants of the script
Previously only one global variant of the script was created, which caused numerous issues: 1) multilib was not properly supported due to multilib variants each needing their own version of the qemu binary and library paths to be set 2) nativesdk was not properly supported for the same reason This patch also moves setting LD_LIBRARY_PATH directly into the recipe, as passing it down from other recipes did not work when said recipes were allarch, and adjusts calls to qemuwrapper from postinst-intercepts, so that its correct variant is selected. Also, the various qemu fallbacks in qemuwrapper script are all removed, as they are no longer necessary. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/fontcache.bbclass2
-rw-r--r--meta/classes/pixbufcache.bbclass2
-rw-r--r--meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb37
3 files changed, 12 insertions, 29 deletions
diff --git a/meta/classes/fontcache.bbclass b/meta/classes/fontcache.bbclass
index e76331131e..f71a754a4d 100644
--- a/meta/classes/fontcache.bbclass
+++ b/meta/classes/fontcache.bbclass
@@ -17,7 +17,7 @@ FONTCONFIG_CACHE_PARAMS ?= "-v"
FONTCONFIG_CACHE_ENV ?= "FC_DEBUG=1"
fontcache_common() {
if [ -n "$D" ] ; then
- $INTERCEPT_DIR/postinst_intercept update_font_cache ${PKG} mlprefix=${MLPREFIX} \
+ $INTERCEPT_DIR/postinst_intercept update_font_cache ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} \
'bindir="${bindir}"' \
'libdir="${libdir}"' \
'base_libdir="${base_libdir}"' \
diff --git a/meta/classes/pixbufcache.bbclass b/meta/classes/pixbufcache.bbclass
index b3e507f61b..3378ff2c80 100644
--- a/meta/classes/pixbufcache.bbclass
+++ b/meta/classes/pixbufcache.bbclass
@@ -12,7 +12,7 @@ PACKAGE_WRITE_DEPS += "qemu-native gdk-pixbuf-native"
pixbufcache_common() {
if [ "x$D" != "x" ]; then
- $INTERCEPT_DIR/postinst_intercept update_pixbuf_cache ${PKG} mlprefix=${MLPREFIX} libdir=${libdir} \
+ $INTERCEPT_DIR/postinst_intercept update_pixbuf_cache ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} libdir=${libdir} \
bindir=${bindir} base_libdir=${base_libdir}
else
diff --git a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
index c983fbae66..4b1b46d0bb 100644
--- a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
@@ -13,38 +13,21 @@ do_populate_sysroot[depends] = ""
do_install () {
install -d ${D}${bindir_crossscripts}/
- echo "#!/bin/sh" > ${D}${bindir_crossscripts}/qemuwrapper
qemu_binary=${@qemu_target_binary(d)}
- qemu_options='${QEMU_OPTIONS}'
- echo "$qemu_binary $qemu_options \"\$@\"" >> ${D}${bindir_crossscripts}/qemuwrapper
- fallback_qemu_bin=
- case $qemu_binary in
- "qemu-i386")
- fallback_qemu_bin=qemu-x86_64
- ;;
- "qemu-x86_64")
- fallback_qemu_bin=qemu-i386
- ;;
- *)
- ;;
- esac
-
- if [ -n "$fallback_qemu_bin" ]; then
-
- cat >> ${D}${bindir_crossscripts}/qemuwrapper << EOF
-rc=\$?
-if [ \$rc = 255 ]; then
- $fallback_qemu_bin "\$@"
- rc=\$?
-fi
-exit \$rc
-EOF
+ qemu_options='${QEMU_OPTIONS} -E LD_LIBRARY_PATH=$D${libdir}:$D${base_libdir}'
+
+ cat >> ${D}${bindir_crossscripts}/${MLPREFIX}qemuwrapper << EOF
+#!/bin/sh
+set -x
- fi
+$qemu_binary $qemu_options "\$@"
+EOF
- chmod +x ${D}${bindir_crossscripts}/qemuwrapper
+ chmod +x ${D}${bindir_crossscripts}/${MLPREFIX}qemuwrapper
}
SYSROOT_DIRS += "${bindir_crossscripts}"
INHIBIT_DEFAULT_DEPS = "1"
+
+BBCLASSEXTEND = "nativesdk"