summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-09-13 00:21:28 -0700
committerKhem Raj <raj.khem@gmail.com>2020-09-13 15:04:45 -0700
commite47ed0398fdaeee872cea9990117db31baede1a4 (patch)
treef5305541c0d3b2985a2c656c161cc7ea95ad4bd4
parent88165d2ddd97d83e532ce049acd93360f62ac3ab (diff)
downloadmeta-clang-e47ed0398fdaeee872cea9990117db31baede1a4.tar.gz
meta-environment-ext: Add bbappend to insert clang variables into env
This helps defining CLANG* env vars in extensible SDK Fixes Issue #370 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--recipes-core/meta/clang-environment.inc19
-rw-r--r--recipes-core/meta/meta-environment-extsdk.bbappend3
-rw-r--r--recipes-core/meta/meta-environment.bbappend20
3 files changed, 24 insertions, 18 deletions
diff --git a/recipes-core/meta/clang-environment.inc b/recipes-core/meta/clang-environment.inc
new file mode 100644
index 0000000..725a431
--- /dev/null
+++ b/recipes-core/meta/clang-environment.inc
@@ -0,0 +1,19 @@
1export TARGET_CLANGCC_ARCH = "${TARGET_CC_ARCH}"
2TARGET_CLANGCC_ARCH_remove = "-mthumb-interwork"
3TARGET_CLANGCC_ARCH_remove = "-mmusl"
4TARGET_CLANGCC_ARCH_remove = "-muclibc"
5TARGET_CLANGCC_ARCH_remove = "-meb"
6TARGET_CLANGCC_ARCH_remove = "-mel"
7TARGET_CLANGCC_ARCH_append = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}"
8TARGET_CLANGCC_ARCH_remove_powerpc = "-mhard-float"
9TARGET_CLANGCC_ARCH_remove_powerpc = "-mno-spe"
10
11create_sdk_files_append() {
12 script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
13 if ${@bb.utils.contains('CLANGSDK', '1', 'true', 'false', d)}; then
14 echo 'export CLANGCC="${TARGET_PREFIX}clang ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
15 echo 'export CLANGCXX="${TARGET_PREFIX}clang++ ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
16 echo 'export CLANGCPP="${TARGET_PREFIX}clang -E ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
17 echo 'export CLANG_TIDY_EXE="${TARGET_PREFIX}clang-tidy ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
18 fi
19}
diff --git a/recipes-core/meta/meta-environment-extsdk.bbappend b/recipes-core/meta/meta-environment-extsdk.bbappend
new file mode 100644
index 0000000..e867074
--- /dev/null
+++ b/recipes-core/meta/meta-environment-extsdk.bbappend
@@ -0,0 +1,3 @@
1FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
2
3require clang-environment.inc
diff --git a/recipes-core/meta/meta-environment.bbappend b/recipes-core/meta/meta-environment.bbappend
index 725a431..e867074 100644
--- a/recipes-core/meta/meta-environment.bbappend
+++ b/recipes-core/meta/meta-environment.bbappend
@@ -1,19 +1,3 @@
1export TARGET_CLANGCC_ARCH = "${TARGET_CC_ARCH}" 1FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
2TARGET_CLANGCC_ARCH_remove = "-mthumb-interwork"
3TARGET_CLANGCC_ARCH_remove = "-mmusl"
4TARGET_CLANGCC_ARCH_remove = "-muclibc"
5TARGET_CLANGCC_ARCH_remove = "-meb"
6TARGET_CLANGCC_ARCH_remove = "-mel"
7TARGET_CLANGCC_ARCH_append = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}"
8TARGET_CLANGCC_ARCH_remove_powerpc = "-mhard-float"
9TARGET_CLANGCC_ARCH_remove_powerpc = "-mno-spe"
10 2
11create_sdk_files_append() { 3require clang-environment.inc
12 script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
13 if ${@bb.utils.contains('CLANGSDK', '1', 'true', 'false', d)}; then
14 echo 'export CLANGCC="${TARGET_PREFIX}clang ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
15 echo 'export CLANGCXX="${TARGET_PREFIX}clang++ ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
16 echo 'export CLANGCPP="${TARGET_PREFIX}clang -E ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
17 echo 'export CLANG_TIDY_EXE="${TARGET_PREFIX}clang-tidy ${TARGET_CLANGCC_ARCH} --sysroot=$SDKTARGETSYSROOT"' >> $script
18 fi
19}