| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
this will simplify things with UNPACKDIR and shared sources for all llvm
derived recipes
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
LLVM - https://github.com/llvm/llvm-project/blob/release/18.x/llvm/docs/ReleaseNotes.rst
Clang - https://github.com/llvm/llvm-project/blob/release/18.x/clang/docs/ReleaseNotes.rst
libc++ - https://github.com/llvm/llvm-project/blob/release/18.x/libcxx/docs/ReleaseNotes/18.rst
lld - https://github.com/llvm/llvm-project/blob/release/18.x/lld/docs/ReleaseNotes.rst
extra - https://github.com/llvm/llvm-project/blob/release/18.x/clang-tools-extra/docs/ReleaseNotes.rst
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
libLLVM-18.so and libLLVM.so are symlinks to
libLLVM.so.18.1, here we make libLLVM-18.so
part of libLLVM package so packaging works without
warnings about dev-so
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
clangd should not be needed in target builds. Extend PACKAGECONFIG to
enable selective disabling and disable it by default for target builds.
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
|
|
|
|
|
|
|
|
| |
Move common PACKAGECONFIG default values into a dedicated variable and
sort values alphabetically (hopefully making it easier to figure out
where to add a new value when extending the variable).
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
|
|
|
|
|
|
| |
TC_CXX_RUNTIME is now defined in OE-core
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Install and package clang-indexer and de-absolutify llvm-lit location in
LLVMConfig.cmake file
Package clangd-indexer tool
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
These tools are only needed during build and we are using them from
clang-native, so they are not needed to be either built or packages in
nativesdk-clang or target clang builds
Fixes Issue #859
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This is needed when using clang 17+
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
Document a way to let clang provide llvm as well.
This helps this layer pass the yocto check layer test
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
| |
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
* The perl scan-build script need some perl-modules to be executable
Signed-off-by: Michel Zink <m.zink@rational-online.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang-cl is a symlink to clang, if we package it into clang-tools then
it created an automatic dependency on the package providing clang binary
which is clang in this case. So when someone wants to install just
clang-tools, it will drag the compiler along as well, which may not be
desired, this fixes the problem.
Fixes https://github.com/kraj/meta-clang/issues/676
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
This ensures that it does not end up building NATIVE tools
and using them during build, which obviously wont work when
buildhost != targethost or iow cross-compiling
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This has been deleted in clang 16+ via https://reviews.llvm.org/D130020
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
| |
Fixes
ERROR: lib32-clang-15.0.7-r0 do_package_qa: QA Issue: non -dev/-dbg/nativesdk- package lib32-liblldb contains symlink .so '/usr/lib/liblldbIntelFeatures.so'
non -dev/-dbg/nativesdk- package lib32-liblldb contains symlink .so '/usr/lib/liblldb.so' [dev-so] ERROR: lib32-clang-15.0.7-r0 do_package_qa: Fatal QA errors were found, failing task.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
when building clang for multilib, bitbake complains about liblldb
containing a .so symlink
this patch fixes this
Signed-off-by: lumpyh <lumpy.hega@gmx.de>
|
|
|
|
| |
Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
|
|
|
|
|
|
|
|
|
| |
Ensure that lldb uses correct python-dev headers from target python and
not native python during cross compile.
Adjust *_PYTHON_* variables accordingly.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Ensure that clang-tidy, clang-format, clang-tools are separated out into
own packages and also move libclang-cpp shared object out of clang
package too, which should remove every package depending on clang
package since this shared object is needed by all tools.
Might fix https://github.com/kraj/meta-clang/issues/672
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
Use libclang.so.* wildcard to include all .so files (not only dangling
symlink ./usr/lib/libclang.so.15 -> libclang.so.15.0.1).
Signed-off-by: Michal Wojcik <michal.wojcik@linaro.org>
|
|
|
|
|
|
| |
lldb server is needed for native debugging with lldb on target
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
It could be made as a packageconfig but its useful to enable it by
default
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
Some of cmake checks in packages depending upon clang check for presense
of these tools during build, therefore populate them into sysroot
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
These tools are needed during build but when building target version of
clang they must be used from clang-native
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
these arches need 64bit atomics which are not available as builtins
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
These are not staged into sysroot otherwise and cmake fails to configure
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
clang can now build multiarch runtimes like debian's setup, but not all
arches work equally well, e.g. arm32 bit can not handle arm and armhf
case, so lets disable it for now.
Use DCMAKE_BUILD_TYPE=RelWithDebInfo as it is needed to set
DCMAKE_BUILD_TYPE in 15.x
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Drop upstreamed patches and forward port the remaining to latest
sourcess
llvm: Fix libzstd detection with zstd cmake files
Release Notes [1] [2] [3] [4] [5] [6]
[1] https://github.com/llvm/llvm-project/blob/release/15.x/clang/docs/ReleaseNotes.rst
[2] https://releases.llvm.org/15.0.0/docs/ReleaseNotes.html
[3] https://releases.llvm.org/15.0.0/tools/clang/docs/ReleaseNotes.html
[4] https://releases.llvm.org/15.0.0/tools/lld/docs/ReleaseNotes.html
[5] https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html
[6] https://releases.llvm.org/15.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Setting the ${HF} variable based on ${TUNE_CCARGS_MFLOAT} does only make sense
for target builds, as it defines arguments for target. Without this fix,
building with hf machine configuration will cause problems, as native and
nativesdk triplets will be include "hf", something like "x86_64hf-linux", which
is wrong and not recognized by LLVM build/configuration system.
Signed-off-by: Esben Haabendal <esben.haabendal@huawei.com>
|
|
|
|
|
|
|
|
| |
ppc32 build fails, disable for now
NativeThreadLinux.cpp:(.text._ZN12lldb_private13process_linux17NativeThreadLinuxC2ERNS0_18NativeProcessLinuxEy+0x84): undefined reference to `lldb_private::process_linux::NativeRegisterContextLinux::CreateHostNativeRegisterContextLinux(lldb_private::ArchSpec const&, lldb_private::process_linux::NativeThreadLinux&)'
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
This helps in creating cross utilities to be used during OE cross builds
as noted in
Issue #491
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
Ensures right dependencies are added, and keep it off by default
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
This is new variable added in clang 14+ to defaultl to PIE
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
| |
lnr is deprecated, simply use ln -rs instead.
Signed-off-by: Ross Burton <ross.burton@arm.com>
|
|
|
|
|
|
|
|
|
| |
This will resolve issue with SDK relocation. See:
https://github.com/kraj/meta-clang/issues/119
Signed-off-by: David Abdurachmanov <david.abdurachmanov@sifive.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can not use nativesdk variants of libcxx and compiler-rt yet when
compiling nativesdk-clang because, it will need this compiler to build
them, so solve this catch-22, since we do not use the runtime built
during compiler builds, use libgcc/libstdc++ to pass cmake tests
during configure, this should be fine as it will be not needed for final
builds where nativesdk-clang will be used, it can still default to llvm
runtime on SDK host
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
| |
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
After enable multilib, libdir is /usr/lib64, but in llvm's
CMakelist.txt, the install path is hardcode as /usr/lib
eg:
${CMAKE_BINARY_DIR}/lib/libscanbuild/resources/${resource}
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
|
|
|
|
|
| |
Package new content for scanbuild and libear
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This ensures that compiler defaults are defaulting to llvm provided
c/c++ runtimes which includes c-runtime, c++runtime, unwinder and omp
runtime, current approach is to inject commandline options but it does
not get passed in all cases and a lot of smaller/big patches are used to
make such package recipes behave
If RUNTIME = "gnu" then defaults stay to use gcc runtime as it is
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
| |
lldb-server is not fully ported for mips yet see
https://reviews.llvm.org/D102872
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
| |
While we can, it does not have the sspace for path dance that yocto does
for relocable SDK which means clang components may end up being
non-relocatable when SDK is installed in longer paths. So for now pay
the price of switching back to binutils linker
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLDTargets.cmake (generated and installed by the lld build)
references lld this way:
add_executable(lld IMPORTED)
set_property(TARGET lld PROPERTY ENABLE_EXPORTS 1)
This way lld can be used by plugins to get their symbols from,
pretty much like PHP modules that resolve their symbols from the
php executable during runtime linking.
At least https://github.com/RadeonOpenCompute/ROCm-CompilerSupport
uses lld's cmake files as opposed to using only llvm and previously
failed with:
| The imported target "lld" references the file
|
| ".../tmp-sicom-glibc/work/corei7-64-sicom-linux/amd-comgr/4.0.0-r0/recipe-sysroot/usr/bin/lld"
|
| but this file does not exist. Possible reasons include:
|
| * The file was deleted, renamed, or moved to another location.
|
| * An install or uninstall procedure did not complete successfully.
|
| * The installation package was faulty and contained
Extending SYSROOT_DIRS with ${bindir} would break crosscompiling
since CMake found clang/clang++ from recipe-sysroot in this case.
Install lld into sysroot-destdir but nothing else.
Signed-off-by: Zoltán Böszörményi <zboszor@pr.hu>
|
|
|
|
|
|
|
|
|
| |
This ensures that llvm-config works properly, since target clang is
building shared libs, we should match it on clang native and nativesdk
as well, this helps in cross compiling packages which depend on
llvm-config to get llvm libs list during build/link
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
|
| |
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|