summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/compiler-rt_git.bb
Commit message (Collapse)AuthorAgeFilesLines
* compiler-rt,compiler-rt-sanitizers: Correct target tuple for armhfKhem Raj2023-08-011-1/+1
| | | | | | | | It will fails on clang-17+ | CMake Error at /mnt/b/yoe/master/build/tmp/work-shared/llvm-project-source-17.0.0-r0/git/compiler-rt/cmake/Modules/CheckSectionExists.cmake:72 (message): | error: unknown target triple 'armhf' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: fix installed-vs-shipped qa issueKai Kang2023-03-281-1/+1
| | | | | | | | It fails to run task do_package of compiler-rt with [installed-vs-shipped] issue when ${libdir} does not equal ${nonarch_libdir}. Update do_install script to fix the issue. Signed-off-by: Kai Kang <kai.kang@windriver.com>
* compiler-rt: Do not include tests in buildKhem Raj2023-03-201-4/+8
| | | | | | | | | Install uses MAJOR_VERSION only but clang still searches in ${MAJOR_VER}.${MINOR_VER}.${PATCH_VER} for it, so this inconsistency needs to be fixed until them we just move the install from ${MAJOR_VER} -> ${MAJOR_VER}.${MINOR_VER}.${PATCH_VER} Signed-off-by: Khem Raj <raj.khem@gmail.com>
* runtime: Enable PIC for static archives with clang runtime libsKhem Raj2023-02-061-0/+1
| | | | | | | This helps in compling shared libraries which may use e.g. static libc++.a during link Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang, llvm-rutime: Turn per target runtime off and use RelWithDebInfo for buildKhem Raj2022-09-121-1/+3
| | | | | | | | | | | clang can now build multiarch runtimes like debian's setup, but not all arches work equally well, e.g. arm32 bit can not handle arm and armhf case, so lets disable it for now. Use DCMAKE_BUILD_TYPE=RelWithDebInfo as it is needed to set DCMAKE_BUILD_TYPE in 15.x Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix native and nativesdk builds for hf targetsEsben Haabendal2022-07-051-1/+2
| | | | | | | | | | Setting the ${HF} variable based on ${TUNE_CCARGS_MFLOAT} does only make sense for target builds, as it defines arguments for target. Without this fix, building with hf machine configuration will cause problems, as native and nativesdk triplets will be include "hf", something like "x86_64hf-linux", which is wrong and not recognized by LLVM build/configuration system. Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Build clang_rt.profile library when possibleEsben Haabendal2022-06-011-1/+1
| | | | | | | | | | | | | To enable clang_rt.profile library do something like the following in local.conf or your distro configuration. PACKAGECONFIG:pn-compiler-rt = "profile" The clang_rt.profile library is used to collect coverage information. It is a static library, so does not introduce any additional footprint in target images. Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Fix nativesdk buildingEsben Haabendal2022-04-251-1/+6
| | | | Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* compiler-rt: Build builtins only for the default targetEsben Haabendal2022-04-201-1/+2
| | | | | | | | | | | | | | | | We were never really supposed to build for multiple target architectures in one compiler-rt build, so let's use the feature created to do exactly that. This also happens to fix building for ARM softfp ABI builds, where the target architecture guessing logics ends up with: -- Builtin supported architectures: arm;armv6m And later on bailing out because of duplicate ninja rules: ninja: error: build.ninja:56765: multiple rules generate lib/clang/14.0.0/lib/linux/libclang_rt.builtins-arm.a [-w dupbuild=err] Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
* clang/compiler-rt: Convert to new override syntaxKhem Raj2021-08-121-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-clang: Convert to new override syntaxSigned-off-by: Martin Jansa2021-08-031-27/+27
| | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt,libcxx: Fix native builds when using RUNTIME=llvmKhem Raj2021-07-301-0/+2
| | | | 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>
* 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>
* 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: 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>
* compiler-rt: Disable building memprofKhem Raj2021-02-141-0/+1
| | | | | | | | | memprof/sanitizers need libcrypt to build, therefore remove it from building compiler-rt so we do not need libcrypt dependency, perhaps a new recipe to build sanitizers separately should be added which should also build memprof. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Disable sanitizer buildsKhem Raj2021-02-011-3/+2
| | | | | | | | | | | Sanitizers include crypt.h from libcrypt to build, so when using llvm runtime this becomes important to break the cyclic dependency compiler-rt->libxcrypt->compiler-rt Fixes #425 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx,compiler-rt: Use python3 during buildKhem Raj2020-01-201-1/+1
| | | | | | py2 is gone from oe-core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Make llvm CRT components optionalDaniel McGregor2020-01-201-0/+3
| | | | | | | LLVM 9+ provides the crt startup components crtbegin.o and crtend.o, enabled by default. Make using these with the clang runtime optional. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
* clang: stay closer to cmake.bbclassDaniel McGregor2020-01-201-30/+9
| | | | | | | | | | | Allow more of the cmake variables coming from the OE environment through, otherwise the release C flags and CXX flags get reset to LLVM's default, which greatly extend build times. Also switch to using cmake.bbclass's do_compile and do_install commands. There's no need to call ninja directly anymore. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
* clang: use nonarch_libdir/clang for all runtime filesDaniel McGregor2020-01-201-10/+16
| | | | | | | | This allows the cross compiler to always find the runtime libraries in the same place, no matter the value of libdir. This is required for multilib to work correctly. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
* compiler-rt: Depend on libcrypt for sanitizersKhem Raj2019-12-261-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Package compiler-rt correctly with non-empty LLVM_LIBDIR_SUFFIXHiroshi Hatake2019-12-161-6/+6
|
* Compute LLVM_LIBDIR_SUFFIX correctly on multiarch environmentHiroshi Hatake2019-12-161-0/+1
| | | | Co-authored-by: INAJIMA Daisuke <inajima@soum.co.jp>
* clang: Remove editing THUMB_TUNE_CCARGSKhem Raj2019-10-021-3/+0
| | | | | | THUMB_TUNE_CCARGS is gone from oe-core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang-runtime: Use INHIBIT_DEFAULT_DEPS = "1"Khem Raj2019-10-011-1/+3
| | | | | | | This ensures that clang-runtime elements e.g. llvm-libunwind can be used with gcc as well Signed-off-by: Khem Raj <raj.khem@gmail.com>
* runtime: Automatically add llvm-libunwind based on COMPILER_RT asking for ↵Khem Raj2019-09-281-4/+3
| | | | | | --unwindlib=libunwind Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: stage libs in case of multlib as wellAnuj Mittal2019-09-181-1/+5
| | | | | | | We install compiler libs in lib irrespective of value of libdir. Make sure that these libs are actually staged as well when libdir != /usr/lib. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* compiler-rt: Package into /usr/lib alwaysKhem Raj2019-09-021-13/+14
| | | | | | | Clang differentiates on compiler-rt name and not dirs so installing all of them into /usr/lib/clang is fine and expected Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx,compiler-rt: Add --unwindlib=libunwind to COMPILER_RTKhem Raj2019-08-121-1/+1
| | | | | | | This is new way of enabling llvm unwinder as default unwinder now build shared libunwind which is needed for new option Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to 9.x-rcXKhem Raj2019-08-121-4/+5
| | | | | | | dont package six.py, its provided by python3-six package default to lp64d ABI and rv64gc ISA. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx, compiler-rt: Use forcevariable to specify TOOLCHAIN overrideKhem Raj2019-03-121-1/+1
| | | | | | | This may already be specified by another low priority override to point to gcc but we want to always use clang for compiling these packages Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt,libcxx: Add --stdlib=libc++ to compiler flagsKhem Raj2019-02-231-3/+3
| | | | | | | | | | - We do not need it with CXX - adding to compiler flag makes sure that libcxx headers are used even when C (clang) compiler is used - Eventually libcxx should provide virtual/${TARGET_PREFIX}compilerlibs add it in comments Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Define AR, NM and RANLIB to point to llvm wrappersKhem Raj2019-02-141-0/+3
| | | | | | helps with LTO enabled cross builds Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Define _LIBCPP_HAS_MUSL_LIBC when building for muslKhem Raj2019-02-131-2/+3
| | | | | | | | | | libcxx headers are used during compiler-rt build and libcxx needs to know the libc type in order to include correct wrappers for locale headers Remove duplicated -DCOMPILER_RT_BUILD_XRAY=OFF Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Disable standalone buildKhem Raj2019-02-091-5/+7
| | | | | | | | | | | standalone build starts to look for c++ headers which then are fed from libstc++ because libcxx is not built yet, instead let build use it from in-tree libcxx enable llvm-ar/llvm-ranlib/llvm-nm to provide ar/ranlib/nm respectively, this helps with lto enabled builds for libcxx Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt,libcxx: Remove --rtlib=compiler-rtKhem Raj2019-01-261-0/+1
| | | | | | This avoids catch-22 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx,compiler-rt: Append to CXX along with TARGET_CXXFLAGS to carry ↵Khem Raj2019-01-241-3/+3
| | | | | | | | -stdlib flag Since TARGET_CXXFLAGS does not get passed into all packages Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update license checksumsKhem Raj2019-01-191-1/+1
| | | | | | The only change is update to the year in license files Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix unintended dependencies concatenationAdam Romanek2019-01-041-1/+1
| | | | | The error message was: >> Nothing PROVIDES 'ninja-nativeclang-native' (but virtual:nativesdk:/media/storage/romanek-adam/build-2018-12-17-clang/workspace/meta-clang/recipes-devtools/clang/compiler-rt_git.bb DEPENDS on or otherwise requires it)
* nativesdk-compiler-rt: Add missing dep on clang-nativeKhem Raj2018-12-271-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Do not force lld to link stepKhem Raj2018-12-271-2/+0
| | | | | | This was an experimental change Signed-off-by: Khem Raj <raj.khem@gmail.com>
* recipes: Rework llvm/clang/compiler-rt/libcxx/lldb recipesKhem Raj2018-12-271-17/+7
| | | | | | | | | | | | | | This is an overhaul of clang/llvm project related recipes * switch to using a flat mono repo for all clang/llvm projects * Add llvm-project-source recipe which will prepare source tree in work-shared for all recipes much like kernel and gcc * build lld as part of clang recipes, its much easier and saves build time and hopefully nativesdk version will be built now for free * switch to official git repos at git://github.com/llvm-project * Adjust all recipes to use shared sources Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Revert "compiler-rt: Use pre-computed size of struct ustat for Linux"Khem Raj2018-09-091-1/+0
| | | | This reverts commit 9a0bd29eac2be5f88e3e198929181d3591dd7ec7.
* compiler-rt: Create lib/linux only if there is content to move to itKhem Raj2018-09-091-3/+4
| | | | | | | Fixes builds where there are no files inside ${D}${libdir}/linux but the empty dir is still created Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Package /usr/share into dev packageKhem Raj2018-09-091-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* recipes: Upgrade to clang 7.0.0 Release (rc2)Khem Raj2018-09-091-1/+1
| | | | | | | | | | | | | | | | | - Update compiler-rt/llvm/clang/lld licence checksums Triggerred due to copyright year update to 2018 Add libunwind and libcxxabi license to checksum list too - Switch to https protocol for fetching from github - Fix _finite functions on musl - Package new .so files built with clang - package libLLVM-${MAJOR_VER}.so as well since llvm-7 generates it without MINOR_VERSION Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Use pre-computed size of struct ustat for LinuxHongxu Jia2018-09-091-0/+1
| | | | | | | | | | | | | | | <sys/ustat.h> has been removed from glibc 2.28 by: commit cf2478d53ad7071e84c724a986b56fe17f4f4ca7 author: Adhemerval Zanella <adhemerval.zanella@linaro.org> Date: Sun Mar 18 11:28:59 2018 +0800 Deprecate ustat syscall interface This patch uses pre-computed size of struct ustat for Linux to fix https://bugs.llvm.org/show_bug.cgi?id=37418 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
* compiler-rt: Let dev package rdep on staticdev packageKhem Raj2018-05-151-0/+3
| | | | | | | | | Let dev package be empty, this should solve the dependency issues when generating SDKs Fixes #51 Signed-off-by: Khem Raj <raj.khem@gmail.com>