| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This reverts commit cb86d1f837f8f8c40e8b00c9c29d136ed6a16a08.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
| |
Keep ON for default behavior
|
|
|
|
|
|
| |
Some handy tools like clang-tidy, clangd, and more
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Pass LLVM_LIBDIR_SUFFIX with the correct value of lib suffix.
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turn off wchar in editline for native and nativesdk
| In file included from /build/poky/build/tmp/work-shared/llvm-project-source-9.0.0-r0/git/lldb/source/Core/IOHandler.cpp:31:0:
| /build/poky/build/tmp/work-shared/llvm-project-source-9.0.0-r0/git/lldb/include/lldb/Host/Editline.h:36:19:
| fatal error: codecvt: No such file or directory
| #include <codecvt>
| ^
wchar causes codecvt to be included, which does not exist on centos7, which
prevents clang-native from building.
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
pkgconfig is needed for detecting libedit
python3-dir is already inherited in python3native so remove it
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
This helps to enable/disable it on demand, currently we have some
problems with stage2 not respecting PYTHON_EXECUTABLE e.g. which can
cause problems when we have non-standard local installs of python, this
should actually be fixed in llvm CMake infra, but we insulate ourselves
here first
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This is to make stage2 as an optional step maybe a packageconfig
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
* with /usr/bin/python -> python2.7 on the host, I was seeing:
CMake Error at work-shared/llvm-project-source-9.0.0-r0/git/lldb/cmake/modules/LLDBConfig.cmake:229 (message):
Found incompatible Python interpreter (2.7) and Python libraries (3.7)
Call Stack (most recent call first):
work-shared/llvm-project-source-9.0.0-r0/git/lldb/CMakeLists.txt:20 (include)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes:
| install: cannot stat ‘/data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/work/x86_64-linux/clang-native/9.0.0-r0/build/bin/clang-tblgen’: No such file or directory
| WARNING: /data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/work/x86_64-linux/clang-native/9.0.0-r0/temp/run.do_install.25108:1 exit 1 from 'install -Dm 0755 /data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/work/x86_64-linux/clang-native/9.0.0-r0/build/bin/clang-tblgen /data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/work/x86_64-linux/clang-native/9.0.0-r0/image/data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/sysroots/x86_64-linux/usr/bin/clang-tblgen'
$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
The location of the tools is as following:
$ pwd
/data/dwrobel1/onemw/onemw/oe-builds/chromium-3/onemw/build-brcm97449svms-refboard/tmp/work/x86_64-linux/clang-native/9.0.0-r0/build
$ find . -name clang-tblgen
./tools/clang/stage2-bins/bin/clang-tblgen
./tools/clang/stage2-bins/NATIVE/bin/clang-tblgen
./NATIVE/bin/clang-tblgen
$ find . -name lldb-tblgen
./tools/clang/stage2-bins/bin/lldb-tblgen
./tools/clang/stage2-bins/NATIVE/bin/lldb-tblgen
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
supply python3 for nativesdk and target recipes
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Its not supported as native host _yet_
CMake Error at cmake/config-ix.cmake:438 (message):
Unknown architecture riscv
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
|
|
|
|
|
| |
This should ensure that right native python infra is used all along
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
oe-core doesnt yet define these variables
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
This helps in extending rules to native/nativesdk recipes
fixes
ERROR: nativesdk-clang-9.0.0-r0 do_package_qa: QA Issue: nativesdk-python-lldb rdepends on nativesdk-clang-dev [dev-deps]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
- Update at the same time to latest on 9.x
- Update patches to drop patch numbers
- Drop lldb from search python interpreter
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This should fix issues where its looking for python in users build host
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes
CMake Error at cmake/modules/CheckCompilerVersion.cmake:105 (message):
libstdc++ version should be at least 5.1 because LLVM will soon use new C++
features which your toolchain version doesn't support. You can temporarily
opt out using LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN, but very soon your
toolchain won't be supported.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without this for some reason lldb configure process manages to mix host
system provided python3 interpreter with libpython provided in
recipe-sysroot-native. As result the build fails with the following
error message:
| -- Found PythonInterp: /usr/bin/python3.6 (found version "3.6.5")
...
| -- Found PythonLibs: /mnt/storage/build-purple/tmp-musl/work/x86_64-linux/clang-native/9.0.0-r0/recipe-sysroot-native/usr/lib/libpython3.7m.so (found version "3.7.4")
| CMake Error at /mnt/storage/build-purple/tmp-musl/work-shared/llvm-project-source-9.0.0-r0/git/lldb/cmake/modules/LLDBConfig.cmake:204 (message):
| Found incompatible Python interpreter (3.6.5) and Python libraries (3.7.4)
| Call Stack (most recent call first):
| /mnt/storage/build-purple/tmp-musl/work-shared/llvm-project-source-9.0.0-r0/git/lldb/CMakeLists.txt:20 (include)
Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps in building lldb which now needs build tree of llvm/clang
to build itself (lldb-tblgen needs the build tree)
Promote RISCV to first class citizen
Package additional files and depend on libedit for lldb
put python lldb files into own package
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
dont package six.py, its provided by python3-six package
default to lp64d ABI and rv64gc ISA.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This will help in using clang Thin-LTO to compile clang itself
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Should speed up compiler speed
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang 8.0 is going to be released in Feb-March 2019
so here we switch to release/8.x branch a bit early
so we can provide some feedback for release to be good on
OE
If one needs to use stable 7.0.1 release please use thud branch
clang 8.0 does have RISC-V backend, enable it
clang: Add building experimental targets e.g. riscv
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
This helps build SDKs for risc-v when meta-clang is in layer mix
even though clang for risc-v may not fully work yet
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
This was trying to build runtime during build but we already have
recipes for libcxx and compiler-rt to do that, unless we merge them into
clang recipe, we need to keep using them to provide nativesdk clang runtime
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an overhaul of clang/llvm project related recipes
* switch to using a flat mono repo for all clang/llvm projects
* Add llvm-project-source recipe which will prepare source tree in
work-shared for all recipes much like kernel and gcc
* build lld as part of clang recipes, its much easier and saves build
time and hopefully nativesdk version will be built now for free
* switch to official git repos at git://github.com/llvm-project
* Adjust all recipes to use shared sources
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Update compiler-rt/llvm/clang/lld licence checksums
Triggerred due to copyright year update to 2018
Add libunwind and libcxxabi license to checksum list too
- Switch to https protocol for fetching from github
- Fix _finite functions on musl
- Package new .so files built with clang
- package libLLVM-${MAJOR_VER}.so as well since llvm-7 generates it
without MINOR_VERSION
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
llvm-config is, by default, broken by the SSTATE_SCAN_CMD. This patch
removes llvm-config from SSTATE_SCAN_FILES.
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
|
|
|
|
|
|
| |
Allow shared or static libs to be selected by package config. Default to shared.
Signed-off-by: Michael Davis <michael.davis@essvote.com>
|
|
|
|
|
|
| |
This is no longer needed
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
|
|
|
|
|
|
|
|
| |
Without this, we get a syntax error when we don't override
LLVM_TARGETS_TO_BUILD_TARGET because LLVM_TARGETS_TO_BUILD_TARGET gets
set as something like "X86X86" instead of "X86;X86".
Signed-off-by: Martin Kelly <mkelly@xevo.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I could not manage to build nativesdk-clang, I encountered errors as
follows: (trimmed for purpose)
| ../gcc/x86_64-pokysdk-linux/6.3.0/ld::
| cannot find crt1.o: No such file or directory
| cannot find crtbegin.o: No such file or directory
| cannot find -lgcc
| cannot find -lgcc_s
After some investigation, I found it's caused by the llvm native tools
could not compile with crosssdk toolchains. (special linking flags
are needed)
So we introduce a cmake-native class with a task to generate a native
toolchain file, it will be used to build llvm native tools by passed
with CROSS_TOOLCHAIN_FLAGS_NATIVE.
Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|