]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
SDK: Allow changing SDKMACHINE without wiping TMP folder
authorJuro Bystricky <juro.bystricky@intel.com>
Mon, 26 Sep 2016 16:30:52 +0000 (09:30 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 28 Sep 2016 09:15:54 +0000 (10:15 +0100)
When changing SDKMACHINE, we may encounter an error forcing us to wipe the TMP folder.
Since only SDK_ARCH is captured in the PN of the crosssdk recipes, changes to SDK_OS
result in conflicts. Eventually we hit the error:

ERROR: ...: The recipe <...>  is trying to install files into a shared area when those files already exist.
The build has stopped as continuing in this scenario WILL break things

This patchset addresses the problem by SDK_SYS as the recipe name suffix instead
of SDK_ARCH.

[YOCTO #9281]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/base.bbclass
meta/conf/distro/include/tcmode-default.inc
meta/recipes-core/glibc/glibc-initial.inc
meta/recipes-core/glibc/glibc.inc
meta/recipes-core/musl/musl.inc
meta/recipes-devtools/binutils/binutils-crosssdk_2.27.bb
meta/recipes-devtools/gcc/gcc-cross-initial.inc
meta/recipes-devtools/gcc/gcc-cross.inc
meta/recipes-devtools/gcc/gcc-crosssdk-initial.inc
meta/recipes-devtools/gcc/gcc-crosssdk.inc
meta/recipes-devtools/gcc/libgcc-initial.inc

index ea0710fe724b3c82eaa736d27092b52d79ab0edf..21957d84a18e1e47560a08c05d621c28b7007cdb 100644 (file)
@@ -485,7 +485,7 @@ python () {
 
         check_license = False if pn.startswith("nativesdk-") else True
         for t in ["-native", "-cross-${TARGET_ARCH}", "-cross-initial-${TARGET_ARCH}",
-              "-crosssdk-${SDK_ARCH}", "-crosssdk-initial-${SDK_ARCH}",
+              "-crosssdk-${SDK_SYS}", "-crosssdk-initial-${SDK_SYS}",
               "-cross-canadian-${TRANSLATED_TARGET_ARCH}"]:
             if pn.endswith(d.expand(t)):
                 check_license = False
index 79855963282b4404a6bb73cd37dddb41cbb91786..ca3c5ec90a5fbeae49b6c10f46283b5bd20cc820 100644 (file)
@@ -9,10 +9,10 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}g++ = "gcc-cross-${TARGET_ARCH}"
 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "gcc-runtime"
 PREFERRED_PROVIDER_gdb = "gdb"
 
-PREFERRED_PROVIDER_virtual/${SDK_PREFIX}binutils-crosssdk ?= "binutils-crosssdk-${SDK_ARCH}"
-PREFERRED_PROVIDER_virtual/${SDK_PREFIX}gcc-initial = "gcc-crosssdk-initial-${SDK_ARCH}"
-PREFERRED_PROVIDER_virtual/${SDK_PREFIX}gcc = "gcc-crosssdk-${SDK_ARCH}"
-PREFERRED_PROVIDER_virtual/${SDK_PREFIX}g++ = "gcc-crosssdk-${SDK_ARCH}"
+PREFERRED_PROVIDER_virtual/${SDK_PREFIX}binutils-crosssdk ?= "binutils-crosssdk-${SDK_SYS}"
+PREFERRED_PROVIDER_virtual/${SDK_PREFIX}gcc-initial = "gcc-crosssdk-initial-${SDK_SYS}"
+PREFERRED_PROVIDER_virtual/${SDK_PREFIX}gcc = "gcc-crosssdk-${SDK_SYS}"
+PREFERRED_PROVIDER_virtual/${SDK_PREFIX}g++ = "gcc-crosssdk-${SDK_SYS}"
 PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = "nativesdk-gcc-runtime"
 
 # Default libc config
@@ -33,8 +33,8 @@ LINUXLIBCVERSION ?= "4.8%"
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-initial-${TARGET_ARCH} ?= "${GCCVERSION}"
-PREFERRED_VERSION_gcc-crosssdk-${SDK_ARCH} ?= "${SDKGCCVERSION}"
-PREFERRED_VERSION_gcc-crosssdk-initial-${SDK_ARCH} ?= "${SDKGCCVERSION}"
+PREFERRED_VERSION_gcc-crosssdk-${SDK_SYS} ?= "${SDKGCCVERSION}"
+PREFERRED_VERSION_gcc-crosssdk-initial-${SDK_SYS} ?= "${SDKGCCVERSION}"
 PREFERRED_VERSION_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-runtime ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-sanitizers ?= "${GCCVERSION}"
index ec21f105d0ec4e01ca13bb80f70ff1a23f958720..2e3bc8104a23e5d09c7d4ec7716ecd690a68f90e 100644 (file)
@@ -5,7 +5,7 @@ PACKAGES = ""
 PACKAGES_DYNAMIC = ""
 
 STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}"
-STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${TARGET_ARCH}"
+STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}"
 TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
 
 do_configure () {
index bf1dccdeb8eb83455f00515de48a0b7aaab28a9f..e85c7044a0a9f4100e08c23f6105d02c0903b049 100644 (file)
@@ -3,7 +3,7 @@ require glibc-ld.inc
 require glibc-testing.inc
 
 STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}"
-STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${TARGET_ARCH}"
+STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}"
 PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:"
 
 TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
index 276b00fdc48596a52ec203bea462738502a971e0..7ed931c6da826f113838d33fe141cf3f0e976c3c 100644 (file)
@@ -17,7 +17,7 @@ TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
 INHIBIT_DEFAULT_DEPS = "1"
 
 STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}"
-STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${TARGET_ARCH}"
+STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}"
 
 
 FILES_SOLIBSDEV = ""
index 788106f9e79f3c18e5d0a738b77c691042250582..62c03d72407bd945e4f4df84951500b176de8b85 100644 (file)
@@ -2,7 +2,7 @@ require binutils-cross_${PV}.bb
 
 inherit crosssdk
 
-PN = "binutils-crosssdk-${TARGET_ARCH}"
+PN = "binutils-crosssdk-${SDK_SYS}"
 
 PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk"
 
index 048b5302be2df8a041e41d9825e9391cd83a6b8a..dcf22710ae977dc5e337783c2b01acb4bf827162 100644 (file)
@@ -77,7 +77,7 @@ do_install () {
 
        # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build
        case ${PN} in
-               *gcc-cross-initial-${TARGET_ARCH}|*gcc-crosssdk-initial-${TARGET_ARCH})
+               *gcc-cross-initial-${TARGET_ARCH}|*gcc-crosssdk-initial-${SDK_SYS})
                        dest=${D}/${includedir}/gcc-build-internal-initial-${TARGET_SYS}
                        hardlinkdir . $dest
                ;;
index c0b8751edecadcb3e5642c244da688d36f54a4fc..87a8de9a8569a181824f6d892051c5685947a17c 100644 (file)
@@ -188,7 +188,7 @@ do_install () {
 
        # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build
        case ${PN} in
-               *gcc-cross-${TARGET_ARCH}|*gcc-crosssdk-${TARGET_ARCH})
+               *gcc-cross-${TARGET_ARCH}|*gcc-crosssdk-${SDK_SYS})
                        dest=${D}/${includedir}/gcc-build-internal-${TARGET_SYS}
                        hardlinkdir . $dest
                ;;
index 7d2599cb6c01a4edbcd4e9425986ce70da2815e0..08eda5d4c7c2a9387c29a827cf4a04adf0f777f5 100644 (file)
@@ -1,6 +1,6 @@
 inherit crosssdk
 
-PN = "gcc-crosssdk-initial-${TARGET_ARCH}"
+PN = "gcc-crosssdk-initial-${SDK_SYS}"
 
 SYSTEMHEADERS = "${SDKPATHNATIVE}${prefix_nativesdk}/include"
 SYSTEMLIBS = "${SDKPATHNATIVE}${base_libdir_nativesdk}/"
index 53f880f39bb5a6c1ebcbb97af4f75469e58f231f..cda292779448dc6a308bd8635908e267b8c09aae 100644 (file)
@@ -1,6 +1,6 @@
 inherit crosssdk
 
-PN = "gcc-crosssdk-${TARGET_ARCH}"
+PN = "gcc-crosssdk-${SDK_SYS}"
 
 SYSTEMHEADERS = "${SDKPATHNATIVE}${prefix_nativesdk}/include"
 SYSTEMLIBS = "${SDKPATHNATIVE}${base_libdir_nativesdk}/"
index 59e8a62e7f3ac5d3c0881952ad0cf798b3b62277..687a8a0b09788f57dfbe7587ab71655773ee2e78 100644 (file)
@@ -5,7 +5,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial"
 LICENSE = "GPL-3.0-with-GCC-exception"
 
 STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}"
-STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${TARGET_ARCH}"
+STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}"
 PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:"
 
 PACKAGES = ""