diff options
Diffstat (limited to 'meta-oe/recipes-extended/sysdig/sysdig_0.39.0.bb')
| -rw-r--r-- | meta-oe/recipes-extended/sysdig/sysdig_0.39.0.bb | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/sysdig/sysdig_0.39.0.bb b/meta-oe/recipes-extended/sysdig/sysdig_0.39.0.bb new file mode 100644 index 0000000000..6d754b9bd0 --- /dev/null +++ b/meta-oe/recipes-extended/sysdig/sysdig_0.39.0.bb | |||
| @@ -0,0 +1,95 @@ | |||
| 1 | SUMMARY = "A New System Troubleshooting Tool Built for the Way You Work" | ||
| 2 | DESCRIPTION = "Sysdig is open source, system-level exploration: capture \ | ||
| 3 | system state and activity from a running Linux instance, then save, \ | ||
| 4 | filter and analyze." | ||
| 5 | HOMEPAGE = "http://www.sysdig.org/" | ||
| 6 | LICENSE = "Apache-2.0 & (MIT | GPL-2.0-only)" | ||
| 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=f8fee3d59797546cffab04f3b88b2d44" | ||
| 8 | |||
| 9 | inherit cmake pkgconfig | ||
| 10 | |||
| 11 | #OECMAKE_GENERATOR = "Unix Makefiles" | ||
| 12 | JIT ?= "jit" | ||
| 13 | JIT:mipsarchn32 = "" | ||
| 14 | JIT:mipsarchn64 = "" | ||
| 15 | JIT:riscv64 = "" | ||
| 16 | JIT:riscv32 = "" | ||
| 17 | JIT:powerpc = "" | ||
| 18 | JIT:powerpc64le = "" | ||
| 19 | JIT:powerpc64 = "" | ||
| 20 | |||
| 21 | DEPENDS += "libb64 lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp \ | ||
| 22 | tbb jq openssl elfutils protobuf protobuf-native jq-native valijson \ | ||
| 23 | uthash libbpf clang-native bpftool-native yaml-cpp nlohmann-json" | ||
| 24 | RDEPENDS:${PN} = "bash" | ||
| 25 | |||
| 26 | SRC_URI = "git://github.com/draios/sysdig.git;branch=dev;protocol=https;name=sysdig \ | ||
| 27 | git://github.com/falcosecurity/libs;protocol=https;branch=release/0.18.x;name=falco;subdir=${BB_GIT_DEFAULT_DESTSUFFIX}/falcosecurity-libs \ | ||
| 28 | git://github.com/falcosecurity/libs;protocol=https;branch=release/0.18.x;name=driver;subdir=${BB_GIT_DEFAULT_DESTSUFFIX}/driver \ | ||
| 29 | file://0001-cmake-Pass-PROBE_NAME-via-CFLAGS.patch \ | ||
| 30 | file://0001-Avoid-duplicate-operations-of-add_library.patch;patchdir=./falcosecurity-libs \ | ||
| 31 | " | ||
| 32 | SRCREV_sysdig = "6ef29110cf1add746e10ab5b38957e22730b7349" | ||
| 33 | SRCREV_falco = "e1999d079880d10800c57e004fca794a03cd060a" | ||
| 34 | SRCREV_driver = "d4efc80ece48174a71c1a420cb52d233fa94f946" | ||
| 35 | |||
| 36 | SRCREV_FORMAT = "sysdig_falco" | ||
| 37 | |||
| 38 | #Add this function to generate driver_config.h | ||
| 39 | do_configure:prepend() { | ||
| 40 | mkdir -p ${WORKDIR}/driver_Make | ||
| 41 | cd ${WORKDIR}/driver_Make | ||
| 42 | cmake ${S}/driver -DMINIMAL_BUILD=ON -DCREATE_TEST_TARGETS=OFF | ||
| 43 | cd - | ||
| 44 | } | ||
| 45 | do_configure[cleandirs] = "${WORKDIR}/driver_Make" | ||
| 46 | |||
| 47 | EXTRA_OECMAKE = "\ | ||
| 48 | -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ | ||
| 49 | -DBUILD_DRIVER=OFF \ | ||
| 50 | -DMINIMAL_BUILD=ON \ | ||
| 51 | -DUSE_BUNDLED_DEPS=OFF \ | ||
| 52 | -DCREATE_TEST_TARGETS=OFF \ | ||
| 53 | -DDIR_ETC=${sysconfdir} \ | ||
| 54 | -DLUA_INCLUDE_DIR=${STAGING_INCDIR}/luajit-2.1 \ | ||
| 55 | -DFALCOSECURITY_LIBS_SOURCE_DIR=${S}/falcosecurity-libs \ | ||
| 56 | -DDRIVER_SOURCE_DIR=${S}/driver \ | ||
| 57 | -DVALIJSON_INCLUDE=${STAGING_INCDIR}/valijson \ | ||
| 58 | -DUSE_BUNDLED_RE2=OFF \ | ||
| 59 | -DUSE_BUNDLED_TBB=OFF \ | ||
| 60 | -DUSE_BUNDLED_JSONCPP=OFF \ | ||
| 61 | -DBUILD_SYSDIG_MODERN_BPF=OFF \ | ||
| 62 | -DCREATE_TEST_TARGETS=OFF \ | ||
| 63 | " | ||
| 64 | |||
| 65 | #Add include dir to find driver_config.h | ||
| 66 | CXXFLAGS:append = " -I${WORKDIR}/driver_Make/driver/src" | ||
| 67 | CFLAGS:append = " -I${WORKDIR}/driver_Make/driver/src" | ||
| 68 | |||
| 69 | #To fix do_package QA Issue | ||
| 70 | do_compile:append() { | ||
| 71 | sed -i -e "s,${WORKDIR},,g" ${B}/libsinsp/libsinsp.pc | ||
| 72 | sed -i -e "s,${WORKDIR},,g" ${B}/driver/libscap/libscap.pc | ||
| 73 | mkdir -p ${B}/driver/libsinsp | ||
| 74 | cp ${B}/libsinsp/libsinsp.pc ${B}/driver/libsinsp/ | ||
| 75 | } | ||
| 76 | do_compile[cleandirs] = "${B}/driver/libsinsp" | ||
| 77 | |||
| 78 | #CMAKE_VERBOSE = "VERBOSE=1" | ||
| 79 | |||
| 80 | |||
| 81 | FILES:${PN} += " \ | ||
| 82 | ${DIR_ETC}/* \ | ||
| 83 | ${datadir}/zsh/* \ | ||
| 84 | ${prefix}/src/* \ | ||
| 85 | " | ||
| 86 | # Use getaddrinfo_a is a GNU extension in libsinsp | ||
| 87 | # It should be fixed in sysdig, until then disable | ||
| 88 | # on musl | ||
| 89 | # Something like this https://code.videolan.org/ePirat/vlc/-/commit/01fd9fe4c7f6c5558f7345f38abf0152e17853ab is needed to fix it | ||
| 90 | COMPATIBLE_HOST:libc-musl = "null" | ||
| 91 | COMPATIBLE_HOST:mips = "null" | ||
| 92 | COMPATIBLE_HOST:riscv64 = "null" | ||
| 93 | COMPATIBLE_HOST:riscv32 = "null" | ||
| 94 | COMPATIBLE_HOST:powerpc = "null" | ||
| 95 | COMPATIBLE_HOST:powerpc64le = "null" | ||
