summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/clang_git.bb
Commit message (Collapse)AuthorAgeFilesLines
* fix: [Issue #1061] - check for existence before trying to process a fileaprospero2025-03-171-2/+6
| | | | | | | | | | | | | | In certain configurations LLVMConfig.cmake does not exist. If that's the case do_install breaks for the nativesdk-clang recipe. Eg. set the following: EXTRA_OECMAKE:append:pn-nativesdk-clang = " -DLLVM_INSTALL_TOOLCHAIN_ONLY=ON" as suggested here: https://llvm.org/docs/BuildingADistribution.html Signed-off-by: aprospero <apro@posteo.de>
* clang_git.bb: Remove True option to getVar callsitsmesky42025-01-211-2/+2
| | | | | | getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
* clang: improve reproducibilityOleh Matiusha2025-01-081-4/+16
| | | | | | | | | | | | | | | | | | Currently, class-target is reproducible, but class-nativesdk is not. What I did: - noticed that BuildVariables.inc contains meaningless path fragments after running sed, so I adjusted sed commands to remove the rest of paths as well; - moved common code into a function, which is then called twice; - changed do_compile:prepend into do_configure:append, this is more conventional and intuitive; - verified that the resulting code works for both target and nativesdk after these changes. Signed-off-by: Oleh Matiusha <omatiush@cisco.com> Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* clang_git.bb: assign PYTHON_PN to LLDB_PYTHON_EXE_RELATIVE_PATHJan Kircher2024-10-311-2/+2
| | | | Signed-off-by: Jan Kircher <jan.kircher@leica-microsystems.com>
* clang: Add packageconfig option for build-idKhem Raj2024-07-041-1/+2
| | | | | | | | Enable it by default, since it is needed for debuginfod to work Fixes https://github.com/kraj/meta-clang/issues/956 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to clang 18.1 major releaseKhem Raj2024-03-061-0/+1
| | | | | | | | | | 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>
* clang: Adjust packaging to match new libLLVM sonameKhem Raj2024-03-061-3/+2
| | | | | | | | | 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>
* clang: Allow conditional compilation of clangdPhilip Lorenz2024-02-151-9/+24
| | | | | | | 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>
* clang: Reorganize PACKAGECONFIG structurePhilip Lorenz2024-02-151-15/+20
| | | | | | | | 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>
* meta-clang: Replace RUNTIME with TC_CXX_RUNTIMEKhem Raj2023-10-251-3/+3
| | | | | | TC_CXX_RUNTIME is now defined in OE-core Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Specify llvm-min-tblgen location during buildKhem Raj2023-09-211-2/+8
| | | | | | | | | 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>
* clang: Do not package tablegen built during cross-compileKhem Raj2023-09-211-17/+2
| | | | | | | | | | 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>
* clang: Rename LLDB_TABLEGEN to LLDB_TABLEGEN_EXEKhem Raj2023-09-191-2/+2
| | | | | | This is needed when using clang 17+ Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Do not provide llvm-native implicitlyKhem Raj2023-05-261-3/+0
| | | | | | | 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>
* LLVM officially supports LoongArch starting from 16.0.0zqz2023-05-101-1/+2
|
* Drop crosssdk suffix from virtual binutils provides to match oe-coreKhem Raj2023-05-031-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Add missing scan-build runtime dependenciesmzink892023-04-221-0/+12
| | | | | | * The perl scan-build script need some perl-modules to be executable Signed-off-by: Michel Zink <m.zink@rational-online.com>
* clang: Move clang-cl from clang-tools -> clang packageKhem Raj2023-03-301-5/+1
| | | | | | | | | | | | 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>
* clang: Pass LLVM_CONFIG_PATH to target and nativesdk buildsKhem Raj2023-02-221-0/+3
| | | | | | | | 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>
* clang: Remove clang-offload-wrapperKhem Raj2023-02-221-2/+1
| | | | | | This has been deleted in clang 16+ via https://reviews.llvm.org/D130020 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Move .so symlinks to -dev package fixes multilib buildKhem Raj2023-02-151-2/+2
| | | | | | | | 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>
* clang: fix clang recipe for multilib buildlumpyh2023-02-061-1/+1
| | | | | | | | | 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>
* clang: fix reproducible buildChee Yang Lee2023-01-151-0/+12
| | | | Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
* clang: Inherit python3targetconfigKhem Raj2022-12-071-8/+4
| | | | | | | | | 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>
* clang: Implement finer grained packagingKhem Raj2022-10-071-1/+63
| | | | | | | | | | | 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>
* clang: Fix libclang package files listMichal Wojcik2022-09-271-1/+1
| | | | | | | 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: Add missing rdep on lldb-serverKhem Raj2022-09-151-1/+1
| | | | | | lldb server is needed for native debugging with lldb on target Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Depend on zstdKhem Raj2022-09-121-1/+1
| | | | | | | It could be made as a packageconfig but its useful to enable it by default Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Populate cmake needed binaries in sysrootKhem Raj2022-09-121-1/+8
| | | | | | | 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>
* clang: Use host built clang-pseudo-gen and clang-tidy-confusable-chars-gen toolsKhem Raj2022-09-121-2/+12
| | | | | | | 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>
* clang: Link with libatomic on mips/riscv32Khem Raj2022-09-121-0/+3
| | | | | | these arches need 64bit atomics which are not available as builtins Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add compiler-rt and libcxx to build time depends for targetKhem Raj2022-09-121-1/+1
| | | | | | These are not staged into sysroot otherwise and cmake fails to configure Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang, llvm-rutime: Turn per target runtime off and use RelWithDebInfo for buildKhem Raj2022-09-121-1/+2
| | | | | | | | | | | 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>
* clang: Upgrade to clang 15.0.0 releaseKhem Raj2022-09-121-0/+1
| | | | | | | | | | | | | | | | | | 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>
* clang: Fix native and nativesdk builds for hf targetsEsben Haabendal2022-07-051-1/+2
| | | | | | | | | | 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>
* lldb: Disable builds for ppc32Khem Raj2022-03-101-0/+1
| | | | | | | | 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>
* clang: Upgrade to upcoming clang14 release branchKhem Raj2022-02-161-4/+16
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Create cross symlinks for more binutilsKhem Raj2021-12-151-1/+2
| | | | | | | | | 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>
* clang: Add packageconfig for lldb lua supportKhem Raj2021-12-151-0/+1
| | | | | | Ensures right dependencies are added, and keep it off by default Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Set CLANG_DEFAULT_PIE_ON_LINUX to ONKhem Raj2021-12-141-0/+1
| | | | | | This is new variable added in clang 14+ to defaultl to PIE Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: don't use lnrRoss Burton2021-11-101-1/+1
| | | | | | lnr is deprecated, simply use ln -rs instead. Signed-off-by: Ross Burton <ross.burton@arm.com>
* clang_git: disable LLD usageDavid Abdurachmanov2021-10-201-0/+1
| | | | | | | | | 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>
* nativesdk-clang: Fix build when using RUNTIME = llvmKhem Raj2021-09-271-0/+2
| | | | | | | | | | | | 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>
* clang/compiler-rt: Convert to new override syntaxKhem Raj2021-08-121-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* meta-clang: Convert to new override syntaxSigned-off-by: Martin Jansa2021-08-031-45/+45
| | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: fix do_package error when multilib enabledChangqing Li2021-07-051-2/+2
| | | | | | | | | 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>
* clang: Update to latest on main/13.0 lineKhem Raj2021-06-241-0/+2
| | | | | | Package new content for scanbuild and libear Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Default to compiler-rt/libcxx/libunwind when RUNTIME = "llvm"Khem Raj2021-06-081-5/+9
| | | | | | | | | | | | 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: Do not build for mips as wellKhem Raj2021-06-081-4/+7
| | | | | | | lldb-server is not fully ported for mips yet see https://reviews.llvm.org/D102872 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to trunk/13.0 future seriesKhem Raj2021-06-081-2/+5
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>