summaryrefslogtreecommitdiffstats
path: root/classes
diff options
context:
space:
mode:
authorSigned-off-by: Martin Jansa <Martin.Jansa@gmail.com>2021-08-02 09:45:55 -0700
committerKhem Raj <raj.khem@gmail.com>2021-08-03 10:00:28 -0700
commit17737cc4ecd3aea2c978bf83e283bcb08d097487 (patch)
treea4386a37907d9110572105af80ebe5a1c5bf3819 /classes
parent527f628b7d9bbfe8d3fbe743e876d30c4545a71a (diff)
downloadmeta-clang-17737cc4ecd3aea2c978bf83e283bcb08d097487.tar.gz
meta-clang: Convert to new override syntax
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'classes')
-rw-r--r--classes/clang.bbclass102
-rw-r--r--classes/scan-build.bbclass12
2 files changed, 57 insertions, 57 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index e642d0d..8825c15 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -1,90 +1,90 @@
1# Add the necessary override 1# Add the necessary override
2CCACHE_COMPILERCHECK_toolchain-clang ?= "%compiler% -v" 2CCACHE_COMPILERCHECK:toolchain-clang ?= "%compiler% -v"
3HOST_CC_ARCH_prepend_toolchain-clang = "-target ${HOST_SYS} " 3HOST_CC_ARCH:prepend:toolchain-clang = "-target ${HOST_SYS} "
4CC_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 4CC:toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
5CXX_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 5CXX:toolchain-clang = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
6CPP_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} -E" 6CPP:toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} -E"
7CCLD_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 7CCLD:toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
8RANLIB_toolchain-clang = "${HOST_PREFIX}llvm-ranlib" 8RANLIB:toolchain-clang = "${HOST_PREFIX}llvm-ranlib"
9AR_toolchain-clang = "${HOST_PREFIX}llvm-ar" 9AR:toolchain-clang = "${HOST_PREFIX}llvm-ar"
10NM_toolchain-clang = "${HOST_PREFIX}llvm-nm" 10NM:toolchain-clang = "${HOST_PREFIX}llvm-nm"
11 11
12LTO_toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'thin-lto', '-flto=thin', '-flto -fuse-ld=lld', d)}" 12LTO:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'thin-lto', '-flto=thin', '-flto -fuse-ld=lld', d)}"
13PACKAGE_DEBUG_SPLIT_STYLE_toolchain-clang = "debug-without-src" 13PACKAGE_DEBUG_SPLIT_STYLE:toolchain-clang = "debug-without-src"
14 14
15COMPILER_RT ??= "" 15COMPILER_RT ??= ""
16COMPILER_RT_class-native = "-rtlib=libgcc ${UNWINDLIB}" 16COMPILER_RT:class-native = "-rtlib=libgcc ${UNWINDLIB}"
17COMPILER_RT_powerpc = "-rtlib=libgcc ${UNWINDLIB}" 17COMPILER_RT:powerpc = "-rtlib=libgcc ${UNWINDLIB}"
18COMPILER_RT_armeb = "-rtlib=libgcc ${UNWINDLIB}" 18COMPILER_RT:armeb = "-rtlib=libgcc ${UNWINDLIB}"
19COMPILER_RT_libc-klibc = "-rtlib=libgcc ${UNWINDLIB}" 19COMPILER_RT_libc-klibc = "-rtlib=libgcc ${UNWINDLIB}"
20 20
21UNWINDLIB ??= "" 21UNWINDLIB ??= ""
22UNWINDLIB_class-native = "--unwindlib=libgcc" 22UNWINDLIB:class-native = "--unwindlib=libgcc"
23UNWINDLIB_powerpc = "--unwindlib=libgcc" 23UNWINDLIB:powerpc = "--unwindlib=libgcc"
24UNWINDLIB_armeb = "--unwindlib=libgcc" 24UNWINDLIB:armeb = "--unwindlib=libgcc"
25UNWINDLIB_libc-klibc = "--unwindlib=libgcc" 25UNWINDLIB_libc-klibc = "--unwindlib=libgcc"
26 26
27LIBCPLUSPLUS ??= "" 27LIBCPLUSPLUS ??= ""
28 28
29CXXFLAGS_append_toolchain-clang = " ${LIBCPLUSPLUS}" 29CXXFLAGS:append:toolchain-clang = " ${LIBCPLUSPLUS}"
30LDFLAGS_append_toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}" 30LDFLAGS:append:toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}"
31 31
32TUNE_CCARGS_remove_toolchain-clang = "-meb" 32TUNE_CCARGS:remove:toolchain-clang = "-meb"
33TUNE_CCARGS_remove_toolchain-clang = "-mel" 33TUNE_CCARGS:remove:toolchain-clang = "-mel"
34TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}" 34TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}"
35 35
36# Clang does not yet support big.LITTLE performance tunes, so use the LITTLE for tunes 36# Clang does not yet support big.LITTLE performance tunes, so use the LITTLE for tunes
37TUNE_CCARGS_remove_toolchain-clang = "-mcpu=cortex-a57.cortex-a53 -mcpu=cortex-a72.cortex-a53 -mcpu=cortex-a15.cortex-a7 -mcpu=cortex-a17.cortex-a7 -mcpu=cortex-a72.cortex-a35 -mcpu=cortex-a73.cortex-a53 -mcpu=cortex-a75.cortex-a55 -mcpu=cortex-a76.cortex-a55" 37TUNE_CCARGS:remove:toolchain-clang = "-mcpu=cortex-a57.cortex-a53 -mcpu=cortex-a72.cortex-a53 -mcpu=cortex-a15.cortex-a7 -mcpu=cortex-a17.cortex-a7 -mcpu=cortex-a72.cortex-a35 -mcpu=cortex-a73.cortex-a53 -mcpu=cortex-a75.cortex-a55 -mcpu=cortex-a76.cortex-a55"
38TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa53 cortexa57-cortexa53 cortexa73-cortexa53", " -mcpu=cortex-a53", "", d)}" 38TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa53 cortexa57-cortexa53 cortexa73-cortexa53", " -mcpu=cortex-a53", "", d)}"
39TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa15-cortexa7 cortexa17-cortexa7", " -mcpu=cortex-a7", "", d)}" 39TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa15-cortexa7 cortexa17-cortexa7", " -mcpu=cortex-a7", "", d)}"
40TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa35", " -mcpu=cortex-a35", "", d)}" 40TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa35", " -mcpu=cortex-a35", "", d)}"
41TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa75-cortex-a55 cortexa76-cortex-a55", " -mcpu=cortex-a55", "", d)}" 41TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa75-cortex-a55 cortexa76-cortex-a55", " -mcpu=cortex-a55", "", d)}"
42 42
43# Clang does not support octeontx2 processor 43# Clang does not support octeontx2 processor
44TUNE_CCARGS_remove_toolchain-clang = "-mcpu=octeontx2" 44TUNE_CCARGS:remove:toolchain-clang = "-mcpu=octeontx2"
45 45
46# LLD does not yet support relaxation for RISCV e.g. https://reviews.freebsd.org/D25210 46# LLD does not yet support relaxation for RISCV e.g. https://reviews.freebsd.org/D25210
47TUNE_CCARGS_append_toolchain-clang_riscv32 = " -mno-relax" 47TUNE_CCARGS:append:toolchain-clang:riscv32 = " -mno-relax"
48TUNE_CCARGS_append_toolchain-clang_riscv64 = " -mno-relax" 48TUNE_CCARGS:append:toolchain-clang:riscv64 = " -mno-relax"
49 49
50TUNE_CCARGS_remove_toolchain-clang_powerpc = "-mhard-float" 50TUNE_CCARGS:remove:toolchain-clang:powerpc = "-mhard-float"
51TUNE_CCARGS_remove_toolchain-clang_powerpc = "-mno-spe" 51TUNE_CCARGS:remove:toolchain-clang:powerpc = "-mno-spe"
52 52
53TUNE_CCARGS_append_toolchain-clang = " -Qunused-arguments" 53TUNE_CCARGS:append:toolchain-clang = " -Qunused-arguments"
54TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64 = " -mlong-double-64" 54TUNE_CCARGS:append:toolchain-clang:libc-musl:powerpc64 = " -mlong-double-64"
55TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64le = " -mlong-double-64" 55TUNE_CCARGS:append:toolchain-clang:libc-musl:powerpc64le = " -mlong-double-64"
56# usrmerge workaround 56# usrmerge workaround
57TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains("DISTRO_FEATURES", "usrmerge", " --dyld-prefix=/usr", "", d)}" 57TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains("DISTRO_FEATURES", "usrmerge", " --dyld-prefix=/usr", "", d)}"
58 58
59LDFLAGS_append_toolchain-clang_class-nativesdk_x86-64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-x86-64.so.2" 59LDFLAGS:append:toolchain-clang:class-nativesdk:x86-64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-x86-64.so.2"
60LDFLAGS_append_toolchain-clang_class-nativesdk_x86 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux.so.2" 60LDFLAGS:append:toolchain-clang:class-nativesdk:x86 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux.so.2"
61LDFLAGS_append_toolchain-clang_class-nativesdk_aarch64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-aarch64.so.1" 61LDFLAGS:append:toolchain-clang:class-nativesdk:aarch64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-aarch64.so.1"
62 62
63LDFLAGS_toolchain-clang_class-nativesdk = "${BUILDSDK_LDFLAGS} \ 63LDFLAGS:toolchain-clang:class-nativesdk = "${BUILDSDK_LDFLAGS} \
64 -Wl,-rpath-link,${STAGING_LIBDIR}/.. \ 64 -Wl,-rpath-link,${STAGING_LIBDIR}/.. \
65 -Wl,-rpath,${libdir}/.. " 65 -Wl,-rpath,${libdir}/.. "
66 66
67# Enable lld globally" 67# Enable lld globally"
68LDFLAGS_append_toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=lld', '', d)}" 68LDFLAGS:append:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=lld', '', d)}"
69 69
70# choose between 'gcc' 'clang' an empty '' can be used as well 70# choose between 'gcc' 'clang' an empty '' can be used as well
71TOOLCHAIN ??= "gcc" 71TOOLCHAIN ??= "gcc"
72# choose between 'gnu' 'llvm' 72# choose between 'gnu' 'llvm'
73RUNTIME ??= "gnu" 73RUNTIME ??= "gnu"
74#RUNTIME_toolchain-gcc = "gnu" 74#RUNTIME_toolchain-gcc = "gnu"
75RUNTIME_armeb = "gnu" 75RUNTIME:armeb = "gnu"
76 76
77TOOLCHAIN_class-native = "gcc" 77TOOLCHAIN:class-native = "gcc"
78TOOLCHAIN_class-nativesdk = "gcc" 78TOOLCHAIN:class-nativesdk = "gcc"
79TOOLCHAIN_class-cross-canadian = "gcc" 79TOOLCHAIN:class-cross-canadian = "gcc"
80TOOLCHAIN_class-crosssdk = "gcc" 80TOOLCHAIN:class-crosssdk = "gcc"
81TOOLCHAIN_class-cross = "gcc" 81TOOLCHAIN:class-cross = "gcc"
82 82
83OVERRIDES =. "${@['', 'toolchain-${TOOLCHAIN}:']['${TOOLCHAIN}' != '']}" 83OVERRIDES =. "${@['', 'toolchain-${TOOLCHAIN}:']['${TOOLCHAIN}' != '']}"
84OVERRIDES =. "${@['', 'runtime-${RUNTIME}:']['${RUNTIME}' != '']}" 84OVERRIDES =. "${@['', 'runtime-${RUNTIME}:']['${RUNTIME}' != '']}"
85OVERRIDES[vardepsexclude] += "TOOLCHAIN RUNTIME" 85OVERRIDES[vardepsexclude] += "TOOLCHAIN RUNTIME"
86 86
87#DEPENDS_append_toolchain-clang_class-target = " clang-cross-${TARGET_ARCH} " 87#DEPENDS_append_toolchain-clang:class-target = " clang-cross-${TARGET_ARCH} "
88#DEPENDS_remove_toolchain-clang_allarch = "clang-cross-${TARGET_ARCH}" 88#DEPENDS_remove_toolchain-clang_allarch = "clang-cross-${TARGET_ARCH}"
89 89
90def clang_base_deps(d): 90def clang_base_deps(d):
@@ -108,8 +108,8 @@ def clang_base_deps(d):
108 return ret 108 return ret
109 return "" 109 return ""
110 110
111BASE_DEFAULT_DEPS_toolchain-clang_class-target = "${@clang_base_deps(d)}" 111BASE_DEFAULT_DEPS:toolchain-clang:class-target = "${@clang_base_deps(d)}"
112BASE_DEFAULT_DEPS_append_class-native_toolchain-clang_runtime-llvm = " libcxx-native compiler-rt-native" 112BASE_DEFAULT_DEPS:append:class-native:toolchain-clang_runtime-llvm = " libcxx-native compiler-rt-native"
113 113
114cmake_do_generate_toolchain_file_append_toolchain-clang () { 114cmake_do_generate_toolchain_file_append_toolchain-clang () {
115 cat >> ${WORKDIR}/toolchain.cmake <<EOF 115 cat >> ${WORKDIR}/toolchain.cmake <<EOF
diff --git a/classes/scan-build.bbclass b/classes/scan-build.bbclass
index 9c0c742..2494ccd 100644
--- a/classes/scan-build.bbclass
+++ b/classes/scan-build.bbclass
@@ -4,11 +4,11 @@
4EXTRA_ANALYZER_OPTIONS += "-analyze-headers" 4EXTRA_ANALYZER_OPTIONS += "-analyze-headers"
5EXTRA_ANALYZER_OPTIONS += "--force-analyze-debug-code" 5EXTRA_ANALYZER_OPTIONS += "--force-analyze-debug-code"
6SCAN_BUILD ??= "1" 6SCAN_BUILD ??= "1"
7SCAN_BUILD_class-native = "" 7SCAN_BUILD:class-native = ""
8SCAN_BUILD_class-nativesdk = "" 8SCAN_BUILD:class-nativesdk = ""
9SCAN_BUILD_class-cross = "" 9SCAN_BUILD:class-cross = ""
10SCAN_BUILD_class-crosssdk = "" 10SCAN_BUILD:class-crosssdk = ""
11SCAN_BUILD_class-cross-canadian = "" 11SCAN_BUILD:class-cross-canadian = ""
12 12
13#CLANG_SCAN_SERVER_IP ??= "127.0.0.1" 13#CLANG_SCAN_SERVER_IP ??= "127.0.0.1"
14CLANG_SCAN_SERVER_IP ??= "10.0.0.10" 14CLANG_SCAN_SERVER_IP ??= "10.0.0.10"
@@ -16,7 +16,7 @@ CLANG_SCAN_PORT ??= "8181"
16SCAN_RESULTS_DIR ?= "${TMPDIR}/static-scan/${PN}" 16SCAN_RESULTS_DIR ?= "${TMPDIR}/static-scan/${PN}"
17 17
18CCSCAN ?= "${HOST_PREFIX}${TOOLCHAIN}" 18CCSCAN ?= "${HOST_PREFIX}${TOOLCHAIN}"
19CXXSCAN_toolchain-clang ?= "${HOST_PREFIX}clang++" 19CXXSCAN:toolchain-clang ?= "${HOST_PREFIX}clang++"
20CXXSCAN_toolchain-gcc ?= "${HOST_PREFIX}g++" 20CXXSCAN_toolchain-gcc ?= "${HOST_PREFIX}g++"
21 21
22do_scanbuild() { 22do_scanbuild() {