summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/clang_git.bb
Commit message (Collapse)AuthorAgeFilesLines
* llvm: Fix wrong code generation when floor() libm function is calledpyroKhem Raj2017-09-211-0/+1
| | | | | | | see https://reviews.llvm.org/D38050 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* 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: 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>
* 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>
* 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-211-1/+8
| | | | | | | 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-211-6/+1
| | | | | | | | | | | | | | | | | | | | | | 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-161-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix cross compiler search path for compiler-rtKhem Raj2017-03-161-0/+1
| | | | | | | | 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>
* clang/compiler-rt: Use compiler-rt and libcxx as default runtime for target ↵Khem Raj2017-03-161-2/+15
| | | | | | | | clang One can still use -stdlib=libstdc++ and -rtlib=libgcc to use gcc runtime 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>
* 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>
* 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: 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>
* 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-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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/llvm: Switch to 4.0.0 development versionKhem Raj2016-10-151-3/+0
| | | | | | 3.9 is now branched for morty Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm: Fix cfi erros for ARM seen with binutils 2.27Khem Raj2016-08-071-0/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang-3.9: Remove unneeded flags for targetKhem Raj2016-07-291-10/+10
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 3.9Khem Raj2016-07-041-4/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* llvm/clang: Upgrade to latest tip on 3.9Khem Raj2016-06-251-5/+3
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on svnKhem Raj2016-06-151-1/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix AEABI helper calling convention for musl targetsDominic Sacré2016-06-141-0/+1
| | | | | | | | AEABI floating point helper functions always use AAPCS (soft-float) calling convention. Recognize MUSLEABI targets to fix the code generated for musl-based hard-float builds. Signed-off-by: Dominic Sacré <dominic.sacre@gmx.de>
* clang: don't depend on native perl or pythonRoss Burton2016-05-241-1/+3
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Package cmake files in devel packageKhem Raj2016-05-211-0/+1
| | | | | | | | | | | | | Fixed QA warning e.g. ERROR: QA Issue: clang: Files/directories were installed but not shipped in any package: /usr/lib/cmake /usr/lib/cmake/clang /usr/lib/cmake/llvm /usr/lib/cmake/clang/ClangTargets-release.cmake /usr/lib/cmake/clang/ClangConfig.cmake Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix build with muslKhem Raj2016-05-211-2/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Switch to master (3.9) branchKhem Raj2016-05-201-9/+8
| | | | | | Drop upstreamed patches Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang_git.bb: Add dep on clang-native to clangDmitry Rozhkov2016-05-161-0/+1
| | | | | | | Otherwise llvm-tblgen cannot be found if clang happens to be built before clang-native. Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
* clang: backport -I= supportDaniel McGregor2016-05-101-0/+1
| | | | | | | | | | This solves some clang issues. A few recipes rely on gcc's -I= syntax. This is a backport of the feature to the 3.8 branch. It's already in 3.9. See https://llvm.org/bugs/show_bug.cgi?id=26965 Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
* clang: use 64bit long double on ppc/muslKhem Raj2016-05-101-0/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix build for 64bit targetsKhem Raj2016-05-101-0/+1
| | | | | | | | | | ldso was not as per OE norms when building for 64bit machines. This patch makes the baselib point to /lib and fixes the issue it also means that the apps wont work for mutlilib where baselib != /lib Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Adjust to build master recipes as wellKhem Raj2016-05-021-4/+4
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix indentation and return code from loopsKhem Raj2016-04-201-11/+13
| | | | | | Potentially fixes #16 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Emit correct ldso name on musl targetsKhem Raj2016-03-311-0/+2
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Fix build on muslKhem Raj2016-03-151-1/+5
| | | | | | Move -L flags to LDFLAGS, avoid compiler warnings Signed-off-by: Khem Raj <raj.khem@gmail.com>
* fix qa/package warningYi Qingliang2016-03-091-0/+2
|
* remove empty directory when installing nativesdkYi Qingliang2016-03-041-3/+4
|
* rename 'CLANG_GIT' 'CLANG_GIT_PROTOCOL' to 'LLVM_GIT' 'LLVM_GIT_PROTOCOL'Yi Qingliang2016-03-011-2/+2
| | | | Signed-off-by: Yi Qingliang <niqingliang2003@gmail.com>
* use variable 'CLANG_GIT' and 'CLANG_GIT_PROTOCOL'Yi Qingliang2016-02-291-2/+2
| | | | Signed-off-by: Yi Qingliang <niqingliang2003@gmail.com>
* clang: Use SRCPV where git fetcher is usedKhem Raj2016-02-271-0/+13
| | | | | | Move libunwind to 3.8 branch and set SRCREV in clang.inc Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Move common bits to clang.incKhem Raj2015-08-221-4/+0
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Enable INHIBIT_DEFAULT_DEPSKhem Raj2015-08-211-0/+2
| | | | | | | We need to ignore default deps since we are building clang-native pretty early and it really doesnt need cross compilers dependencies etc. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on release_37 branchKhem Raj2015-08-051-3/+2
| | | | | | Drop the upstreamed patches Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to tip of 3.7 release branchKhem Raj2015-07-231-2/+3
| | | | | | | | | | Dont stage cmake helper files for nativesdk build they are also poked at by clang-crosssdk and wrong values are inferred since the values are meant for SDKMACHINE and not for native build host so all paths come out incorrect and builds fails for nativesdk packages Therefore we do not stage llvm cmake files Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Switch to 3.7 branchKhem Raj2015-07-141-4/+3
| | | | | | 3.7 release branch has been created. Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest tip of master 3.7Khem Raj2015-07-101-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add fix for missing is_pod definition and additionally fix packaging for nativesdk PACKAGE_DEBUG_SPLIT_STYLE_class-nativesdk = "debug-without-src" Fixes errors like ERROR: debugedit failed with exit code 256 (cmd was '/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysr oots/x86_64-linux/usr/lib/rpm/bin/debugedit' -b '/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/x86 _64-nativesdk-angstromsdk-linux' -d '/usr/src/debug' -i -l '/mnt/home/kraj/work/angstrom/build/tmp-angstrom-gli bc/work/x86_64-nativesdk-angstromsdk-linux/nativesdk-clang/3.7.0-r0/debugsources.list' '/mnt/home/kraj/work/ang strom/build/tmp-angstrom-glibc/work/x86_64-nativesdk-angstromsdk-linux/nativesdk-clang/3.7.0-r0/package/usr/loc al/oecore-x86_64/sysroots/x86_64-angstromsdk-linux/usr/lib/libLTO.so.3.7.0svn'): /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/lib/rpm/bin/debugedit: canonica lization unexpectedly shrank by one character see http://lists.openembedded.org/pipermail/openembedded-core/2013-April/077746.html Signed-off-by: Khem Raj <raj.khem@gmail.com>