summaryrefslogtreecommitdiffstats
path: root/recipes-devtools
Commit message (Collapse)AuthorAgeFilesLines
* 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)
* 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)
* 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)
* libcxx: Build libunwind shared lib when enabledKhem Raj2023-09-081-10/+7
| | | | | | | | Use compile-rt consistently across when building libc++ and libc++abi and libunwind Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 78acb4ae02352d543b0343b2dba411dc521acd0a)
* compiler-rt-sanitizers: Do not package orc support libKhem Raj2023-09-081-0/+2
| | | | | | | Its already shipped with compile-rt recipe Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit c5c59a9a6a80bb54067ed1400f814fcfc3f428aa)
* lldb: Do not build for mips as wellKhem Raj2023-09-081-4/+7
| | | | | | | | lldb-server is not fully ported for mips yet see https://reviews.llvm.org/D102872 Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 1a90a808e913003ccbbd5ab9b1fcb0a0995d620c)
* compiler-rt-sanitizers: Fix build on mipsKhem Raj2023-09-082-0/+30
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 85c1247d641e8f3286151cf77c8a888955a4fbb1)
* compiler-rt-sanitizers: Limit to buildable arch/libc combinationsKhem Raj2023-09-081-0/+6
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 6a442a8a3b6b898c90ae1e25216810cf0022e8ad)
* compiler-rt-sanitizers: Link with static C++ runtime when availableKhem Raj2023-09-082-3/+3
| | | | | | | This fixes build on ARM Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 241e7e50d394795822beb04869fa540026ebf0cd)
* clang: Fix x86 tuple for include search pathsKhem Raj2023-09-082-0/+26
| | | | | | | | | | | | | This ensures that search path for c++ headers is using right directory structure as per Openembedded gcc and sysroot install e.g. ignoring nonexistent directory "/mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux-musl/compiler-rt/13.0.0-r0/recipe-sysroot/usr/lib/i686-yoe-linux-musl/11.1.0/../../../include/ c++/11.1.0/i386-linux-gnu" Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 6ecc0989f152811b8e042d0eb0c94db24c023543)
* compiler-rt: Fix sanitizer build on musl/x86_64Khem Raj2023-09-082-0/+69
| | | | | | | backtrace APIs are glibc specific so do not use them Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 0f3c6b54bf61ec9aabcb2e6ef52ee78e795194c5)
* libclc: Pass -cl-no-stdinc to compiler and assemblerKhem Raj2023-09-081-0/+1
| | | | | | | | | | | | | libclc uses clang CLC preprocessor on .ll files, llvm/clang-13 started including clc declarations by default (clang cf3ef15a6ec5e5b45c6c54e8fbe3769255e815ce), thus corrupting any .ll assembly files that are used by libclc. Inclusion of the default declarations can be turned off using a cmdline switch but that remains to be implemented in the libclc build system. manually adding '-cl-no-stdinc' should work as a workaround. Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit d692c0338fe60cdbb3025dcedbb05ca466335650)
* spirv-llvm-translator: Upgrade to 13.0.0/trunkKhem Raj2023-09-083-63/+3
| | | | | | | This is in sync with clang trunk (upcoming 13.0.0) release Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 79dc9a07e919bbcadb137a9d4cb0f857a672d67e)
* openmp: Fix building amdgcn filesKhem Raj2023-09-081-3/+10
| | | | | | | License name should be LICENSE.TXT not LICENSE.txt Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 07357fd3372866445aa9dd07654849b9b3d0c3d1)
* clang: Upgrade to trunk/13.0 future seriesKhem Raj2023-09-0836-715/+205
| | | | | | | | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit 76e37fafa29e9b2097eb823537b17d6cc638c1d5) Conflicts: - recipes-devtools/clang/common.inc: caused by 3880a395f870ecd8da73d2de1e2b88a855df2ef0, the patches have been kept. The patch introduced in fdb936e80b30f40cbf7ef9a8e124b58eec95f45c is part of LLVM 13 so it has been removed.
* compiler-rt-sanitizers: allow tsan to be built since clang 12 works byFlorian Wühr2023-05-162-41/+0
| | | | default
* Backport fix for no matching constructorRandy MacLeod2023-01-172-0/+380
| | | | | | | | | | | | | | Fixes: ../../chrome/common/extensions/chrome_manifest_url_handlers.cc:101:7: error: no matching constructor for initialization of 'std::map<const char *, std::reference_wrapper<const absl::optionalstd::string>>' (aka 'map<const char , reference_wrapper<const optional<basic_string>>>') std::map<const char, as seen with chromium-109: https://github.com/OSSystems/meta-browser/issues/674 Thanks to Raphael Kubo da Costa for finding the commit to be backported! Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
* nativesdk-clang: Fix build on hosts with older ncursesKhem Raj2022-09-284-0/+378
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Backport libcxx-native build and dependency fixes from main.Chris Wulff2022-07-052-7/+22
| | | | Signed-off-by: Chris Wulff <chris.wulff@biamp.com>
* Fix meta-intel/meta-clang collisionsBernhard Rosenkränzer2021-07-141-0/+9
| | | | | | | | | | | | meta-intel assumes LLVM 10 or 11 is being built, and forces a version of SPIRV-LLVM-Translator that doesn't work with LLVM 12. Override this with an LLVM 12 compatible version. Also, meta-intel pulls in intel-mediasdk which, out of the box, doesn't build with compiler-rt. Add a patch to intel-mediasdk that fixes this. Signed-off-by: Bernhard Rosenkränzer <bernhard.rosenkraenzer.ext@huawei.com> Upstream-Status: Pending
* valgrind: update builtin_setjmp to work with current clang, fix testsBernhard Rosenkränzer2021-07-143-39/+674
| | | | Signed-off-by: Bernhard Rosenkraenzer <bernhard.rosenkraenzer.ext@huawei.com>
* valgrind: Allow building with clangBernhard Rosenkränzer2021-07-142-0/+127
| | | | | | | | Allow building valgrind with clang -- merge a patch from the Android NDK to fix the valgrind+clang aarch64 combo Signed-off-by: Bernhard Rosenkränzer <bernhard.rosenkraenzer.ext@huawei.com>
* Build profiling versions of compiler-rtBernhard Rosenkränzer2021-07-141-1/+1
| | | | | | | | Revert the upstream change moving the profiling version to compiler-rt-sanitizers - we need the profiling version (but not yet the sanitizers) for ACTS Signed-off-by: Bernhard Rosenkränzer <bernhard.rosenkraenzer.ext@huawei.com>
* Add patches to make dhcp and distcc build with clang 12Bernhard Rosenkränzer2021-07-142-0/+23
| | | | | | | (Patches used without toolchain_clang condition because they also fix gcc >= 11 and don't hurt with older compilers) Signed-off-by: Bernhard Rosenkränzer <bernhard.rosenkraenzer.ext@huawei.com>
* compiler-rt: Disable libfuzzer and profiler supportKhem Raj2021-05-191-0/+2
| | | | | | These are now moved into compiler-rt-sanitizers recipe Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt-sanitizers: Add recipeKhem Raj2021-05-191-0/+97
| | | | | | This recipe builds all sanitizers runtimes provided by compiler-rt Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Remove -D_LIBCPP_HAS_MUSL_LIBC=ONKhem Raj2021-05-191-2/+0
| | | | | | this option is only effective when building libcxx Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable dwarf-5 default debug infoKhem Raj2021-05-0434-61/+122
| | | | | | This matches with GCC 11 which is also defaulting to DWARF-5 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add SDK_VENDOR string to CLANG_EXTRA_OE_VENDORSKhem Raj2021-04-261-1/+1
| | | | | | | | | | | | This helps in ensuring that SDK elements are built correctly as well, at present we get right builds for cross/target/native clang but not for nativesdk since it use SDK_VENDOR string for vendor eg. -yoesdk which currently is not added to known OE vendors, as a result nativesdk-clang does not build since crosssdk clang can not find runtime files e.g. libgcc Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Martin Jansa <Martin.Jansa@gmail.com>
* llvm-project-source: Add multilib vendor supportYi Fan Yu2021-04-151-4/+16
| | | | | | | | | | | | | | | | | Generate all possible vendor name that a multilib build could use by using the variable MULTILIB_VARIANTS. ex: {TARGET_VENDOR} {TARGET_VENDOR}mllib32 Fixes build issue when compiling lib32-compiler-rt where clang has issue detecting gcc toolchain. when clang --print-search-dirs: lib32-recipe-sysroot//usr/lib/i686-wrsmllib32-linux should be lib32-recipe-sysroot//usr/lib/i686-wrsmllib32-linux/10.2.0/ Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
* clang: Upgrade to 12.0.0 RC5Khem Raj2021-04-081-1/+1
| | | | | | | * d28af7c654d8 remove -fpch-codegen and -fpch-debuginfo from Clang 12.0 release notes * 04ba60cfe598 [ORC][C-bindings] Fix some ORC C bindings function names and signatures. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Do not use lld for building nativsdk clangKhem Raj2021-04-081-1/+0
| | | | | | | | | While we can, it does not have the sspace for path dance that yocto does for relocable SDK which means clang components may end up being non-relocatable when SDK is installed in longer paths. So for now pay the price of switching back to binutils linker Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update 12.0.0-RC4Khem Raj2021-04-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | * 31001be371e8 [LoopVectorize] Refine hasIrregularType predicate * 9ae9ab1ca343 [RISCV][MC] Fix nf encoding for vector ld/st whole register * ff2cf8fafa5a [InstCombine] avoid creating an extra instruction in zext fold and possible inf-loop * 5b3480610383 [InstCombine] add test for zext-of-icmps; NFC * 38dd45b00431 [X86][FastISel] Fix with.overflow eflags clobber (PR49587) * 79a79d1d01c4 [X86] Add test for PR49587 (NFC) * f05b64961056 [FastISel] Don't trivially kill extractvalues (PR49467) * e89cdf8937bb [OpenMP] Restore backwards compatibility for libomptarget * 8ca56905dd9b [PowerPC] Fix infinite loop in peephole CR optimization (PR49509) * f43958b7c497 [OpenMP] Fixed a crash in hidden helper thread * e94372d1b395 [SimplifyCFG] avoid sinking insts within an infinite-loop * f4c01f33f450 [Support] Fix 'keeping' temporary files on Windows 7 * 4990141a4366 [WoA][MSVC] Use default linker setting in MSVC-compatible driver [take 2] * e3186ba0f3b5 [aarch64][WOA64][docs] Release note for WoA-hosted LLVM 12 binary * 00441b8f4e5b [OpenCL][Docs] Release notes * ca14f0282fce [release][docs] List all cores Arm has added support for in LLVM 12. * c016eda3257e [release][docs] List all cores Arm has added support for in LLVM 12. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-project-source: Re-implement add_more_target_vendors in pythonKhem Raj2021-03-302-16/+21
| | | | | | | | This is to avoid a ton of shell variables becoming dependencies Add every case in a new line Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix build on armv6Khem Raj2021-03-252-0/+75
| | | | | | Fixes Issue #445 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: allow to set CLANG_EXTRA_OE_VENDORS to support custom TARGET_VENDOR valueMartin Jansa2021-03-243-6/+31
| | | | | | | | * instead of hardcoding only yoe, poky, wrs in the patch, add just placeholder string which gets replaced with a list based on CLANG_EXTRA_OE_VENDORS variable in llvm-project-source.inc:add_more_target_vendors Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* clang/llvm: Upgrade to 12.0.0 RC3Khem Raj2021-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | * 15d1ee36720f [CMake][compiler-rt] Use copying instead of symlinking for LSE builtins on non-Unix-likes * bff59aca162e [TargetLowering] Use HandleSDNodes to prevent nodes from being deleted by recursive calls in getNegatedExpression. * a123beacce40 [LoopVectorize] Fix VPRecipeBuilder::createEdgeMask to correctly generate the mask * f8b32989241c [clang-tidy] Deprecate readability-deleted-default check * 46a1b0655666 [AArch64] Legalize horizontal fmax/fmin reductions on f16 vectors * d24e102ba266 [OpenMP] Fixed a crash when offloading to x86_64 with target nowait * 52510d84802b [GlobalISel] Bail on G_PHI narrowing of odd types (PR48188) * 99350dcc3f5b [OpenMP] Fix clang-cl build error regarding TSX intrinsics * 4ed9f17e9390 [analyzer] Add 12.0.0 release notes * 9760b282ff03 [DAGCombiner][X86] Don't peek through ANDs on the shift amount in matchRotateSub when called from MatchFunnelPosNeg. * 344216979213 Revert "[c++20] Mark class type NTTPs as done and start defining the feature test macro." * f73ba0f3582b [SimplifyCFG] avoid illegal phi with both poison and undef * 692808e5af83 [InstCombine] avoid infinite loop in demanded bits for select * c637d4d136fd [OpenMP][NVPTX] Fixed a compilation error in deviceRTLs caused by unsupported feature in release verion of LLVM * 98f06b16a313 [AArch64][Docs] Release notes 12.x on outline atomics * e0e6b1e39e7e ReleaseNotes: add lld/ELF notes Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add 'wrs' to OE-distroYi Fan Yu2021-03-111-3/+7
| | | | | | | | | | | Add 'wrs' to OE-distro so it will now also find the correct header files for WR Linux. Solve `<climits> <algorithm> ... not found` when building with clang for WR Linux. Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com> Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
* clang: Install lld for target buildsZoltán Böszörményi2021-03-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LLDTargets.cmake (generated and installed by the lld build) references lld this way: add_executable(lld IMPORTED) set_property(TARGET lld PROPERTY ENABLE_EXPORTS 1) This way lld can be used by plugins to get their symbols from, pretty much like PHP modules that resolve their symbols from the php executable during runtime linking. At least https://github.com/RadeonOpenCompute/ROCm-CompilerSupport uses lld's cmake files as opposed to using only llvm and previously failed with: | The imported target "lld" references the file | | ".../tmp-sicom-glibc/work/corei7-64-sicom-linux/amd-comgr/4.0.0-r0/recipe-sysroot/usr/bin/lld" | | but this file does not exist. Possible reasons include: | | * The file was deleted, renamed, or moved to another location. | | * An install or uninstall procedure did not complete successfully. | | * The installation package was faulty and contained Extending SYSROOT_DIRS with ${bindir} would break crosscompiling since CMake found clang/clang++ from recipe-sysroot in this case. Install lld into sysroot-destdir but nothing else. Signed-off-by: Zoltán Böszörményi <zboszor@pr.hu>
* spirv-llvm-translator: disable ccacheNaveen Saini2021-03-052-0/+34
| | | | | | | | Native build is failing, error log: ~/build/tmp/work/x86_64-linux/spirv-llvm-translator-native/12.0.0-r0/git/lib/SPIRV/SPIRVLowerSPIRBlocks.cpp | /bin/sh: 1: ccache: not found Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
* clang: Use shared-libs when building native clang as wellKhem Raj2021-03-011-1/+1
| | | | | | | | | This ensures that llvm-config works properly, since target clang is building shared libs, we should match it on clang native and nativesdk as well, this helps in cross compiling packages which depend on llvm-config to get llvm libs list during build/link Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libclc: Add dependency on spirv-llvm-translatorKhem Raj2021-03-011-3/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* spirv-llvm-translator: Add recipeKhem Raj2021-03-012-0/+66
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm: Recognise yoe and poky vendors as OE based distroKhem Raj2021-03-012-0/+26
| | | | | | This helps llvm decide correctly on gcc installation structure Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 12.0.0 RC2Khem Raj2021-03-0134-411/+270
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 11.1.0Khem Raj2021-02-201-1/+1
| | | | | | | | | * 1fdec59bffc1 [lldb] Fix fallout caused by D89156 on 11.0.1 for MacOS * 85fcd4655947 workflows: Re-enable lldb test on Mac OS X * 17e842f3785f workflows: Update action branch names * e18e509bdb45 workflows: Add job to check for ABI changes in libclang.so and libclang-cpp.so Signed-off-by: Khem Raj <raj.khem@gmail.com>