summaryrefslogtreecommitdiffstats
path: root/recipes-devtools
Commit message (Collapse)AuthorAgeFilesLines
* libcxx: Fix build on rv32 and use compiler-rt on rv32/rv64Khem Raj2020-08-212-2/+32
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 11.x release branchKhem Raj2020-08-2127-203/+234
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: set the default pigz threadMingli Yu2020-08-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | pigz, which stands for parallel implementation of gzip, is a fully functional replacement for gzip that exploits multiple processors and multiple cores to the hilt when compressing data. do_package uses pigz to compress data to speed up the time if there is pigz available on the build server. But for some big package such as clang, there comes below error during do_package. gzip: stdout: Cannot allocate memory tar: TOPDIR/sstate-cache/20/80/sstate:clang:cortexa57-wrs-linux:10.0.1:r0:cortexa57:3:20808f8a746b00ec9470a81057c8595d878cfe8c565cfbcbbaa3ea870528ee34_package.tgz.QF5dss8M: Wrote only 8192 of 10240 bytes tar: Child returned status 1 tar: Error is not recoverable: exiting now So set the default pigz thread for clang and the user also can customize the pigz thread such as PIGZ_pn-clang = "-p 3" for clang in local.conf to avoid eating so much memory. Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
* libcxx: Default to compiler-rt when it is in PACKAGECONFIGKhem Raj2020-08-041-1/+1
| | | | | | This ensures right C runtime is used as desired by user Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Add packageconfig to select default unwinderKhem Raj2020-08-011-0/+1
| | | | | | | | | | a choice is needed to be made for selecting unwinder library defaults ( --unwindlib ), by default we choose libgcc unwinder when packageconfig is disabled and only use llvm unwinder when this option is enabled Fixes Issue #332 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* libcxx: Fix linking based upon chosen compiler runtimeKhem Raj2020-08-011-5/+6
| | | | | | | | | | | | | | | | | | | | | | libcxx can use either libgcc_s or llvm libunwind for unwinder functionality, the defaults are platform dependent, therefore with this patch we make intentional choice based on RUNTIME settings chosen, e.g. when using GNU runtime we use libgcc and also ensure that it add right compiler options to build as well, since libcxx build looks C runtime by calling $($CC --print-libgcc-file-name) to build libc++abi.so unless we use right -rtlib option it will result in linking wrong library Enable RTTI as well do not enable llvm unwinder unless we chose llvm runtime, even that might not work since libpthread from glibc explicitly dlopens libgcc_s.so to enable unwinding https://github.com/bminor/glibc/blob/5f72f9800b250410cad3abfeeb09469ef12b2438/sysdeps/nptl/unwind-forcedunwind.c#L53...L58 Fixes Issue #332 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 10.0.1-rc4Khem Raj2020-07-101-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: honor --dyld-prefix when searching for dynamic linkerOleksandr Ocheretnyi2020-07-022-0/+70
| | | | | | | | | | * Commit 1ce5b0090e18 ("clang: Search for dynamic linker.") does not honor --dyld-prefix option, so it fails to find the linker when --dyld- prefix is used for usrmerge. Add DyldPrefix when searching for dynamic linker. Fixes: 1ce5b0090e18 ("clang: Search for dynamic linker.") Signed-off-by: Oleksandr Ocheretnyi <oocheret@cisco.com>
* clang: Update to 10.0.1-rc2Khem Raj2020-06-281-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest after 10.0.1-rc1Khem Raj2020-06-091-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to 10.0.1-rc1Khem Raj2020-05-261-2/+2
| | | | | | | | Update version number accordingly Signed-off-by: Khem Raj <raj.khem@gmail.com> s
* openmp: Make offloading-plugin as packageconfigKhem Raj2020-05-131-6/+8
| | | | | | | Needs libffi and libelf as dependencies, and is available only for aarch64/x86_64/ppc64 Signed-off-by: Khem Raj <raj.khem@gmail.com>
* rpm: Depend on openmp when using clangKhem Raj2020-04-291-0/+3
| | | | | | | This ensures that clang compiler has proper omp runtime to link rpm which now required omp Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Do not insttall libgomp.so aliasesKhem Raj2020-04-291-3/+1
| | | | | | | | | libgomp is coming from gcc-runtime and clang does not find it anyway so its better to not synlink it here, so it can avoid clashes with gcc-runtime, anyway clang will use this openmp runtime when using -fopenmp and wont depend on gomp from gcc Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Extend to native and nativesdkKhem Raj2020-04-291-0/+2
| | | | | | Needed for rpm-native and friends Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: add lldb, lldb-server, liblldb packagesMaxime Roussin-Bélanger2020-04-271-1/+17
| | | | | | With lldb split in multiple packages it reduces the size of the `clang` package and you can now install lldb, lldb-server and liblldb without h having the whole clang fat package.
* fix build errors when using libLLVMInterpreterAnuj Mittal2020-04-032-0/+29
| | | | | | | | | | | | | | | | | Don't use the full path to libffi and avoid linking to the one from clang's sysroot. Prevents errors like: Log data follows: | DEBUG: Executing shell function do_compile | NOTE: VERBOSE=1 cmake --build /build/build/tmp/work/corei7-64-poky-linux/opencl-clang/10.0.0-r0/build --target all -- | ninja: error: '/build/build/tmp/work/corei7-64-poky-linux/clang/10.0.0-r0/recipe-sysroot/usr/lib/libffi.so', needed by 'libopencl-clang.so.10', missing and no known rule to make it | WARNING: exit code 1 from a shell command. | ERROR: Execution of '/build/build/tmp/work/corei7-64-poky-linux/opencl-clang/10.0.0-r0/temp/run.do_compile.72389' failed with exit code 1: | ninja: error: '/build/build/tmp/work/corei7-64-poky-linux/clang/10.0.0-r0/recipe-sysroot/usr/lib/libffi.so', needed by 'libopencl-clang.so.10', missing and no known rule to make it | WARNING: exit code 1 from a shell command. | Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* clang: Fix default resources directory when cross compilingJim Broadus2020-03-282-0/+42
| | | | | | | | | | | | By default, clang looks for resourses relative to the binary location: ${location}/../lib/clang/${version}/ However, the default bindir defined in cross.bbclass is a subdirectory of bin, so clang forms a directory that looks like /usr/bin/lib/clang/10.0.0/ Apply a patch to use ${location}/../../lib/clang/${version} if the directory name of ${location}/.. is "bin". Signed-off-by: Jim Broadus <jbroadus@xevo.com>
* clang: Update to llvmorg-10.0.0 final releaseKhem Raj2020-03-2423-23/+23
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: include only when oe layer is includedAnuj Mittal2020-03-191-29/+0
| | | | | | | This depends on bcc which has also been moved to dynamic-layers/openembedded-layer. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* bcc: include only when oe layer is availableAnuj Mittal2020-03-192-84/+0
| | | | | | | Move bcc to dynamic-layers/openembedded-layer since it depends on luajit. Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
* clang: Update to 10.0.0-rc5Khem Raj2020-03-191-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* openmp: Fix build packaging with multilib suffixKhem Raj2020-03-181-0/+4
| | | | | | Add missing rdeps on libelf and libffi Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Add dependency on gzip-nativeOvidiu Panait2020-03-151-0/+1
| | | | | | | | | | Fix the following do_compile error: ... GZIP-NOTFOUND -c /bpftrace/0.9.4-r0/git/man/man8/bashreadline.8 > bpftrace/0.9.4-r0/build/man/man8/bashreadline.8.gz 16 /bin/sh: 1: GZIP-NOTFOUND: not found ... Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bpftrace: Disable building unit testsOvidiu Panait2020-03-151-2/+1
| | | | | | | | | | Disable building unit tests as they involve pulling gtest from git during do_configure. Reference: https://github.com/iovisor/bpftrace/commit/a56ab12d9f5b1970932c28dc66173b6c12daa7f7 Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: Fix QA errors when baselib=lib64Ovidiu Panait2020-03-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the following errors when baselib=lib64: QA Issue: bcc: Files/directories were installed but not shipped in any package: /usr/lib /usr/lib/python3.7 /usr/lib/python3.7/site-packages /usr/lib/python3.7/site-packages/bcc-IT_NOTFOUND_94222748-py3.7.egg-info /usr/lib/python3.7/site-packages/bcc /usr/lib/python3.7/site-packages/bcc/tcp.py /usr/lib/python3.7/site-packages/bcc/version.py /usr/lib/python3.7/site-packages/bcc/disassembler.py /usr/lib/python3.7/site-packages/bcc/syscall.py /usr/lib/python3.7/site-packages/bcc/perf.py /usr/lib/python3.7/site-packages/bcc/__init__.py /usr/lib/python3.7/site-packages/bcc/libbcc.py /usr/lib/python3.7/site-packages/bcc/usdt.py /usr/lib/python3.7/site-packages/bcc/utils.py /usr/lib/python3.7/site-packages/bcc/table.py /usr/lib/python3.7/site-packages/bcc/__pycache__ /usr/lib/python3.7/site-packages/bcc/__pycache__/usdt.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/version.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/disassembler.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/syscall.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/perf.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/table.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/__init__.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/tcp.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/utils.cpython-37.pyc /usr/lib/python3.7/site-packages/bcc/__pycache__/libbcc.cpython-37.pyc Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: Use gitsm fetcher to pull src/cc/libbpf submoduleOvidiu Panait2020-03-151-1/+1
| | | | | | | | | | Otherwise, the git submodule clone will be performed during the do_configure step, which is not desirable: Submodule 'src/cc/libbpf' (https://github.com/libbpf/libbpf.git) registered for path 'src/cc/libbpf' Cloning into 'build-clang/tmp-glibc/work/core2-64-oe-linux/bcc/0.13.0-r0/git/src/cc/libbpf'... Submodule path 'src/cc/libbpf': checked out '583bddce6b93bafa31471212a9811fd7d38b5f9a' Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* clang: Update to 10.x rc4 releaseKhem Raj2020-03-151-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: recipe cleanupOvidiu Panait2020-03-112-76/+1
| | | | | | | | | | | | | * Remove unneeded dependencies * Remove cross-compilation cmake patch Commit ab68695 was integrated to fix this particular issue, so this patch is not needed anymore. * Remove redundant OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM * Remove extra step for man packaging GNUInstallDirs support was added in the following commit: https://github.com/iovisor/bpftrace/commit/2f38001311e36e7717daa143e09b165bbf915ac6 Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bpftrace: update to latest HEADOvidiu Panait2020-03-111-1/+1
| | | | | | | | | This revision contains the fixes needed to build bpftrace with llvm10 and ninja: https://github.com/iovisor/bpftrace/commit/f1fc519044ec5adf97a5f362a167881671066a6b https://github.com/iovisor/bpftrace/commit/6f81111cb4ed6dccb3cd84dcbfe67459dd267acd Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* clang: Update to latest on 10.x releaseKhem Raj2020-03-111-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest on 10.x branchKhem Raj2020-03-091-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Update to latest 10.xKhem Raj2020-03-0525-52/+23
| | | | | | Drop -lz patch Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bcc: Remove CMAKE_INSTALL_PREFIX from EXTRA_OECMAKEOvidiu Panait2020-03-041-1/+0
| | | | | | | CMAKE_INSTALL_PREFIX is implicitly set by the build system when inheriting cmake, so there is no need to set it in the recipe. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: inherit manpages class to control documentationOvidiu Panait2020-03-041-2/+5
| | | | Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: Remove unneeded dependenciesOvidiu Panait2020-03-041-5/+1
| | | | Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: inherit python3nativeOvidiu Panait2020-03-042-4/+46
| | | | | | Use python3-native rather than the version provided by the build host. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: Remove cross-compilation cmake patchOvidiu Panait2020-03-042-34/+0
| | | | | | | Commit ab686950af8d was integrated to fix this particular issue, so this patch is not needed anymore. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* bcc: Replace python3 patch with do_install_append sedOvidiu Panait2020-03-042-1696/+5
| | | | | | | Use sed to replace all occurences of /usr/bin/env python with the python3 variant instead of maintaining a patch that does this. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* clang: Update to latest 10.x releaseKhem Raj2020-03-0425-34/+34
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Disable on muslKhem Raj2020-03-041-0/+1
| | | | | | It does not build with clang-10/musl yet Signed-off-by: Khem Raj <raj.khem@gmail.com>
* bpftrace: Just build on ppc64/arm64/amd64Khem Raj2020-02-271-0/+2
| | | | | | it depends on bcc which only supports these arches Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang: Upgrade to latest on 10.x releaseKhem Raj2020-02-271-1/+1
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* BCC: Upgrade to v0.13.0Leo Yan2020-02-263-31/+67
| | | | | | | | | Since Clang has been upgraded to 10.0.0, it leads to BCC building failure which is caused by LLVM functions definition mismatching. This patch upgrades BCC to v0.13.0 so can support Clang 10.0.0. Signed-off-by: Leo Yan <leo.yan@linaro.org>
* clang: Fix libedit packageconfig flagPhilip Lorenz2020-02-241-2/+2
| | | | | | | LLDB_DISABLE_LIBEDIT was renamed to LLDB_ENABLE_LIBEDIT in 62456e579eebe012e5a6ebcf9960aef9d7babf87. Signed-off-by: Philip Lorenz <philip@bithub.de>
* bpftrace: Add build recipeLeo Yan2020-02-232-0/+101
| | | | | | | | | | | | | | | | | bpftrace is a high-level tracing language for eBPF, its language is inspired by awk and C, and predecessor tracers such as DTrace and SystemTap. bpftrace was created by Alastair Robertson. bpftrace language supports the usages for one-liner and script, it's very powerful for tracing and profiling. bpftrace internal mechanism depends on BCC and LLVM/Clang, so the building dependency has contains these modules. Add recipe for bpftrace version 0.9.4. This patch also contains a patch to change cmake file so can look for libraries and headers which are installed in target sysroot-recipe path for cross compilation. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Co-developed-by: Leo Yan <leo.yan@linaro.org>
* BCC: Add build recipeLeo Yan2020-02-233-0/+1732
| | | | | | | | | | | | | | | | BPF Compiler Collection (BCC) is a toolkit for creating efficient kernel tracing and manipulation programs, and includes versatile tools and examples which based on eBPF. This tool is very widely used on server section, but we also can use it for embedded system, e.g. use its function trace utilities (trace.py and argdist.py) to trace kernel function parameters and return values. This patch adds recipe for BCC version 0.12.0. This patch also contains a patch to change cmake file so can look for libraries and headers which are installed in target sysroot-recipe path for cross compilation. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Co-developed-by: Leo Yan <leo.yan@linaro.org>
* clang: Upgrade clang to 10.x release (RC2)Khem Raj2020-02-2134-1164/+491
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* clang,llvm: cmake: Fix configure for packages using find_package()Ovidiu Panait2020-02-022-0/+139
| | | | | | | | | | | | | | | | | | | | | | | | Currently, when a package (i.e. bcc [https://github.com/iovisor/bcc.git]) that depends on LLVM/Clang tries to run cmake find_package() during do_configure, it will fail with a similar error: | The imported target "llvm-tblgen" references the file | ".../recipe-sysroot/usr/bin/llvm-tblgen" | | 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 | ".../recipe-sysroot/usr/lib/cmake/LLVMExports.cmake" | but not all the files it references. This is due to the fact that currently the exported cmake scripts look for target binaries in sysroot. Work around this by not exporting the target binaries in Exports-* cmake files. Upstream-Status: Innapropriate [oe-specific] Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* Use simplier libdir suffix computationDaniel McGregor2020-01-241-17/+1
| | | | | | | | | | An earlier commit added a suffix table to determine the libdir suffix for multilib targets. This table failed at least in the lib32 case for x86, where the suffix should have been '', but was instead '32'. Use the same method as the cmake bbclass instead. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>