Hi, I got build errors on Ubuntu 12.04 with this patch:

| DEBUG: Executing shell function do_configure
|
| ERROR: "gcc " cannot build an executable (is your linker broken?)


// Robert

On 06/21/2016 09:18 AM, Stephen Arnold wrote:
And I finally figured out git send-email no longer has a
--subject-prefix= option so it looks like --compose and hand-edit the
Subject line in the patch is the only way to increment the version.

This is [PATCH v4] btw...

Steve

On Mon, Jun 20, 2016 at 5:54 PM, Stephen Arnold <sarn...@vctlabs.com> wrote:
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 <sarn...@vctlabs.com>

The cflags patch was imported from Gentoo Portage and has been
manitained over several versions; this version was rebased against
upstream qemu git.

Upstream-Status: Inappropriate
  - Patch addresses distribution maintenance and build environment
    sanity.

Signed-off-by: Stephen Arnold <nerd...@gentoo.org>
---
  meta/recipes-devtools/qemu/qemu.inc                | 11 ++++++--
  .../qemu/qemu/qemu-2.6.0-cflags.patch              | 31 ++++++++++++++++++++++
  meta/recipes-devtools/qemu/qemu_2.6.0.bb           |  1 +
  3 files changed, 41 insertions(+), 2 deletions(-)
  create mode 100644 meta/recipes-devtools/qemu/qemu/qemu-2.6.0-cflags.patch

diff --git a/meta/recipes-devtools/qemu/qemu.inc 
b/meta/recipes-devtools/qemu/qemu.inc
index bf689bb..0a68f05 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -30,8 +30,10 @@ 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="${TARGET_PREFIX}ld.bfd" AR="${AR}" 
OBJCOPY="${OBJCOPY}" LDFLAGS="${LDFLAGS}""
+
  export LIBTOOL="${HOST_SYS}-libtool"

  do_configure_prepend_class-native() {
@@ -40,6 +42,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.6.0-cflags.patch 
b/meta/recipes-devtools/qemu/qemu/qemu-2.6.0-cflags.patch
new file mode 100644
index 0000000..5b78edf
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu/qemu-2.6.0-cflags.patch
@@ -0,0 +1,31 @@
+From 5d29baaf7a8c09f2f97231116e0f396b0402b23d Mon Sep 17 00:00:00 2001
+From: Steve Arnold <stephen.arnol...@gmail.com>
+Date: Sun, 19 Jun 2016 11:29:44 -0700
+Subject: [PATCH] configure: remove hard-coded flags and let build env handle
+ it
+
+Apply distribution patch for handling debug and fortify source options.
+
+Signed-off-by: Steve Arnold <nerd...@gentoo.org>
+---
+ configure | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/configure b/configure
+index 10cb212..6f1b10c 100755
+--- a/configure
++++ b/configure
+@@ -4539,10 +4539,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
+
+ ##########################################
+--
+2.8.1
+
diff --git a/meta/recipes-devtools/qemu/qemu_2.6.0.bb 
b/meta/recipes-devtools/qemu/qemu_2.6.0.bb
index e391326..62c509b 100644
--- a/meta/recipes-devtools/qemu/qemu_2.6.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_2.6.0.bb
@@ -8,6 +8,7 @@ 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"
--
2.8.1

--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to