1################################################################################ 2# 3# bcc 4# 5################################################################################ 6 7BCC_VERSION = 0.29.1 8BCC_SITE = https://github.com/iovisor/bcc/releases/download/v$(BCC_VERSION) 9BCC_SOURCE = bcc-src-with-submodule.tar.gz 10BCC_LICENSE = Apache-2.0 11BCC_LICENSE_FILES = LICENSE.txt 12BCC_INSTALL_STAGING = YES 13BCC_DEPENDENCIES = \ 14 clang \ 15 elfutils \ 16 flex \ 17 host-bison \ 18 host-flex \ 19 host-python-setuptools \ 20 host-zip \ 21 llvm \ 22 python3 23 24# ENABLE_LLVM_SHARED=ON to use llvm.so - we only support shared libs 25# Force REVISION otherwise bcc will use git describe to generate a version number. 26BCC_CONF_OPTS = \ 27 -DENABLE_LLVM_SHARED:BOOL=ON \ 28 -DREVISION:STRING=$(BCC_VERSION) \ 29 -DENABLE_CLANG_JIT:BOOL=ON \ 30 -DENABLE_MAN:BOOL=OFF \ 31 -DENABLE_EXAMPLES:BOOL=OFF \ 32 -DPY_SKIP_DEB_LAYOUT:BOOL=ON 33 34define BCC_LINUX_CONFIG_FIXUPS 35 # Enable kernel support for eBPF 36 $(call KCONFIG_ENABLE_OPT,CONFIG_BPF) 37 $(call KCONFIG_ENABLE_OPT,CONFIG_BPF_SYSCALL) 38 $(call KCONFIG_ENABLE_OPT,CONFIG_NET_CLS_BPF) 39 $(call KCONFIG_ENABLE_OPT,CONFIG_NET_ACT_BPF) 40 $(call KCONFIG_ENABLE_OPT,CONFIG_BPF_JIT) 41 # [for Linux kernel versions 4.1 through 4.6] 42 $(call KCONFIG_ENABLE_OPT,CONFIG_HAVE_BPF_JIT) 43 # [for Linux kernel versions 4.7 and later] 44 $(call KCONFIG_ENABLE_OPT,CONFIG_HAVE_EBPF_JIT) 45 $(call KCONFIG_ENABLE_OPT,CONFIG_BPF_EVENTS) 46 # [for Linux kernel versions 5.2 and later] 47 $(call KCONFIG_ENABLE_OPT,CONFIG_IKHEADERS) 48 # bcc needs debugfs at runtime 49 $(call KCONFIG_ENABLE_OPT,CONFIG_DEBUG_FS) 50endef 51 52$(eval $(cmake-package)) 53