summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-09 18:51:44 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-11 19:08:02 +0100
commit8f8facbed42afb186a92f314bf2f04c5858f0c3e (patch)
tree1ecfe93fab63b08dc3e40124b62b4ccef0bfb649 /meta/recipes-devtools
parent6697ce28851121fa570b93949b82a36c322e4014 (diff)
downloadast2050-yocto-poky-8f8facbed42afb186a92f314bf2f04c5858f0c3e.zip
ast2050-yocto-poky-8f8facbed42afb186a92f314bf2f04c5858f0c3e.tar.gz
gcc: Various fixups to ensure consistent gcc builds
We ensure that: * the shared work directory contains PR and ensure PR values are consistent across gcc builds * the regexp to handle library directories is in a specific task and run once This avoids breakage that was seen in incremental builds after commit be1f70d68b6b75772ebab8bdff683ddd7c42b0cd where the interpretor could become corrupted. This was due to the sed expression corrupting the source directory. (From OE-Core rev: 970af6b09e1d69041b0d82fa56ace19543405eb1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.5.1.inc2
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.6.inc4
-rw-r--r--meta/recipes-devtools/gcc/gcc-common.inc9
-rw-r--r--meta/recipes-devtools/gcc/gcc-configure-common.inc10
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-initial_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-intermediate_4.5.1.bb1
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross_csl-arm-2008q1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-csl-arm-2008q1.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc_4.5.1.bb1
-rw-r--r--meta/recipes-devtools/gcc/gcc_csl-arm-2008q1.bb2
-rw-r--r--meta/recipes-devtools/gcc/libgcc_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/libgcc_4.6.bb2
18 files changed, 17 insertions, 33 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.5.1.inc b/meta/recipes-devtools/gcc/gcc-4.5.1.inc
index 1b21a75..6eb3044 100644
--- a/meta/recipes-devtools/gcc/gcc-4.5.1.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.5.1.inc
@@ -1,5 +1,7 @@
require gcc-common.inc
+PR = "r8"
+
DEPENDS =+ "mpfr gmp libmpc elfutils"
NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native elfutils-native"
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc
index f952ac8..0a148b4 100644
--- a/meta/recipes-devtools/gcc/gcc-4.6.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.6.inc
@@ -1,6 +1,6 @@
require gcc-common.inc
-PR = "r4"
+PR = "r7"
# Third digit in PV should be incremented after a minor release
# happens from this branch on gcc e.g. currently its 4.6.0
@@ -73,7 +73,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH};proto=http \
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
#S = "${WORKDIR}/${BRANCH}"
-S = "${TMPDIR}/work-shared/gcc-${PV}/${BRANCH}"
+S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${BRANCH}"
B = "${WORKDIR}/${BRANCH}/build.${HOST_SYS}.${TARGET_SYS}"
# Language Overrides
diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc
index 1684e78..52431fa 100644
--- a/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/meta/recipes-devtools/gcc/gcc-common.inc
@@ -40,17 +40,18 @@ ${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ \n \
gcclibdir = "${libdir}/gcc"
BINV = "${PV}"
#S = "${WORKDIR}/gcc-${PV}"
-S = "${TMPDIR}/work-shared/gcc-${PV}/gcc-${PV}"
+S = "${TMPDIR}/work-shared/gcc-${PV}/gcc-${PV}-${PR}"
B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
# SS means Shared Stamps directory
-SS = "${TMPDIR}/stamps/work-shared/gcc-${PV}"
+SS = "${TMPDIR}/stamps/work-shared/gcc-${PV}-${PR}"
do_fetch[stamp-base] = "${SS}"
do_unpack[stamp-base] = "${SS}"
+do_headerfix[stamp-base] = "${SS}"
do_patch[stamp-base] = "${SS}"
# SW means Shared Work directory
-SW = "${TMPDIR}/work-shared/gcc-${PV}"
+SW = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"
WORKDIR_task-unpack = "${SW}"
WORKDIR_task-patch = "${SW}"
@@ -61,7 +62,7 @@ target_prefix ?= "${prefix}"
CLEANFUNCS += "workshared_clean"
# The do_clean should be exclusive since share ${S}
-do_clean[lockfiles] = "${TMPDIR}/stamps/work-shared/gcc-${PV}.clean.lock"
+do_clean[lockfiles] = "${SW}.clean.lock"
python workshared_clean () {
"""clear the source directory"""
diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc b/meta/recipes-devtools/gcc/gcc-configure-common.inc
index 869d1b6..2ddc3d7 100644
--- a/meta/recipes-devtools/gcc/gcc-configure-common.inc
+++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc
@@ -61,9 +61,9 @@ SYSTEMHEADERS = "${target_includedir}"
SYSTEMLIBS = "${target_base_libdir}/"
SYSTEMLIBS1 = "${target_libdir}/"
-do_configure_prepend () {
- # Change the default dynamic linker path, only useful for SDK, other's value
- # are not changed according to the SYSTEMLIBS_DIR
+do_headerfix () {
+ # Change the default dynamic linker path, in case $base_liddir is non-standard
+ # (e.g. in multilib or sdk cases)
#
# We want something like the following:
# #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
@@ -72,7 +72,11 @@ do_configure_prepend () {
#
sed -i ${S}/gcc/config/*/linux*.h -e \
's#\(GLIBC_DYNAMIC_LINKER[^ ]*\) \( *"/lib.*\)/\(.*\)#\1 SYSTEMLIBS_DIR "\3#'
+}
+addtask headerfix after do_unpack before do_patch
+
+do_configure_prepend () {
# teach gcc to find correct target includedir when checking libc ssp support
mkdir -p ${B}/gcc
echo "NATIVE_SYSTEM_HEADER_DIR = ${SYSTEMHEADERS}" > ${B}/gcc/t-oe
diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.1.bb
index 92708d4..da3210f 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.1.bb
@@ -5,8 +5,6 @@ require gcc-cross-canadian.inc
require gcc-configure-sdk.inc
require gcc-package-sdk.inc
-PR = "r4"
-
DEPENDS += "gmp-nativesdk mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"
RDEPENDS_${PN} += "mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-cross-initial_4.5.1.bb
index 081b7d6..16d8181 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-initial_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-initial_4.5.1.bb
@@ -1,5 +1,3 @@
require gcc-cross_${PV}.bb
require gcc-cross-initial.inc
-PR = "r4"
-
diff --git a/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.5.1.bb
index a8473b0..42fd0f0 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.5.1.bb
@@ -1,4 +1,3 @@
require gcc-cross_${PV}.bb
require gcc-cross-intermediate.inc
-PR = "r5"
diff --git a/meta/recipes-devtools/gcc/gcc-cross_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-cross_4.5.1.bb
index af6daf4..97a0c81 100644
--- a/meta/recipes-devtools/gcc/gcc-cross_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross_4.5.1.bb
@@ -1,5 +1,3 @@
-PR = "r4"
-
require gcc-${PV}.inc
require gcc-cross4.inc
diff --git a/meta/recipes-devtools/gcc/gcc-cross_csl-arm-2008q1.bb b/meta/recipes-devtools/gcc/gcc-cross_csl-arm-2008q1.bb
index 3c9a7f8..58eba46 100644
--- a/meta/recipes-devtools/gcc/gcc-cross_csl-arm-2008q1.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross_csl-arm-2008q1.bb
@@ -1,5 +1,3 @@
-PR = "r5"
-
require gcc-csl-arm-2008q1.inc
require gcc-cross4.inc
require gcc-configure-cross.inc
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.5.1.bb
index 9708248..0c9fdd3 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.5.1.bb
@@ -1,4 +1,2 @@
require gcc-cross-initial_${PV}.bb
require gcc-crosssdk-initial.inc
-
-PR = "r4"
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.5.1.bb
index d235969..1aa588a 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.5.1.bb
@@ -1,4 +1,2 @@
require gcc-cross-intermediate_${PV}.bb
require gcc-crosssdk-intermediate.inc
-
-PR = "r4"
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-crosssdk_4.5.1.bb
index bae2389..7430888 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk_4.5.1.bb
@@ -1,4 +1,2 @@
require gcc-cross_${PV}.bb
require gcc-crosssdk.inc
-
-PR = "r4"
diff --git a/meta/recipes-devtools/gcc/gcc-csl-arm-2008q1.inc b/meta/recipes-devtools/gcc/gcc-csl-arm-2008q1.inc
index cb5b087..062f1c5 100644
--- a/meta/recipes-devtools/gcc/gcc-csl-arm-2008q1.inc
+++ b/meta/recipes-devtools/gcc/gcc-csl-arm-2008q1.inc
@@ -2,6 +2,7 @@ require gcc-common.inc
BINV = "4.2.3"
PV = "4.2.3+csl-arm-2008q1-126"
+PR = "r6"
FILESDIR = "${FILE_DIRNAME}/gcc-csl-arm"
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
index 0a7056c..bd3bacf 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
@@ -1,5 +1,3 @@
-PR = "r6"
-
require gcc-${PV}.inc
require gcc-configure-runtime.inc
require gcc-package-runtime.inc
diff --git a/meta/recipes-devtools/gcc/gcc_4.5.1.bb b/meta/recipes-devtools/gcc/gcc_4.5.1.bb
index f036cb1..4dfb12e 100644
--- a/meta/recipes-devtools/gcc/gcc_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc_4.5.1.bb
@@ -1,4 +1,3 @@
-PR = "r8"
require gcc-${PV}.inc
require gcc-configure-target.inc
require gcc-package-target.inc
diff --git a/meta/recipes-devtools/gcc/gcc_csl-arm-2008q1.bb b/meta/recipes-devtools/gcc/gcc_csl-arm-2008q1.bb
index 9fd2b0a..5bb8e58 100644
--- a/meta/recipes-devtools/gcc/gcc_csl-arm-2008q1.bb
+++ b/meta/recipes-devtools/gcc/gcc_csl-arm-2008q1.bb
@@ -1,5 +1,3 @@
-PR = "r5"
-
require gcc-${PV}.inc
require gcc-configure-target.inc
require gcc-package-target.inc
diff --git a/meta/recipes-devtools/gcc/libgcc_4.5.1.bb b/meta/recipes-devtools/gcc/libgcc_4.5.1.bb
index b0523c7..4955537 100644
--- a/meta/recipes-devtools/gcc/libgcc_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/libgcc_4.5.1.bb
@@ -1,7 +1,5 @@
require gcc-${PV}.inc
-PR = "r0"
-
INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
diff --git a/meta/recipes-devtools/gcc/libgcc_4.6.bb b/meta/recipes-devtools/gcc/libgcc_4.6.bb
index a6e1146..81664e3 100644
--- a/meta/recipes-devtools/gcc/libgcc_4.6.bb
+++ b/meta/recipes-devtools/gcc/libgcc_4.6.bb
@@ -1,7 +1,5 @@
require gcc-${PV}.inc
-PR = "r1"
-
INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
OpenPOWER on IntegriCloud