summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | llvm: Check for built-in atomic<double> during configureKhem Raj2019-11-182-0/+34
| | | | | | | | | | | | | | | | | | This helps in deciding on linking libatomic, therefore its important to check for atomic<double> because on x86, clang decides to not use built-in whereas gcc does, so clangd e.g. links ok when using gcc but fails when using clang with gcc-runtime on x86 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | Revert "clangd: Always link with libatomic"Khem Raj2019-11-182-38/+0
| | | | | | | | | | | | This reverts commit 2fdb19c4f8b025d4465d78cdf1bc05d786f5e087. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | gerbera: Always use llvm runtime with clangKhem Raj2019-11-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | It expects libc++ with clang Fixes | CMake Error at CMakeLists.txt:316 (message): | gerbera requires C++17 Optional to be available. Check your compiler is | >=GCC 7.1 or >=libc++ 5 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | ruby: Drop linking with compiler-rt is not needed anymoreKhem Raj2019-11-181-1/+0
| | | | | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | webkitgtk: Use compiler-rt runtime when using clangKhem Raj2019-11-181-0/+1
| | | | | | | | | | | | | | Fixes | /usr/src/debug/webkitgtk/2.26.2-r0/webkitgtk-2.26.2/Source/WTF/wtf/CheckedArithmetic.h:365: error: undefined reference to '__mulodi4' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | m4,ruby: Set COMPILER_RT instead of playing with LDFLAGSKhem Raj2019-11-181-2/+3
| | | | | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | clangd: Always link with libatomicKhem Raj2019-11-182-0/+38
| | | | | | | | | | | | Since it uses double atomics which are not available yet as intrinsics Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | clang.bbclass: Define RUNTIME variable to select compiler runtimeKhem Raj2019-11-181-6/+8
| | | | | | | | | | | | | | RUNTIME can be 'llvm' or 'gnu' defaults to 'gnu' Use this variable for selecting stdc++ and c runtime Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | Revert "clang: Do not lock clang as only cross compiler option"Khem Raj2019-11-181-0/+1
| | | | | | | | | | | | This reverts commit cb86d1f837f8f8c40e8b00c9c29d136ed6a16a08. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | tinymembench: Disable internal assembler on mipsKhem Raj2019-11-181-0/+1
| | | | | | | | | | | | | | | | | | Fixes mips-32.S:108:15: error: invalid reassignment of non-absolute variable 'DST' | .set DST, $a0 | ^ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | clang: Do not lock clang as only cross compiler optionKhem Raj2019-11-181-1/+0
| | | | | | | | | | | | | | | | clang might be used for more than just static compiler on target and therefore lock-stepping it with needing clang cross-compiler is not right thing Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | clang: make libedit optionalYong, Jonathan2019-11-181-5/+6
|/ | | | | | | | | | Allows libedit to dependency to be disabled via PACKAGECONFIG_remove. add libedit to native and nativesdk packageconfigs Signed-off-by: Yong, Jonathan <jonathan.yong@intel.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* mesa: Convert configure options to meson equivalentsKhem Raj2019-11-141-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Provide llvm/llvm-nativeKhem Raj2019-11-143-4/+21
| | | | | | | | | | | | | | | | | | | When using meta-clang, it makes sense to use llvm provided by clang recipe, this ensures that we do not build llvm from oe-core but instead offer the one from clang recipe enable rtti and eh for native/nativesdk clang, this is needed for mesa to build Let clang PROVIDE llvm Build AMDGNU and other targets, this is needed for llvm-config to work properly, since we use llvm-config from clang-native, so its better to build the targets that are built for clang-native atleast create version specific symlinks for tblgen anf llvm-config Signed-off-by: Khem Raj <raj.khem@gmail.com>
* layer.conf: Drop release older than zeus from compatiblityKhem Raj2019-11-131-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Merge libunwind back into libcxxKhem Raj2019-10-093-98/+15
| | | | | | | | Do not export libunwind to other recipes besides libcxx itself, we use non-gnu libunwind on linux in general and its not a drop in replacement as of yet Signed-off-by: Khem Raj <raj.khem@gmail.com>
* gstreamer1.0-libav: Use internal assemblerKhem Raj2019-10-081-5/+0
| | | | | | | This helps compiling on some arches e.g. aarch64 | /tmp/vp9_superframe_split_bsf-a989f9.s:701: Error: selected processor does not support `bfc w3,#24,#8' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nonclangable: Use libgcc for libc-bench, aufs-util, libhugetlbfs, tsocksKhem Raj2019-10-081-0/+4
| | | | | | | | | They do static linking, and when linking with glibc it expects intrinsics from libgcc since we do not use clang to build glibc this is not an issue on musl since we use clang to build most of musl ports Signed-off-by: Khem Raj <raj.khem@gmail.com>
* README.md: Define a way to disable llvm/clang runtimeKhem Raj2019-10-081-2/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix openmp build on armv7veKhem Raj2019-10-0625-37/+63
| | | | | | Refresh patches on latest release/9.x branch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Remove editing THUMB_TUNE_CCARGSKhem Raj2019-10-025-10/+0
| | | | | | THUMB_TUNE_CCARGS is gone from oe-core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Add packageconfig for compiler-rt useKhem Raj2019-10-021-4/+4
| | | | | | | | | | This helps in disabling compiler-rt e.g. on risc-v if we need to enable exceptions then we need to use libgcc_s, since llvm-libunwind is not yet ported to risc-v For ppc, enable compiler-rt Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-linunwind: Enable build on ppcKhem Raj2019-10-021-1/+0
| | | | | | This works fine with 9.x release now Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Introduce packageconfigs for unwind and exceptions atomics supportKhem Raj2019-10-021-29/+16
| | | | | | Fix build on armv5 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* layer.conf: Fix bbpath for browser-layerKhem Raj2019-10-011-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* chromium: Use libgcc for unwindingKhem Raj2019-10-013-5/+2
| | | | | | using llvm libunwind ends up in aborts Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Pass OE LDFLAGS via CMAKE_SHARED_LINKER_FLAGSKhem Raj2019-10-011-6/+7
| | | | | | | | | | | setting these flags via CMake cmdline means that LDFLAGS that OE expects to insert via environment wont be respected anymore, therefore its better to pass it along during configure, so we get the desired flags into linker Fixes Issue #188 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nonclangable.conf: Use llvm libunwind with perfKhem Raj2019-10-011-3/+0
| | | | | | No need to shun out llvm libunwind for perf Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang-runtime: Use INHIBIT_DEFAULT_DEPS = "1"Khem Raj2019-10-014-6/+19
| | | | | | | 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>
* clang: add rtti and eh as packageconfigMaxime Roussin-Bélanger2019-09-301-2/+3
| | | Keep ON for default behavior
* perf: Use nongnu libunwind alwaysKhem Raj2019-09-282-1/+3
| | | | | | llvm is not tested yet with this package Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-libunwind: Fix linunwind providersKhem Raj2019-09-282-2/+8
| | | | | | | | | | | | libunwind can be either nongnu libunwind ( from OE-Core ) or from llvm and when using clang and using --unwindlib=libunwind we know we have to use llvm libunwind implementation, so remove libunwind from DEPENDS and add llvm-libunwind to depends Drop providing libunwind from llvm-libunwind since its not needed anymore Signed-off-by: Khem Raj <raj.khem@gmail.com>
* runtime: Automatically add llvm-libunwind based on COMPILER_RT asking for ↵Khem Raj2019-09-284-24/+9
| | | | | | --unwindlib=libunwind Signed-off-by: Khem Raj <raj.khem@gmail.com>
* README: Document CLANGSDKKhem Raj2019-09-251-0/+10
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add variable CLANGSDK to control including clang in SDKKhem Raj2019-09-254-14/+7
| | | | | | | | | | | | | | CLANGSDK ?= "1" is default which means clang will be included into SDK if one is using clang only for full build and dont intend to distribute it as cross compiler SDK then set CLANGSDK = "" in local.conf or in another config metadata file Signed-off-by: Khem Raj <raj.khem@gmail.com>
* mongodb: Use gcc to compile it for nowKhem Raj2019-09-241-1/+2
| | | | | | | | | | | | | | | | | It doesn't seem to have needed c++17 features that mongodb needs src/mongo/stdx/new.h:53:12: error: no member named 'hardware_constructive_interference_size' in namespace 'std' using std::hardware_constructive_interference_size; ~~~~~^ src/mongo/stdx/new.h:54:12: error: no member named 'hardware_destructive_interference_size' in namespace 'std' using std::hardware_destructive_interference_size; ~~~~~^ clang build fails to link aarch64-yoe-linux-ld.gold: error: build/opt/mongo/s/mongos_options.o: multiple definition of 'mongo::error_details::isNamedCode<0>' Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable clang-tools-extraKhem Raj2019-09-241-1/+1
| | | | | | Some handy tools like clang-tidy, clangd, and more Signed-off-by: Khem Raj <raj.khem@gmail.com>
* layer.conf: Add zeus to known compatible layersKhem Raj2019-09-231-1/+1
| | | | | | Upcoming 3.0 is code named zeus Signed-off-by: Khem Raj <raj.khem@gmail.com>
* layers: Add meta-browser to dynamic layersKhem Raj2019-09-233-0/+10
| | | | | | | | | | meta-browser/master builds with multiple releases of meta-clang(thud,warrior,master) but sometimes we only need tweaks for a given clang version, this helps doing so Enable lld as default linker Signed-off-by: Khem Raj <raj.khem@gmail.com>
* chromium: Use libgcc unwinder on armKhem Raj2019-09-211-0/+6
| | | | | | It crashes with out this Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to final 9.0.0 releaseKhem Raj2019-09-211-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-libunwind: Provide libunwindKhem Raj2019-09-191-0/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm-libunwind: New reecipe for llvm unwinder split from libcxxKhem Raj2019-09-193-34/+103
| | | | | | | Its easier to provide it as replacement for nongnu libunwind bundled into libcxx was getting harder when it came to replacement Signed-off-by: Khem Raj <raj.khem@gmail.com>
* kernel-selftest: Reset EXCLUDE_FROM_WORLDKhem Raj2019-09-181-0/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang.bbclass: Do not set LIBCPLUSPLUS and COMPILER_RT when compiler != clangKhem Raj2019-09-182-8/+16
| | | | | | | | | | | | | * Add compiler-rt and libcxx only when these libs are used via cmdline * libffi still need to disable internal asm on arm <= v6 * Add compiler-rt to linker only when compiler-rt is used in compiler cmdline * Set BASE_DEFAULT_DEPS instead of munging BASEEDEPENDS directly Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: pass PYTHON_EXECUTABLE to target as wellAnuj Mittal2019-09-183-0/+27
| | | | | | | Also make sure that we pass this value on to an internal native build that tries to detect python while cross-compiling. Signed-off-by: Anuj Mittal <anuj.mittal@intel.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>
* libcxx: support multilibAnuj Mittal2019-09-181-1/+2
| | | | | | Use LLVM_LIBDIR_SUFFIX with the correct value of suffix derived using baselib. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* clang: support multilibAnuj Mittal2019-09-181-0/+1
| | | | | | Pass LLVM_LIBDIR_SUFFIX with the correct value of lib suffix. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* Update to latest on 9.xKhem Raj2019-09-161-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>