summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang
Commit message (Collapse)AuthorAgeFilesLines
* llvm: Fix wrong code generation when floor() libm function is calledpyroKhem Raj2017-09-213-4/+157
| | | | | | | see https://reviews.llvm.org/D38050 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* nativesdk-clang-glue: Disable debug packagingOtavio Salvador2017-08-251-0/+1
| | | | | | | | | | | | | | | | This package does not provide binary files and is just to glue the paths for proper use by Clang so disabling debug avoids the packaging error we were seeing: ,---- | ERROR: nativesdk-clang-glue-4.0.0-r0 do_package: File | './usr/lib/debug' cannot be packaged into 'nativesdk-clang-glue-dbg' | because its parent directory structure does not exist. One of its | parent directories is a symlink whose target directory is not included | in the package. `---- Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* nativesdk-clang-glue: Fix indenting of codeOtavio Salvador2017-08-251-4/+4
| | | | | | We were mixing tabs and spaces. Now we moved to use spaces only. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* clang: Handle return the clang arch for arm correctlyKhem Raj2017-05-181-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix get_clang_arch() to address OE target arch combosKhem Raj2017-05-181-15/+10
| | | | | | Use regular expressions for mapping to a llvm arch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Change LLVM_TARGETS_TO_BUILD to build everything by defaultKhem Raj2017-05-181-8/+9
| | | | | | | | | | | | | | | | | | | | As described in issue #33, LLVM_TARGETS_TO_BUILD should include build host as well as target arches and that fails since we build clang-native once for all due to its inherent cross compilable nature if one needs to limit the targets please set it in local.conf or via a bbappend in own layer e.g. LLVM_TARGETS_TO_BUILD = "ARM" if you only need 32bit arm or LLVM_TARGETS_TO_BUILD = "ARM;Aarch64" in case of both arm 32bit and 64bit fixes #33 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/llvm: Upgrade to 4.0.1 releaseKhem Raj2017-05-161-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: update for cmake changes in oe-coreRoss Burton2017-05-051-6/+1
| | | | | | | | | | | cmake.bbclass in oe-core master (soon to be Pyro) doesn't set CMAKE_CROSSCOMPILING unconditionally, but only when it's actually cross-compiling. This means the clang-native build doesn't think it's cross-compiling, so the recipe can be simplified. Signed-off-by: Ross Burton <ross.burton@intel.com>
* compiler-rt: Disable xray for nowKhem Raj2017-04-151-0/+1
| | | | | | | | | | | | | | | | Fails on some arches e.g. rpi3 /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/compiler-rt/4.0.0+gitAUTOINC+1fdc27db84-r0/git/lib/xray/xray_inmemory_log.cc:88:33: error: unknown type name 'L' std::lock_guard<std::mutex> L(LogMutex); ^ /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/compiler-rt/4.0.0+gitAUTOINC+1fdc27db84-r0/git/lib/xray/xray_inmemory_log.cc:182:26: error: no member named 'mutex' in namespace 'std' std::lock_guard<std::mutex> L(LogMutex); ~~~~~^ /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/compiler-rt/4.0.0+gitAUTOINC+1fdc27db84-r0/git/lib/xray/xray_inmemory_log.cc:182:33: error: unknown type name 'L' std::lock_guard<std::mutex> L(LogMutex); ^ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang,llvm: update to latest on 4.0 releaseKhem Raj2017-04-141-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: remove binutils from DEPENDS.Ismo Puustinen2017-03-231-1/+3
| | | | | | | Binutils is not needed during compile time. Add it instead to RRECOMMENDS_clang. Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
* lldb: Fix build with muslKhem Raj2017-03-222-0/+31
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lldb: Apply needed patches to llvm/clangKhem Raj2017-03-221-0/+17
| | | | | | helps in building lldb for musl Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: allow override for not building all targetsMartin Kelly2017-03-211-6/+18
| | | | | | | | | | | | | Allow the user to not build all clang target architectures (by default, all architectures are built). This speeds up build times and reduces image size. Note, however, that the set of architectures built must still be the same between the native and cross clang, because the native llvm-config reports --targets-built according to what "clang-native" supports. Thus when we have target libraries that are a subset of native libraries, the cross llvm-config will fail because it can't find some of the libraries that the native llvm-config finds. Signed-off-by: Martin Kelly <mkelly@xevo.com>
* clang: build libLLVM.soMartin Kelly2017-03-213-9/+18
| | | | | | | It's useful to have a shared library version of LLVM for programs that require it. Signed-off-by: Martin Kelly <mkelly@xevo.com>
* clang: fix the llvm-common wrapperMartin Kelly2017-03-213-14/+70
| | | | | | | | | | | | | | | | | | | | | | The llvm-common wrapper refers to the LLVM_WANT_RELEASE variable, which is not actually exported, so it fails. In addition, meta-clang does not support multiple side-by-side LLVM versions anyway, so the logic isn't really needed. After fixing these issues, I discovered that llvm-config doesn't cross-compile properly without more extensive wrapping. Specifically, the native llvm-config supplies --libdir, and other arguments relative to its current executable path, so it points into the native sysroot rather than the target sysroot. In addition, it supplies the native rather than the target compile CFLAGS, LDFLAGS, etc. Fix these issues by doing the following: - Alter the llvm-config to intercept certain flags, such as --cflags, while passing on other flags to the native llvm-config. - Patch llvm-config to be able to specify an alternate root location on which to base --libdir, etc. in order to optionally point into the target sysroot when needed. Signed-off-by: Martin Kelly <mkelly@xevo.com>
* clang: remove commented-out codeMartin Kelly2017-03-211-15/+0
| | | | Signed-off-by: Martin Kelly <mkelly@xevo.com>
* clang: correct spacing issueMartin Kelly2017-03-211-2/+2
| | | | Signed-off-by: Martin Kelly <mkelly@xevo.com>
* clang/compiler-rt: Fix nativesdk builds break compiler-rt dep for clangKhem Raj2017-03-162-1/+6
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add clang runtime to dependencies when toolchain is clangKhem Raj2017-03-164-0/+12
| | | | | | A step towards unplugging gcc runtime Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix cross compiler search path for compiler-rtKhem Raj2017-03-162-0/+42
| | | | | | | | It was looking into compiler install area but for OE cross compiling scenario the compiler runtime is installed into target sysroot, Fix clang to look into sysroot Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Remove INHIBIT_DEFAULT_DEPSKhem Raj2017-03-164-12/+5
| | | | | | | Depend on clang for build runtime libs Build gobject-introspection for armv7 using gcc Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/compiler-rt: Use compiler-rt and libcxx as default runtime for target ↵Khem Raj2017-03-165-49/+78
| | | | | | | | clang One can still use -stdlib=libstdc++ and -rtlib=libgcc to use gcc runtime Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lld: Add recipe for llvm linker (lld)Khem Raj2017-03-142-0/+50
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Disable using shared libs for llvm on targetKhem Raj2017-03-131-1/+2
| | | | | | Slows down compilation by 6x Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix install locations where clang looks for itKhem Raj2017-03-092-7/+8
| | | | | | | | | | This fixes building with clang using compiler-rt on target clang++ --rtlib compiler-rt --stdlib libc++ -lunwind hello.cpp would compile and run on target Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Use TATGET_SYS instead of just TARGETKhem Raj2017-03-081-1/+1
| | | | | | | | | | | We need full triplet for it to use right linker/assembler for complete compile step, otherwise it invokes gcc to do linking and that confuses options e.g. pasing -Wa,--noexecstack gets passed to gcc during link, this is a gnu assembler option gcc: error: unrecognized command line option ‘--noexecstack’; did you mean ‘--no-backtrace’? Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Add dependency on native pythonKhem Raj2017-03-081-1/+1
| | | | | | | | Fixes | /bin/sh: PYTHON_EXECUTABLE-NOTFOUND: command not found Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Disable XRAY on muslKhem Raj2017-03-081-2/+1
| | | | | | | XRAY depends on common pieces of sanitizers which need obstack stuff from glibc so we are going to disable everything thats sanitizers Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm,libunwind: Update to 4.0.0-rc4Khem Raj2017-03-071-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/llvm: Update to 4.0.0 rc3Khem Raj2017-03-031-3/+3
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Configure for target correctlyKhem Raj2017-02-281-0/+1
| | | | | | | | | | | Fixes #26 Configuring a default target to match the target is needed since we are cross building clang to run on target by default it chooss the build host as target Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 4.0 release candidateKhem Raj2017-02-271-4/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* lldb: Add recipeKai Ruhnau2017-02-272-0/+52
| | | | | | | lldb is llvm based native debugger Signed-off-by: Kai Ruhnau <kai.ruhnau@target-sg.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: set target DEPENDS for gcc TOOLCHAINMikko Ylinen2017-02-131-1/+1
| | | | | | | | | | | With the layer defaults (TOOLCHAIN ??= gcc) clang for target fails to build due to missing compilers in the native (recipe specific) sysroot. Set the necessary additional DEPENDS if TOOLCHAIN = gcc to get the compilers installed. Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com>
* llvm-libunwind: Fix license checksumKhem Raj2017-02-111-1/+1
| | | | | | Year changed to 2017 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* compiler-rt: Fix build with mips/mips64Khem Raj2017-02-112-0/+45
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx,libcxxabi: Update LIC_FILES_CHKSUMKhem Raj2017-02-092-2/+2
| | | | | | Update year to 2017 in text Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 4.0.0 rc2Khem Raj2017-02-081-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/llvm: Upgrade to latest on 4.0 branchKhem Raj2017-02-021-4/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: rss unveiled a missing DEPENDS entries for compilerKhem Raj2017-02-021-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 4.0 branch and fix build with recipe specific sysrootKhem Raj2017-01-273-5/+44
| | | | | | | | | | | | | | | | | | | | | | | | clang was searching for <install-dir>/../lib for target libs this started to break when rss changed the location of cross compiler to be inside package build dir and suddenly the prefix for target sysroot and cross compiler install path fall under same path. Fixes issues like | arm-oe-linux-gnueabi-clang++ -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 -mlittle-endi an -march=armv7a -D__extern_always_inline=inline -no-integrated-as -Wno-error=unused-command-line-argu ment --sysroot=/mnt/a/build/tmp-glibc/work/cortexa7t2hf-neon-vfpv4-oe-linux-gnueabi/gptfdisk/1.0.1-r0/ recipe-sysroot crc32.o support.o guid.o gptpart.o mbrpart.o basicmbr.o mbr.o gpt.o bsd.o parttypes.o a ttributes.o diskio.o diskio-unix.o cgdisk.o gptcurses.o -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed - fstack-protector-strong -Wl,-z,relro,-z,now -luuid -lncursesw -o cgdisk | /mnt/a/build/tmp-glibc/work/cortexa7t2hf-neon-vfpv4-oe-linux-gnueabi/gptfdisk/1.0.1-r0/recipe-sysroo t-native/usr/bin/../lib/libncursesw.so.5: file not recognized: File format not recognized | clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation) | make: *** [Makefile:21: cgdisk] Error 1 Here it picked libncursesw.so.5 from native sysroot which is wrong for cross compile Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update md5sum for llvm from 4.0 releaseKhem Raj2017-01-191-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/llvm: Switch to 4.0 release branchKhem Raj2017-01-191-7/+7
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 4.0Khem Raj2017-01-051-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrad to tip of 4.0Khem Raj2016-12-311-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest master tipKhem Raj2016-12-241-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to tip of 4.0Khem Raj2016-12-144-20/+20
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latestKhem Raj2016-12-021-5/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang/llvm: Update to latest on trunkKhem Raj2016-11-251-4/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>