summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* jack: Use gcc to build for 32bit archesKhem Raj2023-09-081-0/+6
| | | | | | | | | | | | | | | | Latest jack does not build with clang-13 for 32bit arches | In file included from ../git/common/JackFreewheelDriver.cpp:23: | ../git/common/JackEngineControl.h:67:5: error: requested alignment is less than minimum alignment of 8 for type 'Jack::JackTransportEngine' | alignas(UInt32) JackTransportEngine fTransport; | ^ | ../git/common/JackEngineControl.h:89:5: error: requested alignment is less than minimum alignment of 8 for type 'Jack::JackFrameTimer' | alignas(UInt32) JackFrameTimer fFrameTimer; | ^ | 2 errors generated. Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit e4978cc3ef008c69a49295dc8bc997b8291f6b11)
* nonclangable.conf: Convert remaining overrides to new syntaxKhem Raj2023-09-081-13/+13
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit d2a30f0fd7377c1e19c778dc6b82dca4fa21c0d4)
* clang.bbclass: Convert libc-klibc override to new syntaxKhem Raj2023-09-081-1/+1
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 5b30d620ba40f6d4176adf668139404b97003daa)
* recipes: Fix remaining override conversionKhem Raj2023-09-083-5/+5
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 1fbf558d6ff699ae0c8b60ad8313515367e83898)
* Manually finish conversionMartin Jansa2023-09-083-6/+6
| | | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 953591e89fba92501cf421adf448aa69caa12e14)
* meta-clang: Convert to new override syntaxSigned-off-by: Martin Jansa2023-09-0842-420/+420
| | | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 17737cc4ecd3aea2c978bf83e283bcb08d097487)
* clang: Update to latest 13.x branchKhem Raj2023-09-081-1/+1
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 527f628b7d9bbfe8d3fbe743e876d30c4545a71a)
* lvm2,libdevmapper: Use gcc to compileKhem Raj2023-09-081-0/+5
| | | | | | | | | | | | | clang13 based builds are failing during postprocessing Mismatch between symbols in shared library and lists in .exported_symbols.* files: dm_bit_get_prev | dm_config_clone_node ... dm_udev_wait | make[1]: *** [../libdm/make.tmpl:511: .export.sym] Error 1 Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 17c9d4406c725fffe24eddb7a6d23228f3bdea94)
* Revert "mesa: Use gcc on aarch64"Khem Raj2023-09-081-3/+0
| | | | | | This reverts commit 314a7014e3abb9ef297aa293c2e56ad916c2dc84. (cherry picked from commit b16f6862259fac7c193cd3e633f4250ae878bb38)
* compiler-rt,libcxx: Fix native builds when using RUNTIME=llvmKhem Raj2023-09-082-0/+7
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit e85ba2ec1b2aebbf66ac48f9bd43c22f23a8fcc2)
* clang: Switch to 13.x branchKhem Raj2023-09-081-2/+2
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 82fdd8d7bf4bcd77fd52583400803224efd7e9f2)
* libcxx: Explicitly set LLVM_DEFAULT_TARGET_TRIPLEKhem Raj2023-09-081-0/+2
| | | | | | | | | | This helps during cross-compile as new clang expects this to be set or else it deduces it and that deduction can go wrong. See commit 395271ad11b8c233db1a4e0e6a76aa52e93e5aec in clang repo Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit b224c4148f46c4dd326d2b72a9c1d55c364ed48f)
* mesa: Use gcc on aarch64Khem Raj2023-09-081-0/+3
| | | | | | | | clang master/13.x has started segfaulting while building mesa, until it is fixed upstream lets switch to using gcc for mesa Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 314a7014e3abb9ef297aa293c2e56ad916c2dc84)
* libclc: Drop using -cl-no-stdincKhem Raj2023-09-081-1/+0
| | | | | | | This flag is no longer needed with latest clang-13 Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 5e3f7c2fd647ae9552a19f679f37260fc5ebecff)
* clang: Upgrade to latest on trunk/13.0Khem Raj2023-09-081-1/+1
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit c6237ecf3e36eea143607a2cd7164c9eba70d466)
* clang: Depend on clang runtime when using RUNTIME = "llvm" for native packagesKhem Raj2023-09-081-0/+1
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 77394fabd1fee7f4ea3a9358dfba7e94e6a98e8d)
* clang: fix do_package error when multilib enabledChangqing Li2023-09-081-2/+2
| | | | | | | | | | After enable multilib, libdir is /usr/lib64, but in llvm's CMakelist.txt, the install path is hardcode as /usr/lib eg: ${CMAKE_BINARY_DIR}/lib/libscanbuild/resources/${resource} Signed-off-by: Changqing Li <changqing.li@windriver.com> (cherry picked from commit f42c4297dde21787ee6873f33636617e1d562798)
* gnutls: Disable integrated assembler on aarch64Khem Raj2023-09-081-0/+3
| | | | | | | | integrated assembler crashes latest clang on aarch64, so lets disable it for now Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 9d89acd175067a828313b8b2a215e6f7595f61b5)
* clang: Update to latest on 13.0.0/trunkKhem Raj2023-09-0838-193/+83
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 81119d8315050c422872c918bb576239ba71bf05)
* clang: drop git suffix from version variablesChangqing Li2023-09-082-0/+71
| | | | | | | | | | | | other recipe like intel-graphics-compiler, config failed with below error: [IGC] Could not find the LLVM dylib. Aborting. with a suffix in library name make other recipe cannot found it. Backport a patch from 12.0.0 to fix this. Signed-off-by: Changqing Li <changqing.li@windriver.com> (cherry picked from commit 95c264e9bbb36eb0ea043c2f016ccb1334d5396c)
* libcxx: Fix native buildKhem Raj2023-09-082-15/+20
| | | | | | | | | | | | | Use libgcc with clang-native to compile it Fixes #465 Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 4d066667c3cbba3b88d2f8d6c5640f5f793d10b4) Conflicts: - recipes-devtools/clang/libcxx_git.bb: Commit 93552c79eed5daa44a24bf4b7a063a2ade739e97 had some of the changes already.
* openmp: Fix build on non-x86 targetsKhem Raj2023-09-082-0/+122
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit b9c9325d65fdcc6a1bfdb15b538c7454894ce15f)
* spirv-llvm-translator: Update to latest trunkKhem Raj2023-09-081-1/+1
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 9c84711bbf8ff21e4276fb59d0e858fc3983155e)
* clang: Update to latest on main/13.0 lineKhem Raj2023-09-082-1/+3
| | | | | | | Package new content for scanbuild and libear Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 50e25bfa72a14b2b156964828995873fdc70da60)
* spirv-llvm-translator: Remove a trailing slash from SRC_URIRobert Yang2023-09-081-1/+1
| | | | | | | | | | | The trailing slash caused the mirror name endswith a dot which looks strange: github.com.KhronosGroup.SPIRV-LLVM-Translator. The slash is not needed, so remove it. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> (cherry picked from commit 5455c65e37bd0e881aad8fc318beb6d0a4469703)
* clang: Update to latest master/13.0Khem Raj2023-09-0837-93/+51
| | | | | | | Drop 0024-compiler-rt-Include-stddef.h.patch its accepted upstream Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 2b5f122e57697b972bc1b65ea7dbb015a9303d11)
* clang: Upgrade to latest on main/13.0 branchKhem Raj2023-09-0837-59/+106
| | | | | | | | Fix compiler-rt build on armv6 reported in https://github.com/YoeDistro/yoe-distro/issues/555 Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 23729bb8200838f3e0d7a73510cf41a05256ed3c)
* Use libgcc instead of compiler-rt on klibc appsKhem Raj2023-09-081-0/+2
| | | | | | | | | | | | | | klibc does not provide libssp functions e.g. __stack_chk_guard and __stack_chk_guard which it expects from libc and compiler-rt code tend to use these functions, so when using compiler-rt it ends up with undefined symbols e.g. /usr/lib/clang/13.0.0/lib/linux/libclang_rt.builtins-armhf.a(divmoddi4.c.o): in function `__divmoddi4': divmoddi4.c:(.text+0x70): undefined reference to `__stack_chk_fail' arm-yoe-linux-gnueabi-ld.bfd: divmoddi4.c:(.text+0x74): undefined reference to `__stack_chk_guard' Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit bc2b5e4b874968745fdcfbcea43e2eb8eafa592e)
* aufs-util,libhugetlbfs,libc-bench: Use libgcc unwinder on glibc/armKhem Raj2023-09-081-2/+3
| | | | | | | | | these packages do static linking in parts and when libc is glibc then it has linked in some portions of libgcc since we can not use clang to compile glibc yet. Therefore use libgcc where needed for now Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit bf842214267663966ffa34e170368d55fcebd883)
* nonclangable: Use libgcc for unwinder as well when using for builtinsKhem Raj2023-09-081-9/+11
| | | | | | | | | | | | | | | clang 13 does not like to mix rtlib and unwindlib when using libgcc Fixes clang-13: error: --rtlib=libgcc requires --unwindlib=libgcc secondly compiler-rt does not havw 128 bit ( tf ) functions on x86 so fallback to libgcc for those use libatomic for x86 since 64bit atomics are not in compiler-rt Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 96face19ae51510d5e5923e575496844b5b85e62)
* clang: Do not force libgcc libunwind in rv32 and rv64Khem Raj2023-09-081-2/+0
| | | | | | | | llvm unwind can work on rv32 and rv64 with latest clang so open up that option Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit bfad2060bcf17f26fff1e6dd760732d551794c2b)
* clang: Update to latest on master branchKhem Raj2023-09-0835-63/+61
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 040ec88b95679a953bf63461f73700246ed34eef)
* poke: Do not use -O2 with clangKhem Raj2023-09-081-0/+3
| | | | | | | | | clang13 has a regression which segfaults the compiler while compiling poke, its reported upstream, until it is fixed do not use -O2 compiler switch Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit d01e38f98bb03d9afa72e9dfc10eb936fc6a4c29)
* nonclangable: pass -rtlib only when using clang with gnu runtime hereKhem Raj2023-09-081-9/+9
| | | | | | | | The defaults wirh using RUNTIME = "llvm" is already pointing to compiler-rt there is no need to clutter cmdline Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 785ce0f2df336ea2c7ef40a3e64eb84656f59eeb)
* mongodb: Use llvm runtime when using clangKhem Raj2023-09-081-0/+1
| | | | | | | | | | | Fixes linker errors like src/mongo/platform/overflow_arithmetic.h:63: error: undefined reference to '__mulodi4' src/mongo/platform/overflow_arithmetic.h:63: error: undefined reference to '__mulodi4' src/mongo/platform/overflow_arithmetic.h:63: error: undefined reference to '__mulodi4' src/mongo/platform/overflow_arithmetic.h:63: error: undefined reference to '__mulodi4' Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 0c02a3503f6b240ec34c68bc9c00407bae2b0fa4)
* bcc: Update to master tipKhem Raj2023-09-089-913/+7
| | | | | | | | | | | | | In order to use latest clang, latest bcc sources are needed, this also means that we need to use vendored libbpf as thats the newest one needed and avoids dependencies on kernel bpf headers which maybe old and out of sync examples use error.h header which is not available on musl therefore disable examples when building on musl Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 21182ec55dace9062be427c2ee583fd4027f899b)
* compiler-rt-sanitizers: Fix hwsan builds with llvm libunwindKhem Raj2023-09-082-0/+36
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit e9a764eac78f6099d34dd9ce8faae906b3fa6b4c)
* Package libunwind independentlyKhem Raj2023-09-081-2/+4
| | | | | | | This helps in ensuring it pose as RPROVIDES when llvm runtime is used Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit cee6adcb98ed39a30b6def6c4ab6d3965854178a)
* libunwind: Implement unw_backtraceKhem Raj2023-09-082-0/+56
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit d45403baedd7ae7755a02cfe0205000b760167bd)
* libunwind: Install headers and pkgconfig fileKhem Raj2023-09-083-0/+21
| | | | | | | | This ensures it can replace nongnu libunwind Use it only when selecting RUNTIME = "llvm" Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit c48de926ac54802df7e1e4b7f91caa4fa4ef45b1)
* libc-bench: It works fine with new way of choosing llvm runtimeKhem Raj2023-09-081-3/+0
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 55978074f349330367ffbbf991e3287141f8fe4d)
* clang.bbclass: Limit using clang to target recipes onlyKhem Raj2023-09-081-9/+9
| | | | | | | | since toolchain-clang maybe available for native as well now, it means we have to ensure we do not use it for native recipes _yet_ Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 95b2e77c088aacaae58aa9157fc7b7bde82527c8)
* compiler-rt-native: Fix build with clangKhem Raj2023-09-081-0/+10
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 9c8347351565ba4ea0b31e92cf55b29811372285)
* nss: Pass options to select runtime for native partsKhem Raj2023-09-081-1/+1
| | | | | | | | Since clang maybe configured to use llvm runtime, we need to ensure to use gnu runtime in native builds Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 563e11548bfe95444d447e058001d3d1da5fe8e8)
* layer.conf: Prefer llvm libunwind when RUNTIME = "llvm"Khem Raj2023-09-081-0/+1
| | | | | | | Avoids conflicts with libunwind recipe from OE-Core Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 5be1042c67063354217154e3c35ed83408d916ce)
* clang.bbclass: Adjust for clang default changesKhem Raj2023-09-081-7/+11
| | | | | | | | | | | | | | | | Now that clang can pass right options automatically when RUNTIME = "llvm", adjust the variables e.g. COMPILER_RT/UNWINDLIB/LIBCPLUSPLUS are no more required to be defaulted Disable enforcing gcc runtime for packages using gcc as its no longer needed here but is taken care by RUNTIME variable as an aside it also helps in building native and nativesdk llvm runtimes Compute right dependencies based on selected RUNTIME along with COMPILER_RT/UNWINDLIB/LIBCPLUSPLUS variables Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit dc5e04e5819a5e7384ae48f1740ac82970a80b8f)
* libcxx: Build undwinder when RUNTIME = "llvm"Khem Raj2023-09-081-1/+5
| | | | | | | | ensure that libcxx can be built when RUNTIME = "llvm" as it might need to pass some cmake compiler tests Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit a0a318157ca0555b0d6e20028dcb7e3e3f3c08c6)
* compiler-rt-sanitizers: Use packageconfig to use static libcxxKhem Raj2023-09-081-6/+3
| | | | | | | | | | | | | | sanitizers can link libc++/libc++abi statically or dynamically, we default to use dynamic version but leave the option to enable static linking if so needed Use virtual/crypt to represent crypt implementation which becomes libc independent Fix dependencies for native recipes Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit f4bb299c409128801e68c30187381fadeb0a451d)
* compiler-rt: Use gcc runtime to bootstrapKhem Raj2023-09-081-3/+7
| | | | | | | | | | | | | | | while compiler-rt may not use any of these libraries, but the cmake environment pokes for working compiler, linker and other tools, this ensures that it can build when RUNTIME = "llvm" and also RUNTIME = "gnu" Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 7f431875e4edc2a11a9881714e4845efeee54f77) Conflicts: - recipes-devtools/clang/compiler-rt_git.bb: Commit 93552c79eed5daa44a24bf4b7a063a2ade739e97 had already backported parts of this commit.
* clang: Default to compiler-rt/libcxx/libunwind when RUNTIME = "llvm"Khem Raj2023-09-081-5/+9
| | | | | | | | | | | | | This ensures that compiler defaults are defaulting to llvm provided c/c++ runtimes which includes c-runtime, c++runtime, unwinder and omp runtime, current approach is to inject commandline options but it does not get passed in all cases and a lot of smaller/big patches are used to make such package recipes behave If RUNTIME = "gnu" then defaults stay to use gcc runtime as it is Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit e4edc914cd17d31c1c55733db942e3d5da3b0b56)