summaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
Diffstat (limited to 'conf')
-rw-r--r--conf/layer.conf10
-rw-r--r--conf/nonclangable.conf138
2 files changed, 87 insertions, 61 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index fdea56c..19e348b 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -7,7 +7,7 @@ BBFILES += "${LAYERDIR}/recipes*/*/*.bb ${LAYERDIR}/recipes*/*/*.bbappend"
7BBFILE_COLLECTIONS += "clang-layer" 7BBFILE_COLLECTIONS += "clang-layer"
8BBFILE_PATTERN_clang-layer := "^${LAYERDIR}/" 8BBFILE_PATTERN_clang-layer := "^${LAYERDIR}/"
9BBFILE_PRIORITY_clang-layer = "7" 9BBFILE_PRIORITY_clang-layer = "7"
10LAYERSERIES_COMPAT_clang-layer = "zeus dunfell" 10LAYERSERIES_COMPAT_clang-layer = "dunfell hardknott honister"
11LAYERDEPENDS_clang-layer = "core" 11LAYERDEPENDS_clang-layer = "core"
12 12
13BBFILES_DYNAMIC += " \ 13BBFILES_DYNAMIC += " \
@@ -17,6 +17,10 @@ BBFILES_DYNAMIC += " \
17 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \ 17 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
18 networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bb \ 18 networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bb \
19 networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bbappend \ 19 networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bbappend \
20 stm-st-stm32mp:${LAYERDIR}/dynamic-layers/meta-st-stm32mp/recipes-*/*/*.bb \
21 stm-st-stm32mp:${LAYERDIR}/dynamic-layers/meta-st-stm32mp/recipes-*/*/*.bbappend \
22 intel:${LAYERDIR}/dynamic-layers/meta-intel/recipes-*/*/*.bb \
23 intel:${LAYERDIR}/dynamic-layers/meta-intel/*/*/*.bbappend \
20" 24"
21 25
22PREFERRED_PROVIDER_libgcc-initial = "libgcc-initial" 26PREFERRED_PROVIDER_libgcc-initial = "libgcc-initial"
@@ -29,9 +33,7 @@ INHERIT += "clang"
29# Do not include clang in SDK unless user wants to 33# Do not include clang in SDK unless user wants to
30CLANGSDK ??= "0" 34CLANGSDK ??= "0"
31 35
32LLVMVERSION = "10.0.1" 36LLVMVERSION = "12.0.0"
33 37
34require conf/nonclangable.conf 38require conf/nonclangable.conf
35require conf/nonscanable.conf 39require conf/nonscanable.conf
36
37NON_MULTILIB_RECIPES_append = " bcc bpftrace"
diff --git a/conf/nonclangable.conf b/conf/nonclangable.conf
index 6ef16fe..f2bee64 100644
--- a/conf/nonclangable.conf
+++ b/conf/nonclangable.conf
@@ -1,7 +1,4 @@
1#babeltrace2: ELF binary /usr/lib/babeltrace2/plugins/babeltrace-plugin-text.so has relocations in .text [textrel]
2TOOLCHAIN_pn-babeltrace2 = "gcc"
3TOOLCHAIN_pn-u-boot = "gcc" 1TOOLCHAIN_pn-u-boot = "gcc"
4TOOLCHAIN_pn-cpufrequtils = "gcc"
5# crash embeds version of gdb which is not buildable with clang 2# crash embeds version of gdb which is not buildable with clang
6TOOLCHAIN_pn-crash = "gcc" 3TOOLCHAIN_pn-crash = "gcc"
7TOOLCHAIN_pn-elfutils = "gcc" 4TOOLCHAIN_pn-elfutils = "gcc"
@@ -38,6 +35,15 @@ TOOLCHAIN_pn-libgcc = "gcc"
38TOOLCHAIN_pn-libgcc-initial = "gcc" 35TOOLCHAIN_pn-libgcc-initial = "gcc"
39TOOLCHAIN_pn-libgfortran = "gcc" 36TOOLCHAIN_pn-libgfortran = "gcc"
40TOOLCHAIN_pn-libssp-nonshared = "gcc" 37TOOLCHAIN_pn-libssp-nonshared = "gcc"
38
39# Dunfell is not affected by the ell and iwd breakages.
40# Once we update past dunfell, patches to fix it properly
41# can be found in OpenMandriva packages.
42# ell 0.39 introduced nested functions sadly
43#TOOLCHAIN_pn-ell = "gcc"
44# iwd 1.13 introduced nested functions sadly
45#TOOLCHAIN_pn-iwd = "gcc"
46
41#| cargo:warning=/mnt/a/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/libstd-rs/1.27.1-r0/re 47#| cargo:warning=/mnt/a/yoe/build/tmp/work/cortexa7t2hf-neon-vfpv4-yoe-linux-gnueabi/libstd-rs/1.27.1-r0/re
42#cipe-sysroot/usr/include/bits/stdlib.h:90:3: error: "Assumed value of MB_LEN_MAX wrong" 48#cipe-sysroot/usr/include/bits/stdlib.h:90:3: error: "Assumed value of MB_LEN_MAX wrong"
43#| cargo:warning=# error "Assumed value of MB_LEN_MAX wrong" 49#| cargo:warning=# error "Assumed value of MB_LEN_MAX wrong"
@@ -49,8 +55,6 @@ TOOLCHAIN_pn-m4_powerpc = "gcc"
49#TOOLCHAIN_pn-mesa_mipsel = "gcc" 55#TOOLCHAIN_pn-mesa_mipsel = "gcc"
50TOOLCHAIN_pn-mesa_riscv64 = "gcc" 56TOOLCHAIN_pn-mesa_riscv64 = "gcc"
51TOOLCHAIN_pn-mesa_powerpc = "gcc" 57TOOLCHAIN_pn-mesa_powerpc = "gcc"
52# multiple definition of 'mongo::error_details::isNamedCode<0>'
53TOOLCHAIN_pn-mongodb = "gcc"
54# variant-impl.hpp:309:36: error: 'is_variant' does not name a template but is followed by template arguments 58# variant-impl.hpp:309:36: error: 'is_variant' does not name a template but is followed by template arguments
55TOOLCHAIN_pn-omxplayer = "gcc" 59TOOLCHAIN_pn-omxplayer = "gcc"
56# error: return address can be determined only for current frame 60# error: return address can be determined only for current frame
@@ -63,14 +67,13 @@ TOOLCHAIN_pn-prelink = "gcc"
63# Qemu cant run profile tests run during build 67# Qemu cant run profile tests run during build
64# | *** stack smashing detected ***: terminated 68# | *** stack smashing detected ***: terminated
65# | ./pgo-wrapper: line 3: 3372346 Aborted 69# | ./pgo-wrapper: line 3: 3372346 Aborted
66TOOLCHAIN_pn-python3 = "gcc" 70#TOOLCHAIN_pn-python3 = "gcc"
67# has dpkg source which does not compile 71# has dpkg source which does not compile
68TOOLCHAIN_pn-start-stop-daemon = "gcc" 72TOOLCHAIN_pn-start-stop-daemon = "gcc"
69TOOLCHAIN_pn-syslinux = "gcc" 73TOOLCHAIN_pn-syslinux = "gcc"
70TOOLCHAIN_pn-systemtap = "gcc" 74TOOLCHAIN_pn-systemtap = "gcc"
71# v4l-utils uses nested functions 75# v4l-utils uses nested functions
72TOOLCHAIN_pn-v4l-utils = "gcc" 76TOOLCHAIN_pn-v4l-utils = "gcc"
73TOOLCHAIN_pn-valgrind = "gcc"
74# uses C++ which clang does not like 77# uses C++ which clang does not like
75TOOLCHAIN_pn-wvstreams = "gcc" 78TOOLCHAIN_pn-wvstreams = "gcc"
76TOOLCHAIN_pn-wvdial = "gcc" 79TOOLCHAIN_pn-wvdial = "gcc"
@@ -90,16 +93,16 @@ TOOLCHAIN_pn-icu_armv5 = "gcc"
90#../../libgcrypt-1.6.5/mpi/mpih-div.c:98:3: error: invalid use of a cast in a inline asm context requiring an l-value: remove the cast or build with -fheinous-gnu-extensions 93#../../libgcrypt-1.6.5/mpi/mpih-div.c:98:3: error: invalid use of a cast in a inline asm context requiring an l-value: remove the cast or build with -fheinous-gnu-extensions
91TOOLCHAIN_pn-libgcrypt_mips64 = "gcc" 94TOOLCHAIN_pn-libgcrypt_mips64 = "gcc"
92 95
93#| ../../pixman-0.34.0/test/utils-prng.c:131:29: error: cannot convert between vector type '__attribute__((__vector_size__(16 * sizeof(char)))) char' (vector of 16 'char' values) and vector type 'uint8x16' (vector of 16 'uint8_t' values) as implicit conversion would cause truncation 96# 32-bit assembly code in pixman uses gas specific extensions
94#| randdata.vb |= (t.vb >= const_C0#); 97CFLAGS_append_pn-pixman_toolchain-clang_arm = " -fno-integrated-as"
95#| ^ 98# debug information generated by clang 12 confuses the older
96# also see http://lists.llvm.org/pipermail/llvm-dev/2016-October/105997.html 99# external gas version
97TOOLCHAIN_pn-pixman = "gcc" 100DEBUG_FLAGS_remove_pn-pixman_toolchain-clang_arm = "-g"
98 101
99#recipe-sysroot/usr/include/mozjs-60/mozilla/Span.h:634:5: error: statement not allowed in constexpr function 102#recipe-sysroot/usr/include/mozjs-60/mozilla/Span.h:634:5: error: statement not allowed in constexpr function
100#| MOZ_RELEASE_ASSERT(aStart <= len && (aLength == dynamic_extent || 103#| MOZ_RELEASE_ASSERT(aStart <= len && (aLength == dynamic_extent ||
101#| ^ 104#| ^
102TOOLCHAIN_pn-polkit = "gcc" 105#TOOLCHAIN_pn-polkit = "gcc"
103 106
104#| ./ports/linux/pseudo_wrappers.c:80:14: error: use of unknown builtin '__builtin_apply' [-Wimplicit-function-declaration] 107#| ./ports/linux/pseudo_wrappers.c:80:14: error: use of unknown builtin '__builtin_apply' [-Wimplicit-function-declaration]
105#| void *res = __builtin_apply((void (*)()) real_syscall, __builtin_apply_args(), sizeof(long) * 7); 108#| void *res = __builtin_apply((void (*)()) real_syscall, __builtin_apply_args(), sizeof(long) * 7);
@@ -117,9 +120,6 @@ TOOLCHAIN_pn-pulseaudio_aarch64 = "gcc"
117TOOLCHAIN_pn-pulseaudio_armv7ve = "gcc" 120TOOLCHAIN_pn-pulseaudio_armv7ve = "gcc"
118TOOLCHAIN_pn-pulseaudio_armv7a = "gcc" 121TOOLCHAIN_pn-pulseaudio_armv7a = "gcc"
119 122
120# clang++ hangs see https://bugs.llvm.org/show_bug.cgi?id=45134
121DEBUG_FLAGS_remove_pn-sqlite-orm_toolchain-clang = "-g"
122
123#| /usr/src/debug/qemu/2.6.0-r1/qemu-2.6.0/util/bitmap.c:191: undefined reference to `__atomic_fetch_or_4' 123#| /usr/src/debug/qemu/2.6.0-r1/qemu-2.6.0/util/bitmap.c:191: undefined reference to `__atomic_fetch_or_4'
124#| /usr/src/debug/qemu/2.6.0-r1/qemu-2.6.0/util/bitmap.c:210: undefined reference to `__atomic_fetch_or_4' 124#| /usr/src/debug/qemu/2.6.0-r1/qemu-2.6.0/util/bitmap.c:210: undefined reference to `__atomic_fetch_or_4'
125#| libqemuutil.a(bitmap.o): In function `bitmap_test_and_clear_atomic': 125#| libqemuutil.a(bitmap.o): In function `bitmap_test_and_clear_atomic':
@@ -142,6 +142,10 @@ TOOLCHAIN_pn-lttng-ust_riscv64 = "gcc"
142#| ../libffi-3.3-rc0/src/arm/sysv.S:132: Error: selected processor does not support `vldmgt sp,{d0-d7}' in ARM mode 142#| ../libffi-3.3-rc0/src/arm/sysv.S:132: Error: selected processor does not support `vldmgt sp,{d0-d7}' in ARM mode
143TOOLCHAIN_pn-libffi_armeb = "gcc" 143TOOLCHAIN_pn-libffi_armeb = "gcc"
144 144
145# Clang/mips still generates __sync_fetch_and_add_8 instead of __atomic_fetch_add_8 so it can't even use
146# libatomic to provide these functions, therefore can not compile redis on mips
147TOOLCHAIN_pn-redis_mips = "gcc"
148
145CFLAGS_append_pn-liboil_toolchain-clang_x86-64 = " -fheinous-gnu-extensions " 149CFLAGS_append_pn-liboil_toolchain-clang_x86-64 = " -fheinous-gnu-extensions "
146 150
147#io_getevents.c:25:141: error: invalid use of a cast in a inline asm context requiring an l-value: remove the cast or build with -fheinous-gnu-extensions 151#io_getevents.c:25:141: error: invalid use of a cast in a inline asm context requiring an l-value: remove the cast or build with -fheinous-gnu-extensions
@@ -151,10 +155,6 @@ CFLAGS_append_pn-libaio_toolchain-clang_mips = " -fheinous-gnu-extensions"
151#| error: unknown warning option '-Wimplicit-fallthrough=0'; did you mean '-Wimplicit-fallthrough'? [-Werror,-Wunknown-warning-option] 155#| error: unknown warning option '-Wimplicit-fallthrough=0'; did you mean '-Wimplicit-fallthrough'? [-Werror,-Wunknown-warning-option]
152CFLAGS_append_pn-mdadm_toolchain-clang = " -Wno-error=unknown-warning-option" 156CFLAGS_append_pn-mdadm_toolchain-clang = " -Wno-error=unknown-warning-option"
153 157
154#../libffi-3.2.1/src/arm/sysv.S:363:2: error: invalid instruction, did you mean: fldmiax?
155# fldmiadgt ip, {d0-d7}
156CFLAGS_append_pn-libffi_arm_toolchain-clang = " -no-integrated-as"
157
158# ../db-5.3.28/src/mutex/mut_tas.c:150:34: error: unknown directive 158# ../db-5.3.28/src/mutex/mut_tas.c:150:34: error: unknown directive
159#<inline asm>:9:2: note: instantiated into assembly here 159#<inline asm>:9:2: note: instantiated into assembly here
160# .force_thumb 160# .force_thumb
@@ -166,17 +166,6 @@ CFLAGS_append_pn-libffi_arm_toolchain-clang = " -no-integrated-as"
166#| ^ 166#| ^
167CFLAGS_append_pn-directfb_toolchain-clang_arm = " -no-integrated-as" 167CFLAGS_append_pn-directfb_toolchain-clang_arm = " -no-integrated-as"
168 168
169# Disable internal assembler for armv7 since it uses gnu assmebly syntax
170# which should be preprocessed via gcc/compiler
171#
172CFLAGS_append_pn-openssl_toolchain-clang_armv7ve = " -no-integrated-as"
173CFLAGS_append_pn-openssl_toolchain-clang_armv7a = " -no-integrated-as"
174
175#| crypto/bn/bn-mips.S:671:2: error: unknown instruction, did you mean: bgeu, sgtu, tgeu?
176#| sgeu $1,$4,$6
177#| ^
178CC_append_pn-openssl_toolchain-clang_mipsarch = " -no-integrated-as"
179
180CFLAGS_append_pn-userland_toolchain-clang = " -no-integrated-as" 169CFLAGS_append_pn-userland_toolchain-clang = " -no-integrated-as"
181 170
182# libjpeg-turbo-2.0.2/simd/mips/jsimd_dspr2.S 171# libjpeg-turbo-2.0.2/simd/mips/jsimd_dspr2.S
@@ -207,12 +196,27 @@ CFLAGS_append_pn-tinymembench_toolchain-clang_mipsarch = " -no-integrated-as"
207CFLAGS_append_pn-ne10_toolchain-clang_arm = " -no-integrated-as" 196CFLAGS_append_pn-ne10_toolchain-clang_arm = " -no-integrated-as"
208CFLAGS_append_pn-libde265_toolchain-clang_arm = " -no-integrated-as" 197CFLAGS_append_pn-libde265_toolchain-clang_arm = " -no-integrated-as"
209 198
210# :5 : error: unknown directive 199# :5 : error: unknown directive
211#^ 200#^
212# .endfunc 201# .endfunc
213# ^ 202# ^
214CFLAGS_append_pn-libsdl2_toolchain-clang_arm = " -no-integrated-as" 203CFLAGS_append_pn-libsdl2_toolchain-clang_arm = " -no-integrated-as"
215 204
205#2816:2: error: changed section type for .debug_frame, expected: 0x7000001E
206# .section .debug_frame,"",@progbits
207# ^
208#lj_vm.S:2890:2: error: changed section flags for .eh_frame, expected: 0x2
209# .section .eh_frame,"aw",@progbits
210# ^
211CFLAGS_append_pn-luajit_toolchain-clang_mips = " -no-integrated-as"
212
213# Generated asm file can not be compiled with clang assembler due to presence of .0 label
214# and its references
215#| aes-decrypt-internal-2.s:368:1: error: unexpected token at start of statement
216#| .0:
217#| ^
218CFLAGS_append_pn-nettle_toolchain-clang_powerpc64le = " -no-integrated-as"
219
216# regtest.cc:374:39: error: invalid suffix on literal; C++11 requires a 220# regtest.cc:374:39: error: invalid suffix on literal; C++11 requires a
217# space between literal and identifier [-Wreserved-user-defined-literal] 221# space between literal and identifier [-Wreserved-user-defined-literal]
218#| snprintf_func (buf, sizeof(buf), "%"Q"u", x); 222#| snprintf_func (buf, sizeof(buf), "%"Q"u", x);
@@ -236,46 +240,53 @@ TUNE_CCARGS_remove_pn-nfs-utils_toolchain-clang = "-Qunused-arguments"
236 240
237# We want to error out when -msse option is used otherwise it enables sse on non-x86 arches 241# We want to error out when -msse option is used otherwise it enables sse on non-x86 arches
238TUNE_CCARGS_remove_pn-pipewire_toolchain-clang = "-Qunused-arguments" 242TUNE_CCARGS_remove_pn-pipewire_toolchain-clang = "-Qunused-arguments"
243TUNE_CCARGS_remove_pn-tesseract_toolchain-clang = "-Qunused-arguments"
244TUNE_CCARGS_remove_pn-pulseaudio_toolchain-clang = "-Qunused-arguments"
239 245
240#| /usr/src/debug/ruby/2.5.1-r0/build/../ruby-2.5.1/process.c:7073: undefined reference to `__mulodi4' 246#| /usr/src/debug/ruby/2.5.1-r0/build/../ruby-2.5.1/process.c:7073: undefined reference to `__mulodi4'
241#| clang-7: error: linker command failed with exit code 1 (use -v to see invocation) 247#| clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
242COMPILER_RT_pn-ruby_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 248COMPILER_RT_pn-ruby_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
243COMPILER_RT_pn-python3_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 249COMPILER_RT_pn-python3_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
244COMPILER_RT_pn-m4_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 250COMPILER_RT_pn-m4_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
245COMPILER_RT_pn-cpio_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 251COMPILER_RT_pn-cpio_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
246COMPILER_RT_pn-webkitgtk_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 252COMPILER_RT_pn-openssh_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
247COMPILER_RT_pn-wpewebkit_toolchain-clang = "--rtlib=compiler-rt ${UNWINDLIB}" 253COMPILER_RT_pn-webkitgtk_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
248COMPILER_RT_remove_pn-m4_powerpc = "--rtlib=compiler-rt" 254COMPILER_RT_pn-wpewebkit_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
249COMPILER_RT_remove_pn-ruby_powerpc = "--rtlib=compiler-rt" 255COMPILER_RT_pn-python3-numpy_toolchain-clang = "-rtlib=compiler-rt ${UNWINDLIB}"
250COMPILER_RT_remove_pn-webkitgtk_powerpc = "--rtlib=compiler-rt" 256COMPILER_RT_remove_pn-m4_powerpc = "-rtlib=compiler-rt"
251COMPILER_RT_remove_pn-m4_armeb = "--rtlib=compiler-rt" 257COMPILER_RT_remove_pn-ruby_powerpc = "-rtlib=compiler-rt"
252COMPILER_RT_remove_pn-ruby_armeb = "--rtlib=compiler-rt" 258COMPILER_RT_remove_pn-webkitgtk_powerpc = "-rtlib=compiler-rt"
253COMPILER_RT_remove_pn-webkitgtk_armeb = "--rtlib=compiler-rt" 259COMPILER_RT_remove_pn-m4_armeb = "-rtlib=compiler-rt"
260COMPILER_RT_remove_pn-ruby_armeb = "-rtlib=compiler-rt"
261COMPILER_RT_remove_pn-webkitgtk_armeb = "-rtlib=compiler-rt"
262
263# build/lib/libQt5Widgets.so: undefined reference to `__lshrti3'
264# __lshrti3 is missing in libgcc
265COMPILER_RT_pn-qtbase_toolchain-clang_riscv32 = "-rtlib=compiler-rt ${UNWINDLIB}"
254 266
255LDFLAGS_append_pn-gnutls_toolchain-clang_riscv64 = " -latomic" 267LDFLAGS_append_pn-gnutls_toolchain-clang_riscv64 = " -latomic"
256LDFLAGS_append_pn-harfbuzz_toolchain-clang_riscv64 = " -latomic" 268LDFLAGS_append_pn-harfbuzz_toolchain-clang_riscv64 = " -latomic"
257LDFLAGS_append_pn-qtwebengine_toolchain-clang_runtime-gnu_x86 = " -latomic" 269LDFLAGS_append_pn-qtwebengine_toolchain-clang_runtime-gnu_x86 = " -latomic"
270LDFLAGS_append_pn-qemu_toolchain-clang_runtime-gnu_x86 = " -latomic"
258 271
259# glibc is built with gcc and hence encodes some libgcc specific builtins which are not found 272# glibc is built with gcc and hence encodes some libgcc specific builtins which are not found
260# when doing static linking with clang using compiler-rt, so use libgcc 273# when doing static linking with clang using compiler-rt, so use libgcc
261# undefined reference to `__unordtf2' 274# undefined reference to `__unordtf2'
262COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_x86 = "--rtlib=libgcc" 275COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_x86 = "-rtlib=libgcc"
263COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_x86 = "--rtlib=libgcc" 276COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_x86 = "-rtlib=libgcc"
264COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_x86 = "--rtlib=libgcc" 277COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_x86 = "-rtlib=libgcc"
265COMPILER_RT_pn-tsocks_libc-glibc_toolchain-clang_x86 = "--rtlib=libgcc" 278COMPILER_RT_pn-tsocks_libc-glibc_toolchain-clang_x86 = "-rtlib=libgcc"
266COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_x86-64 = "--rtlib=libgcc" 279COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_x86-64 = "-rtlib=libgcc"
267COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_x86-64 = "--rtlib=libgcc" 280COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_x86-64 = "-rtlib=libgcc"
268COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_x86-64 = "--rtlib=libgcc" 281COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_x86-64 = "-rtlib=libgcc"
269COMPILER_RT_pn-tsocks_libc-glibc_toolchain-clang_x86-64 = "--rtlib=libgcc" 282COMPILER_RT_pn-tsocks_libc-glibc_toolchain-clang_x86-64 = "-rtlib=libgcc"
270 283
271#(unwind.o): in function `__pthread_unwind': 284#(unwind.o): in function `__pthread_unwind':
272#/usr/src/debug/glibc/2.29-r0/git/nptl/unwind.c:121: undefined reference to `_Unwind_ForcedUnwind' 285#/usr/src/debug/glibc/2.29-r0/git/nptl/unwind.c:121: undefined reference to `_Unwind_ForcedUnwind'
273#clang-8: error: linker command failed with exit code 1 (use -v to see invocation) 286#clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
274COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_arm = "--rtlib=libgcc" 287COMPILER_RT_pn-libc-bench_libc-glibc_toolchain-clang_arm = "-rtlib=libgcc"
275COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_arm = "--rtlib=libgcc" 288COMPILER_RT_pn-aufs-util_libc-glibc_toolchain-clang_arm = "-rtlib=libgcc"
276COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_arm = "--rtlib=libgcc" 289COMPILER_RT_pn-libhugetlbfs_libc-glibc_toolchain-clang_arm = "-rtlib=libgcc"
277
278RUNTIME_pn-gerbera_toolchain-clang = "llvm"
279 290
280# Uses gcc for native tools, e.g. nsinstall and passes clang options which fails so 291# Uses gcc for native tools, e.g. nsinstall and passes clang options which fails so
281# let same compiler ( gcc or clang) be native/cross compiler 292# let same compiler ( gcc or clang) be native/cross compiler
@@ -291,3 +302,16 @@ BUILD_CC_pn-nss_toolchain-clang = "clang"
291CXXFLAGS_append_pn-apt_toolchain-clang = " -Wno-c++11-narrowing" 302CXXFLAGS_append_pn-apt_toolchain-clang = " -Wno-c++11-narrowing"
292lcl_maybe_fortify_pn-apt_toolchain-clang = "" 303lcl_maybe_fortify_pn-apt_toolchain-clang = ""
293 304
305# LTO
306# Seems to use symver ASMs see https://stackoverflow.com/questions/46304742/how-to-combine-lto-with-symbol-versioning
307# lib/puny_encode.c:136: multiple definition of `_idn2_punycode_encode'
308LTO_pn-libidn2_toolchain-clang = ""
309
310#libcairo.so: undefined reference to pthread_mutexattr_init [--no-allow-shlib-undefined]
311LTO_pn-cairo_toolchain-clang = ""
312
313# Hardcoded gcc use in makefiles
314TOOLCHAIN_pn-u-boot-stm32mp = "gcc"
315TOOLCHAIN_pn-tf-a-stm32mp = "gcc"
316TOOLCHAIN_pn-tf-a-stm32mp-serialboot = "gcc"
317TOOLCHAIN_pn-u-boot-seco-imx = "gcc"