summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-24 23:52:06 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-26 10:44:27 +0000
commit1d75635ac53589beccdcb72138bfcd28d82d8d14 (patch)
tree69727d0d9fae9f8a9dfcf73cdc200b57472d6ba7
parent42ed1d8ac9799e41544c2da93069ecc6f86cbded (diff)
downloadpoky-1d75635ac53589beccdcb72138bfcd28d82d8d14.tar.gz
gcc/gcc-source: Move libcc1 manipulation into gcc-source
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. (From OE-Core rev: 626064c69b6fd1b5cead6995097f99e5fbda3f19) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/gcc/gcc-source.inc5
-rw-r--r--meta/recipes-devtools/gcc/gcc_5.4.bb6
-rw-r--r--meta/recipes-devtools/gcc/gcc_6.3.bb6
3 files changed, 5 insertions, 12 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-source.inc b/meta/recipes-devtools/gcc/gcc-source.inc
index 0d0edb58f0..fab99f2d1e 100644
--- a/meta/recipes-devtools/gcc/gcc-source.inc
+++ b/meta/recipes-devtools/gcc/gcc-source.inc
@@ -26,6 +26,11 @@ python do_preconfigure () {
26 bb.utils.remove(d.expand("${S}/gcc/gengtype-lex.c")) 26 bb.utils.remove(d.expand("${S}/gcc/gengtype-lex.c"))
27 cmd = d.expand("sed -i 's/BUILD_INFO=info/BUILD_INFO=/' ${S}/gcc/configure") 27 cmd = d.expand("sed -i 's/BUILD_INFO=info/BUILD_INFO=/' ${S}/gcc/configure")
28 subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True) 28 subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
29
30 # Easiest way to stop bad RPATHs getting into the library since we have a
31 # broken libtool here (breaks cross-canadian and target at least)
32 cmd = d.expand("sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure")
33 subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
29} 34}
30addtask do_preconfigure after do_patch 35addtask do_preconfigure after do_patch
31do_preconfigure[depends] += "gnu-config-native:do_populate_sysroot autoconf-native:do_populate_sysroot" 36do_preconfigure[depends] += "gnu-config-native:do_populate_sysroot autoconf-native:do_populate_sysroot"
diff --git a/meta/recipes-devtools/gcc/gcc_5.4.bb b/meta/recipes-devtools/gcc/gcc_5.4.bb
index b0a523cae2..2c618dfb93 100644
--- a/meta/recipes-devtools/gcc/gcc_5.4.bb
+++ b/meta/recipes-devtools/gcc/gcc_5.4.bb
@@ -6,10 +6,4 @@ require gcc-target.inc
6# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output 6# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
7ARM_INSTRUCTION_SET_armv4 = "arm" 7ARM_INSTRUCTION_SET_armv4 = "arm"
8 8
9do_configure_prepend() {
10 # Easiest way to stop bad RPATHs getting into the library since we have a
11 # broken libtool here
12 sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure
13}
14
15BBCLASSEXTEND = "nativesdk" 9BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/gcc/gcc_6.3.bb b/meta/recipes-devtools/gcc/gcc_6.3.bb
index b0a523cae2..2c618dfb93 100644
--- a/meta/recipes-devtools/gcc/gcc_6.3.bb
+++ b/meta/recipes-devtools/gcc/gcc_6.3.bb
@@ -6,10 +6,4 @@ require gcc-target.inc
6# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output 6# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
7ARM_INSTRUCTION_SET_armv4 = "arm" 7ARM_INSTRUCTION_SET_armv4 = "arm"
8 8
9do_configure_prepend() {
10 # Easiest way to stop bad RPATHs getting into the library since we have a
11 # broken libtool here
12 sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${S}/libcc1/configure
13}
14
15BBCLASSEXTEND = "nativesdk" 9BBCLASSEXTEND = "nativesdk"