aboutsummaryrefslogtreecommitdiff
path: root/meta-linaro-toolchain/conf/distro
diff options
context:
space:
mode:
authorKoen Kooi <koen.kooi@linaro.org>2014-01-22 09:50:12 +0000
committerLinaro Code Review <review@review.linaro.org>2014-01-22 09:50:12 +0000
commitc4e910ff385a7e3c862159689e2c73678d8e594e (patch)
tree414ab8983e8395856c0f5b21aaac40121a39f513 /meta-linaro-toolchain/conf/distro
parent6e9ff6d0b1f9bdf3ad1e2938e970aa779bb45e56 (diff)
parentcda1269ee7f271cb8559c2961ea96b82128dc762 (diff)
Merge "external-linaro-toolchain: fix No GNU_HASH in the elf binary QA Issue"
Diffstat (limited to 'meta-linaro-toolchain/conf/distro')
-rw-r--r--meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc27
1 files changed, 27 insertions, 0 deletions
diff --git a/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc b/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
index ed00a002..1d9fd59c 100644
--- a/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
+++ b/meta-linaro-toolchain/conf/distro/include/tcmode-external-linaro.inc
@@ -46,6 +46,33 @@ DISTRO_FEATURES_LIBC = "ipv4 ipv6 libc-backtrace libc-big-macros libc-bsd libc-c
ENABLE_BINARY_LOCALE_GENERATION = "0"
GLIBC_INTERNAL_USE_BINARY_LOCALE = "precompiled"
+ERROR_QA[type] ?= "list"
+python toolchain_metadata_setup () {
+ import subprocess
+ if not isinstance(e, bb.event.ConfigParsed):
+ return
+
+ d = e.data
+ l = d.createCopy()
+ l.finalize()
+ oe_import(l)
+
+ external_toolchain = l.getVar('EXTERNAL_TOOLCHAIN', True)
+ if not external_toolchain or external_toolchain == 'UNDEFINED':
+ bb.fatal("Error: EXTERNAL_TOOLCHAIN must be set to the path to your linaro toolchain")
+
+ if not os.path.exists(external_toolchain):
+ bb.fatal("Error: EXTERNAL_TOOLCHAIN path '%s' does not exist" % external_toolchain)
+
+ # The external toolchain may not have been built with the oe-core preferred
+ # gnu hash setting, so ensure that the corresponding sanity check is not an error.
+ error_qa = oe.data.typed_value('ERROR_QA', l)
+ if 'ldflags' in error_qa:
+ error_qa.remove('ldflags')
+ d.setVar('ERROR_QA', ' '.join(error_qa))
+}
+addhandler toolchain_metadata_setup
+
def populate_toolchain_links(d):
import errno
import os