All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] qemu: OpenSUSE 13.2 configure error
@ 2015-06-30  0:16 Juro Bystricky
  2015-06-30 10:32 ` Burton, Ross
  0 siblings, 1 reply; 7+ messages in thread
From: Juro Bystricky @ 2015-06-30  0:16 UTC (permalink / raw)
  To: openembedded-core; +Cc: richard.purdie

Under some circumstances, on OpenSUSE 13.2 qemu-native configure
can fail with the error:

ERROR: User requested feature sdl
        configure was not able to find it

The following sequence can reproduce the build error:

$ bitbake libgpg-error-native
$ bitbake qemu-native

Qemu configure tests for the presence/existance of SDL by
trying to link against libSDL. libSDL in turn attempts to load
libcrypt which will then attempt to load libgpg-error.
The bitbaked libgpg-error will be built with ABI incompatible
with the one required by libcrypt.
The remedy is to force qemu configure to use the host's
libgpg-error instead. This is achieved by modifying the linker
library search order.

[YOCTO#7469]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
---
 .../qemu/files/qemu-libcrypt-search-path-fix.patch | 37 ++++++++++++++++++++++
 meta/recipes-devtools/qemu/qemu_1.7.0.bb           |  4 ++-
 2 files changed, 40 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-devtools/qemu/files/qemu-libcrypt-search-path-fix.patch

diff --git a/meta/recipes-devtools/qemu/files/qemu-libcrypt-search-path-fix.patch b/meta/recipes-devtools/qemu/files/qemu-libcrypt-search-path-fix.patch
new file mode 100644
index 0000000..e44d883
--- /dev/null
+++ b/meta/recipes-devtools/qemu/files/qemu-libcrypt-search-path-fix.patch
@@ -0,0 +1,37 @@
+--- a/configure
++++ b/configure
+@@ -1802,6 +1802,8 @@ if test -n "$cross_prefix" && test "$(ba
+ fi
+ 
+ sdl_too_old=no
++sdl_cflags_ex="-L/usr/lib  -L/usr/lib64 -Wl,-rpath-link,/usr/lib  -Wl,-rpath-link,/usr/lib64"
++ 
+ if test "$sdl" != "no" ; then
+   cat > $TMPC << EOF
+ #include <SDL.h>
+@@ -1814,7 +1816,7 @@ EOF
+   else
+     sdl_libs=`$sdlconfig --libs 2> /dev/null`
+   fi
+-  if compile_prog "$sdl_cflags" "$sdl_libs" ; then
++  if compile_prog "$sdl_cflags $sdl_cflags_ex" "$sdl_libs" ; then
+     if test "$_sdlversion" -lt 121 ; then
+       sdl_too_old=yes
+     else
+@@ -1853,7 +1855,7 @@ if test "$sdl" = "yes" ; then
+ #endif
+ int main(void) { return 0; }
+ EOF
+-  if compile_prog "$sdl_cflags" "$sdl_libs" ; then
++  if compile_prog "$sdl_cflags $sdl_cflags_ex" "$sdl_libs" ; then
+     sdl_libs="$sdl_libs -lX11"
+   fi
+   libs_softmmu="$sdl_libs $libs_softmmu"
+@@ -4287,6 +4289,7 @@ echo "OBJCOPY=$objcopy" >> $config_host_
+ echo "LD=$ld" >> $config_host_mak
+ echo "WINDRES=$windres" >> $config_host_mak
+ echo "LIBTOOL=$libtool" >> $config_host_mak
++CFLAGS="$CFLAGS $sdl_cflags_ex"
+ echo "CFLAGS=$CFLAGS" >> $config_host_mak
+ echo "QEMU_CFLAGS=$QEMU_CFLAGS" >> $config_host_mak
+ echo "QEMU_INCLUDES=$QEMU_INCLUDES" >> $config_host_mak
diff --git a/meta/recipes-devtools/qemu/qemu_1.7.0.bb b/meta/recipes-devtools/qemu/qemu_1.7.0.bb
index a519645..a44a6f7 100644
--- a/meta/recipes-devtools/qemu/qemu_1.7.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_1.7.0.bb
@@ -6,7 +6,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
 SRC_URI += "file://fxrstorssefix.patch \
             file://qemu-enlarge-env-entry-size.patch \
             file://Qemu-Arm-versatilepb-Add-memory-size-checking.patch \
-            file://ide-CVE-2014-2894.patch"
+            file://ide-CVE-2014-2894.patch \
+            file://qemu-libcrypt-search-path-fix.patch \
+            "
 
 SRC_URI_prepend = "http://wiki.qemu.org/download/qemu-${PV}.tar.bz2"
 SRC_URI[md5sum] = "32893941d40d052a5e649efcf06aca06"
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-10-12 18:36 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-30  0:16 [PATCH] qemu: OpenSUSE 13.2 configure error Juro Bystricky
2015-06-30 10:32 ` Burton, Ross
2015-06-30 10:37   ` Burton, Ross
2015-06-30 10:38   ` Richard Purdie
2015-06-30 17:02     ` Saul Wold
2015-10-12 18:30     ` [daisy][PATCH v2 0/1 ] OpenSUSE 13.2 qemu configuration Juro Bystricky
2015-10-12 18:30       ` [daisy][PATCH v2 ] qemu: OpenSUSE 13.2 configure error Juro Bystricky

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.