]> code.ossystems Code Review - openembedded-core.git/commitdiff
gcc/gcc-source: Move libcc1 manipulation into gcc-source
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 24 Jan 2017 23:52:06 +0000 (23:52 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 26 Jan 2017 10:41:08 +0000 (10:41 +0000)
Currently there is a race where if you build -cross-canadian without building gcc (target)
you see QA errors about RPATHS. I've tracked this down to this manipulation where the
target gcc recipe changes libcc1 in the shared sources directory. As long as you build
things in the right order, the problem doesn't occur.

Since its changing ${S} move it to gcc-source and avoid the race, saving RP
some head scratching about why unrelated changes failed to build cleanly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/gcc/gcc-source.inc
meta/recipes-devtools/gcc/gcc_5.4.bb
meta/recipes-devtools/gcc/gcc_6.3.bb

index 0d0edb58f0fbdaeac486d6eb34dea350ca9f62a2..fab99f2d1e89aa8a4779b7764672c60772031741 100644 (file)
@@ -26,6 +26,11 @@ python do_preconfigure () {
     bb.utils.remove(d.expand("${S}/gcc/gengtype-lex.c"))
     cmd = d.expand("sed -i 's/BUILD_INFO=info/BUILD_INFO=/' ${S}/gcc/configure")
     subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
+
+    # Easiest way to stop bad RPATHs getting into the library since we have a
+    # broken libtool here (breaks cross-canadian and target at least)
+    cmd = d.expand("sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure")
+    subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
 }
 addtask do_preconfigure after do_patch
 do_preconfigure[depends] += "gnu-config-native:do_populate_sysroot autoconf-native:do_populate_sysroot"
index b0a523cae2826d828f2bcfe2736814309428eb48..2c618dfb93610769684cce4c6e0dd02791b6aa2e 100644 (file)
@@ -6,10 +6,4 @@ require gcc-target.inc
 # | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
 ARM_INSTRUCTION_SET_armv4 = "arm"
 
-do_configure_prepend() {
-       # Easiest way to stop bad RPATHs getting into the library since we have a
-       # broken libtool here
-       sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure
-}
-
 BBCLASSEXTEND = "nativesdk"
index b0a523cae2826d828f2bcfe2736814309428eb48..2c618dfb93610769684cce4c6e0dd02791b6aa2e 100644 (file)
@@ -6,10 +6,4 @@ require gcc-target.inc
 # | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
 ARM_INSTRUCTION_SET_armv4 = "arm"
 
-do_configure_prepend() {
-       # Easiest way to stop bad RPATHs getting into the library since we have a
-       # broken libtool here
-       sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure
-}
-
 BBCLASSEXTEND = "nativesdk"