diff options
author | Stephen Arnold <sarnold@vctlabs.com> | 2016-06-12 18:09:56 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-06-15 17:35:05 +0100 |
commit | 862c9cbbef1f17b57c0ea369d88194b60623ffdd (patch) | |
tree | 7bd4409438a5a734dcfc57efa4b1a41c69589387 | |
parent | 324f7cea3e73eb3f64cdfa221398797ddd2b50e9 (diff) | |
download | openembedded-core-862c9cbbef1f17b57c0ea369d88194b60623ffdd.tar.gz openembedded-core-862c9cbbef1f17b57c0ea369d88194b60623ffdd.tar.bz2 openembedded-core-862c9cbbef1f17b57c0ea369d88194b60623ffdd.zip |
qemu-native: set ld.bfd, fix cflags, and set some environment vars
The main thing is build failures with gold linker, but qemu is also a
little too aggressive at finding random tools on the build host, so we
also set the build env for qemu-native and make sure it doesn't reset
its own (hard-coded) cflags when we don't want it to.
Signed-off-by: Stephen Arnold <sarnold@vctlabs.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r-- | meta/recipes-devtools/qemu/qemu.inc | 13 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/qemu/qemu-2.5.0-cflags.patch | 13 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/qemu_2.6.0.bb | 4 |
3 files changed, 27 insertions, 3 deletions
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc index bf689bbf43..d5925fd575 100644 --- a/meta/recipes-devtools/qemu/qemu.inc +++ b/meta/recipes-devtools/qemu/qemu.inc @@ -30,8 +30,12 @@ SRC_URI_append_class-native = "\ EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-bluez --disable-libiscsi --with-system-pixman --extra-cflags='${CFLAGS}'" -EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)} --disable-werror \ - " +EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)} --disable-werror" + +EXTRA_OEMAKE_append_class-native = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'" + +LDFLAGS_append_class-native = " -fuse-ld=bfd" + export LIBTOOL="${HOST_SYS}-libtool" do_configure_prepend_class-native() { @@ -40,6 +44,11 @@ do_configure_prepend_class-native() { if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$BHOST_PKGCONFIG_PATH fi + + # Alter target makefiles to accept CFLAGS set via env + sed -i -r \ + -e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \ + "${S}"/Makefile "${S}"/Makefile.target } KVMENABLE = "--enable-kvm" diff --git a/meta/recipes-devtools/qemu/qemu/qemu-2.5.0-cflags.patch b/meta/recipes-devtools/qemu/qemu/qemu-2.5.0-cflags.patch new file mode 100644 index 0000000000..173394fd02 --- /dev/null +++ b/meta/recipes-devtools/qemu/qemu/qemu-2.5.0-cflags.patch @@ -0,0 +1,13 @@ +--- a/configure ++++ b/configure +@@ -4468,10 +4468,6 @@ fi + if test "$gcov" = "yes" ; then + CFLAGS="-fprofile-arcs -ftest-coverage -g $CFLAGS" + LDFLAGS="-fprofile-arcs -ftest-coverage $LDFLAGS" +-elif test "$fortify_source" = "yes" ; then +- CFLAGS="-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS" +-elif test "$debug" = "no"; then +- CFLAGS="-O2 $CFLAGS" + fi + + ########################################## diff --git a/meta/recipes-devtools/qemu/qemu_2.6.0.bb b/meta/recipes-devtools/qemu/qemu_2.6.0.bb index e39132625a..735d013e3b 100644 --- a/meta/recipes-devtools/qemu/qemu_2.6.0.bb +++ b/meta/recipes-devtools/qemu/qemu_2.6.0.bb @@ -8,7 +8,9 @@ SRC_URI += "file://configure-fix-Darwin-target-detection.patch \ file://Qemu-Arm-versatilepb-Add-memory-size-checking.patch \ file://no-valgrind.patch \ file://pathlimit.patch \ - " + file://qemu-2.5.0-cflags.patch \ +" + SRC_URI_prepend = "http://wiki.qemu-project.org/download/${BP}.tar.bz2" SRC_URI[md5sum] = "ca3f70b43f093e33e9e014f144067f13" SRC_URI[sha256sum] = "c9ac4a651b273233d21b8bec32e30507cb9cce7900841febc330956a1a8434ec" |