summaryrefslogtreecommitdiffstats
path: root/recipes-devtools
Commit message (Collapse)AuthorAgeFilesLines
* use native-clang compiler when building nativesdk-clangDaniel Dittmann2019-08-041-0/+2
| | | | | | | | | Some cmake based steps when building clang uses BUILD_CC, BUILD_CXX variables, which points to gcc even if TOOLCHAIN_class-nativesdk = "clang". This patch sets it to clang if TOOLCHAIN_class-nativesdk = "clang" is set. Signed-off-by: Daniel Dittmann <daniel.dittmann@rohde-schwarz.com>
* clang: Move libclang into its own dedicated package.yoe/mutPiotr Tworek2019-07-261-1/+5
| | | | | | | | | This library has a few potential consimers (ex, qttools) which don't need whole clang install. Distributions like debian already package lbiclang separately as libclang1. This makes even more sense for embedded systems. Do the same for OE/Yocto. Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
* clang: Update to latest on 8.x branchKhem Raj2019-07-221-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.x releaseKhem Raj2019-07-111-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.0 releaseKhem Raj2019-06-241-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lldb: ignore format-security warningsAnuj Mittal2019-06-181-0/+2
| | | | | | | | | | | | | | | | lldb doesn't build when -Wformat-security -Werror=format-security is added/enabled and results in errors with gcc9: | BUILD/build/tmp/work-shared/llvm-project-source-8.0.1-r0/git/lldb/source/Core/Module.cpp: In member function 'size_t lldb_private::Module::FindTypes_Impl(const lldb_private::ConstString&, const lldb_private::CompilerDeclContext*, bool, size_t, llvm::DenseSet<lldb_private::SymbolFile*>&, lldb_private::TypeMap&)': | BUILD/build/tmp/work-shared/llvm-project-source-8.0.1-r0/git/lldb/source/Core/Module.cpp:951:52: error: format not a string literal and no format arguments [-Werror=format-security] | 951 | Timer scoped_timer(func_cat, LLVM_PRETTY_FUNCTION); | | ^ | BUILD/build/tmp/work-shared/llvm-project-source-8.0.1-r0/git/lldb/source/Core/Module.cpp: In member function 'virtual lldb_private::SymbolVendor* lldb_private::Module::GetSymbolVendor(bool, lldb_private::Stream*)': | BUILD/build/tmp/work-shared/llvm-project-source-8.0.1-r0/git/lldb/source/Core/Module.cpp:1052:58: error: format not a string literal and no format arguments [-Werror=format-security] | 1052 | Timer scoped_timer(func_cat, LLVM_PRETTY_FUNCTION); | | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* libcxx: Enable libunwind on mipsKhem Raj2019-05-261-1/+0
| | | | | | This now builds for mips so lets enable it Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.xKhem Raj2019-05-261-1/+1
| | | | | | | | Changes https://github.com/llvm/llvm-project/compare/9124fda0adfec205856a1ecca76d2cead11a0e2c...11c3a5c0f988cc3f412daf13ef8e47d813cc77f1 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: On x86_64 Modify ldso libdir only for target/cross recipesKhem Raj2019-05-191-11/+18
| | | | | | | | This should ensure that builds without uninative work ok Fixes Issue #106 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.0 releaseKhem Raj2019-05-191-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: upgrade to latest on 8.x releaseKhem Raj2019-05-101-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add hf to target tuple if hard float calling convention is usedKhem Raj2019-04-091-1/+4
| | | | | | | | This ensures that right default target is used and one does not need to specify it manually using -target option or -mfloat-abi when using on target Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: support old toolchainsAnuj Mittal2019-04-041-0/+1
| | | | | | | Allows building llvm/clang on Centos7 (gcc4.8) which still is one of the suported distros in YP. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* clang: Add compiler-rt and libcxx-dev to runtime depsKhem Raj2019-04-031-1/+2
| | | | | | | When installing clang to target its important to get these dependencies along with other llvm runtime, so clang can work out of box Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.x releaseKhem Raj2019-03-151-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* update clang to latest 8.x branchKhem Raj2019-03-121-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx, compiler-rt: Use forcevariable to specify TOOLCHAIN overrideKhem Raj2019-03-122-2/+3
| | | | | | | 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>
* openmp: Disable for risc-vKhem Raj2019-03-121-0/+3
| | | | | | | | | Not yet supprorted LIBOMP: libomp_check_variable(): LIBOMP_ARCH = UnknownArchitecture is unknown Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 8.0-rc4Khem Raj2019-03-121-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 8.0-rc3Khem Raj2019-02-271-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt,libcxx: Add --stdlib=libc++ to compiler flagsKhem Raj2019-02-232-7/+8
| | | | | | | | | | - 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>
* clang: Update to latest 8.x releaseKhem Raj2019-02-231-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.x branchKhem Raj2019-02-211-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Implement -fmacro-prefix-mapKhem Raj2019-02-153-0/+564
| | | | | | | OE-core now uses it so, we have to take the patch from review system, until it is in master Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 8.xKhem Raj2019-02-151-1/+1
| | | | 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>
* clang: Update to latest 8.x branchKhem Raj2019-02-1319-29/+30
| | | | | | Forward port ppc/musl patch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Use gold linker for nativersdkKhem Raj2019-02-111-12/+12
| | | | | | | | | | | | | | nativesdk packages are special in OE, where linker pads the dynamic section with additional bits so that can be patched to a relocatable location duting installing SDK, lld will need such a patch if it has to link the nativesdk apps, until then we use gold Add more fine grained packageconfigs for libpfm, ncurses, and libedit Enable clang as toolchain to build nativesdk version of clang with gold linker Signed-off-by: Khem Raj <raj.khem@gmail.com>
* cross,sdk,cross-canadian: Create symlinks for llvm-ar llvm-ranlib llvm-nmKhem Raj2019-02-113-33/+19
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nativesdk-clang-glue: Symlink /lib dir for libgcc_s and friendsKhem Raj2019-02-111-1/+3
| | | | | | Without this -fuse-ld=lld fails to find libgcc_s Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix nativesdk builds to use clang-nativeKhem Raj2019-02-115-13/+43
| | | | | | | | | | - User lld for linking nativesdk-clang - Enable LTO to build nativesdk-clang - Use -static-libgcc when using gold/lld for nativesdk clang build - Use llvm wrappers for ar ranlib and nm to help LTO - Package and create cross versions of lld Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang-nativesdk: Do not default to clang-runtimeKhem Raj2019-02-091-1/+1
| | | | | | | | | | | This make it use same runtime as the cross compiler default, which is more or less what is going to be case, if one wants to use clang runtime then it should be enabled across all clang variants (native/nativesdk/cross) Fixes Issue #66 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable lld for linker during stage2 of clang-native buildKhem Raj2019-02-091-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable 2 stage bootstrap for clang-nativeKhem Raj2019-02-091-5/+23
| | | | | | This will help in using clang Thin-LTO to compile clang itself Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Disable standalone buildKhem Raj2019-02-092-5/+11
| | | | | | | | | | | 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>
* clang: Update to latest 8.xKhem Raj2019-02-091-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable LTO and lld based on distro knobsKhem Raj2019-02-091-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | Add to local.conf or distro config the following to enable lto flavors and lld linker DISTRO_FEATURES += "thin-lto" DISTRO_FEATURES += "full-lto" DISTRO_FEATURES += "lld" Add lto.bbclass To enable LTO is currently per recipe, or globally to enable globally add following to global config meta-data e.g. local.conf INHRIT += "lto" other-wise enable LTO per recipe using inherit lto to recipe via bbappend or in main recipe Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Compiler native and clang for target with Thin-LTO enabledKhem Raj2019-02-071-3/+10
| | | | | | Should speed up compiler speed Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Refresh patches and use static libunwind.a during default linkKhem Raj2019-02-0719-63/+63
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Make libunwind as static libraryKhem Raj2019-02-071-18/+14
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 8.0.0 RC2Khem Raj2019-02-071-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 8.x/rc1Khem Raj2019-02-031-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 8.x release branchKhem Raj2019-02-011-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable a cross version of clang-tidyKhem Raj2019-01-313-0/+3
| | | | | | define CLANG_TIDY_EXE which is used by some build systems e.g. cmake Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm: Add .dword support for aarch64 MCKhem Raj2019-01-312-0/+58
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Add libunwind to linker cmdline when using compiler-rtKhem Raj2019-01-311-6/+9
| | | | | | libunwind also drags in libpthread and libdl so add those too Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to tip of release/8.xKhem Raj2019-01-291-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: link with libgcc_eh.a when using compiler-rtKhem Raj2019-01-271-6/+8
| | | | | | | | | | compiler-rt is not a full replacement for libgcc, it provides the built-ins so we are left with EH and unwinding support to be had from elsewhere, we could use LLVM linunwind but that depends on libpthread so it will end up pulling too many libraries for meantime link with libgcc_eh.a when --rtlib=compiler-rt Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Use -l:lib method to specify libunwind.aKhem Raj2019-01-261-5/+10
| | | | | | This makes sure that linker treats it as a library and not object Signed-off-by: Khem Raj <raj.khem@gmail.com>