summaryrefslogtreecommitdiffstats
path: root/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb')
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb61
1 files changed, 61 insertions, 0 deletions
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb b/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb
new file mode 100644
index 0000000..8953fd4
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/bcc/bcc_0.17.0.bb
@@ -0,0 +1,61 @@
1SUMMARY = "BPF Compiler Collection (BCC)"
2HOMEPAGE = "https://github.com/iovisor/bcc"
3LICENSE = "Apache-2.0"
4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e"
5
6inherit cmake python3native manpages
7
8DEPENDS += "bison-native \
9 flex-native \
10 elfutils \
11 ${LUAJIT} \
12 clang \
13 "
14
15LUAJIT ?= "luajit"
16LUAJIT_powerpc64le = ""
17LUAJIT_powerpc64 = ""
18
19RDEPENDS_${PN} += "bash python3 python3-core python3-setuptools xz"
20
21# Don't fetch submodules otherwise we fetch an older, vendored libbpf version
22# We use a dynamic libbpf library instead
23SRC_URI = "git://github.com/iovisor/bcc \
24 file://0001-python-CMakeLists.txt-Remove-check-for-host-etc-debi.patch \
25 file://0001-tools-trace.py-Fix-failing-to-exit.patch \
26 file://0001-CMakeLists.txt-override-the-PY_CMD_ESCAPED.patch \
27 file://0001-fix-compilation-issues-with-latest-llvm12-trunk.patch \
28 file://0002-fix-compilation-error-with-latest-llvm12-trunk.patch \
29 file://0001-cmake-link-dynamically-to-libclang-cpp-if-found-and-.patch \
30 file://0002-cmake-always-link-to-packaged-libbpf-if-CMAKE_USE_LI.patch \
31 file://0003-Remove-libbcc-no-libbpf-shared-library-change-libbcc.patch \
32 file://0004-cmake-look-for-either-static-or-dynamic-libraries.patch \
33 "
34
35DEPENDS += "libbpf"
36
37SRCREV = "ad5b82a5196b222ed2cdc738d8444e8c9546a77f"
38
39S = "${WORKDIR}/git"
40
41PACKAGECONFIG ??= ""
42PACKAGECONFIG[manpages] = "-DENABLE_MAN=ON,-DENABLE_MAN=OFF,"
43
44EXTRA_OECMAKE = " \
45 -DENABLE_LLVM_SHARED=ON \
46 -DENABLE_CLANG_JIT=ON \
47 -DLLVM_PACKAGE_VERSION=${LLVMVERSION} \
48 -DPYTHON_CMD=${PYTHON} \
49 -DPYTHON_FLAGS=--install-lib=${PYTHON_SITEPACKAGES_DIR} \
50 -DCMAKE_USE_LIBBPF_PACKAGE=ON \
51"
52
53do_install_append() {
54 sed -e 's@#!/usr/bin/python@#!/usr/bin/env python3@g' \
55 -i $(find ${D}${datadir}/${PN} -type f)
56}
57
58FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}"
59FILES_${PN}-doc += "${datadir}/${PN}/man"
60
61COMPATIBLE_HOST = "(x86_64.*|aarch64.*|powerpc64.*)-linux"