summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* compiler-rt,libcxx: Fix native builds when using RUNTIME=llvmKhem Raj2021-07-302-0/+7
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Switch to 13.x branchKhem Raj2021-07-301-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Explicitly set LLVM_DEFAULT_TARGET_TRIPLEKhem Raj2021-07-181-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>
* mesa: Use gcc on aarch64Khem Raj2021-07-181-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>
* libclc: Drop using -cl-no-stdincKhem Raj2021-07-181-1/+0
| | | | | | This flag is no longer needed with latest clang-13 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on trunk/13.0Khem Raj2021-07-181-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Depend on clang runtime when using RUNTIME = "llvm" for native packagesKhem Raj2021-07-081-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: fix do_package error when multilib enabledChangqing Li2021-07-051-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>
* gnutls: Disable integrated assembler on aarch64Khem Raj2021-06-301-0/+3
| | | | | | | integrated assembler crashes latest clang on aarch64, so lets disable it for now Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 13.0.0/trunkKhem Raj2021-06-3038-193/+83
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: drop git suffix from version variablesChangqing Li2021-06-282-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>
* libcxx: Fix native buildKhem Raj2021-06-252-18/+30
| | | | | | | | Use libgcc with clang-native to compile it Fixes #465 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Fix build on non-x86 targetsKhem Raj2021-06-242-0/+122
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* spirv-llvm-translator: Update to latest trunkKhem Raj2021-06-241-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on main/13.0 lineKhem Raj2021-06-242-1/+3
| | | | | | Package new content for scanbuild and libear Signed-off-by: Khem Raj <raj.khem@gmail.com>
* spirv-llvm-translator: Remove a trailing slash from SRC_URIRobert Yang2021-06-181-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>
* mariadb: Use gcc got ppc64leKhem Raj2021-06-181-0/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libucontext: Do not use internal assembler on ppc64leKhem Raj2021-06-181-0/+5
| | | | | | clang segfaults while processing .S files Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest master/13.0Khem Raj2021-06-1637-93/+51
| | | | | | Drop 0024-compiler-rt-Include-stddef.h.patch its accepted upstream Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Fix build with llvm >= 13Khem Raj2021-06-142-0/+43
| | | | | | toString implementation has changed in LLVM Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Update to latestKhem Raj2021-06-141-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on main/13.0 branchKhem Raj2021-06-1437-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>
* mesa: Do not StackAlignmentOverride on llvm >= 13Khem Raj2021-06-142-1/+20
| | | | | | | This has been removed see https://reviews.llvm.org/D103048 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Use libgcc instead of compiler-rt on klibc appsKhem Raj2021-06-141-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>
* aufs-util,libhugetlbfs,libc-bench: Use libgcc unwinder on glibc/armKhem Raj2021-06-101-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>
* nonclangable: Use libgcc for unwinder as well when using for builtinsKhem Raj2021-06-101-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>
* clang: Do not force libgcc libunwind in rv32 and rv64Khem Raj2021-06-101-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>
* clang: Update to latest on master branchKhem Raj2021-06-0835-63/+61
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* poke: Do not use -O2 with clangKhem Raj2021-06-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>
* nonclangable: pass -rtlib only when using clang with gnu runtime hereKhem Raj2021-06-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>
* mongodb: Use llvm runtime when using clangKhem Raj2021-06-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>
* mongodb: Remove from nonclangable listKhem Raj2021-06-081-2/+0
| | | | | | mongodb builds fine with latest clang/13.0.0 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Update to master tipKhem Raj2021-06-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>
* compiler-rt-sanitizers: Fix hwsan builds with llvm libunwindKhem Raj2021-06-082-0/+36
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libunwind: Hide when llvm runtime is usedKhem Raj2021-06-081-0/+3
| | | | | | We want to use llvm libunwind implementation when RUNTIME = "llvm" Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Package libunwind independentlyKhem Raj2021-06-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>
* libunwind: Implement unw_backtraceKhem Raj2021-06-082-0/+56
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libunwind: Install headers and pkgconfig fileKhem Raj2021-06-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>
* ghostscript: Fix build when using libc++Khem Raj2021-06-081-0/+7
| | | | | | RUNTIME=llvm means we use libc++ instead of libstdc++ among other things Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libc-bench: It works fine with new way of choosing llvm runtimeKhem Raj2021-06-081-3/+0
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang.bbclass: Limit using clang to target recipes onlyKhem Raj2021-06-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>
* compiler-rt-native: Fix build with clangKhem Raj2021-06-081-3/+18
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nss: Pass options to select runtime for native partsKhem Raj2021-06-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>
* layer.conf: Prefer llvm libunwind when RUNTIME = "llvm"Khem Raj2021-06-081-0/+1
| | | | | | Avoids conflicts with libunwind recipe from OE-Core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang.bbclass: Adjust for clang default changesKhem Raj2021-06-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>
* libcxx: Build undwinder when RUNTIME = "llvm"Khem Raj2021-06-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>
* compiler-rt-sanitizers: Use packageconfig to use static libcxxKhem Raj2021-06-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>
* compiler-rt: Use gcc runtime to bootstrapKhem Raj2021-06-081-2/+8
| | | | | | | | | 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>
* clang: Default to compiler-rt/libcxx/libunwind when RUNTIME = "llvm"Khem Raj2021-06-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>
* scan-build.bbclass: Fix typoKhem Raj2021-06-081-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>