summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/llvm
AgeCommit message (Collapse)Author
2019-04-03llvm: fix link error for powerpcChangqing Li
fix below link error for powerpc lib/libLLVMSupport.a(CommandLine.cpp.o): in function `llvm::cl::opt_storage<(anonymous namespace): :HelpPrinterWrapper, true, true>::setLocation(llvm::cl::Option&, (anonymous namespace)::HelpPrinterWrapper&) [clone .isra.189]': /usr/src/debug/llvm/8.0-r0/git/llvm/include/llvm/Support/CommandLine.h:1218:(.text.startup+0x5c): relocation truncated to fit: R_PPC_PLTREL24 against symbol `llvm::errs()' defined in .text section in lib/libLLVMSupport.a(raw_ostream.cpp.o)+8000 lib/libLLVMSupport.a(CommandLine.cpp.o): in function `setLocation': Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29llvm: fix more places where '8.0' version of llvm was hardcodedAlexander Kanavin
So that it says '8.0.0' to reflect the recent PV change. Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29llvm: support older toolchainsRoss Burton
LLVM is now warning if your host compiler is gcc <5.1, and some of our supported operating systems still only have 4.8.5. Set LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN so those builds continue to work, hopefully we retire the old operating systems before LLVM requires 5.1+. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29llvm: update from 8.0.0rc2 to 8.0.0 final releaseAlexander Kanavin
Also, update PV to match the version scheme used by upstream to tag releases (e.g. major.minor.patch). Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29llvm: don't inherit perlnativeRoss Burton
This doesn't appear to be required at all. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-29llvm: doesn't actually need pythonnativeRoss Burton
LLVM doesn't actually need pythonnative, the host Python2 is sufficient but cmake's executable searching currently isn't reliable in cross-compilations. Convince cmake by setting PYTHON_EXECUTABLE to point at python2 in the HOSTTOOLS directory. Note that currently LLVM *needs* python2 currently: https://github.com/llvm-mirror/llvm/blob/master/CMakeLists.txt#L670 Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-24llvm: Enable RTTI support in preparation for new mesaOtavio Salvador
The mesa 19.0.0 release requires RTTI to allow the build of Nouveau driver, which is enabled by default when building for x86 and x86-64 target. This commit enables RTTI support so it prepares the toolchain for the upcoming change. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-25llvm: switch to the official git repositoryAlexander Kanavin
Until now an unoffcial mirror was used, which may or may not be maintained in the longer run, as the need for it has gone. Also, the official mirror has version tags which allows us to track upstream development in an automated manner. ${S} has changed as upstream decided to use a monorepo for all of the llvm-related projects. Further info: https://www.phoronix.com/scan.php?page=news_item&px=LLVM-GitHub-Mono-Repo https://llvm.org/docs/GettingStarted.html#checkout-llvm-from-git Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-03llvm,mesa: Upgrade to upcoming 8.0.0 releaseKhem Raj
License-Update: Copyright year updates from 2017-2019 Refresh patches to apply on new version mesa move dep to the llvm release to 8.0 Needs to happen along with llvm upgrade always Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-14meta: Fix Deprecated warnings from regexsRichard Purdie
Fix handling of escape characters in regexs and hence fix python Deprecation warnings which will be problematic in python 3.8. Note that some show up as: """ meta/classes/package.bbclass:1293: DeprecationWarning: invalid escape sequence \.   """ where the problem isn't on 1293 in package.bbclass but in some _prepend to a package.bbclass function in a different file like mesa.inc, often from do_package_split() calls. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21llvm: Enable AMDGPU backend for native/native-sdk builds tooKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-21llvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for buildsKhem Raj
LLVM_TARGETS_TO_BUILD is needed to represent HOST_ARCH for builds and target specific additions should use class-target override Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20llvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in llvm-configKhem Raj
llvm-config is a tool on similar veins as pkg-config but provides a lot more information and packages which use llvm e.g. mesa use this tool to poke for llvm related informaiton e.g. version, libpath, includepaths to name a few, this has few challanges in cross build environments where llvm-config is supposed to be build for buildhost but provide information about target llvm which is addressed by building native llvm-config along with target llvm build, but this is frowned upon by OE build system since it detects that host paths are being used so we have to build it as part of llvm-native but then it means install paths for llvm and llvm-native are different and wrong paths get reported when llvm-config is used. This is solved by providing YOCTO_ALTERNATE_EXE_PATH variable to let llvm-config use that path instead of self-relative path to report back Second problem is when building multi-lib packages base_libdir is different for target packages but native llvm-config does not know about it so it reports non-multilibbed paths as libdir and packages can not find llvm in sysroot. This is fixed by adding another environment variable YOCTO_ALTERNATE_MULTILIB_NAME which can be set from recipes to set proper multilib path Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-20llvm: Point llvm-config to one built with llvm-nativeKhem Raj
If not defined, llvm build system tries to build one which then confuses the OE QA system since its building native tool and target packages in same package build moreover it is not required since we already have it via llvm-native Fixes ERROR: llvm-6.0-r0 do_package_qa: QA Issue: llvm: The compile log indicates that host include and/or library paths were used. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16llvm: Update to 6.0.1Khem Raj
Drop upstreamed patch Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-04llvm: Fix [compile-host-path] QA issueKhem Raj
Its trying to build NATIVE llvm-config which is already built with llvm-native so we do not need to rebuild it Drop setting NINJA_STATUS explicitly, its no longer needed, on the contrary it hinders the task status update Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-04-05llvm: Upgrade to 6.0 releaseKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-11-29oe-core: take UPSTREAM_CHECK_COMMITS into use where possibleAlexander Kanavin
This greatly reduces the amount of recipes for which upstream version check fails: from about 30 to about 8. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-05llvm: Use the SRCREV past final 5.0 releaseKhem Raj
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-09-25meta: drop True option to getVar callsMing Liu
Search made with the following regex: getVar ?\((.*), True\). Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-16llvm: Swith to ARM ISA on armv5 and armv4tKhem Raj
When Thumb1 is used as default ISA, there are linker issues, therefore always use ARM ISA Fixes relocation truncated to fit: R_ARM_THM_CALL against symbol `__gnu_thumb1_case_uhi' defined in .text section Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-16selftest: fix distrodata.py to use per-recipe UPSTREAM_VERSION_UNKNOWN settingAlexander Kanavin
... instead of a global exception list which was problematic. [YOCTO #11896] Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-11llvm: Keep llvm-native dependency with clang toolchainKhem Raj
This was needed when we were conflicting with clang-native but this is solved via append PN to binaries of llvm-native Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-09llvm: Raise SkipRecipe exception for unsupported architecturesNathan Rossi
When parsing this recipe on an unsupported or non-mappable architecture an error is generated despite no dependencies on the recipe. E.g. ERROR: .../llvm_git.bb: cannot map 'microblazeel' to a supported llvm architecture Instead of generating an error which might confuse users, raise a SkipRecipe exception similar to other arch-style mapping functions (e.g. go_map_arch). This avoids showing the error during parse, and prevents the use of the recipe on unsupported targets. Resulting in an error like so when trying to build llvm: ERROR: Nothing PROVIDES 'llvm' llvm was skipped: Cannot map 'microblazeel' to a supported LLVM architecture Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-09mesa, llvm: Use native version of llvm-configKhem Raj
We have a variable YOCTO_ALTERNATE_EXE_PATH to point to target sysroot, utilize this in mesa to use native version of llvm-config to report values from target sysroot. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-31llvm: Add recipe for 5.0Khem Raj
Based on recipe from meta-oe and clang recipe from meta-clang Needed by mesa Fixes [YOCTO #11529] Signed-off-by: Khem Raj <raj.khem@gmail.com>