PKGNAME=bpftrace
PKGSEC=admin
PKGDEP="elfutils zlib llvm bcc libbpf"
BUILDDEP="linux+api gdb cereal vim asciidoctor"
# linux+api: system call and tracepoint definitions
# gdb: /usr/include/diagnostics.h
PKGDES="High-level tracing language and utilities for BPF, kprobes, uprobes and tracepoints"

CMAKE_AFTER=(
    "-DLIBBFD_LIBRARIES=${SRCDIR}/libbfd.so"
    "-DLIBOPCODES_LIBRARIES=${SRCDIR}/libopcodes.so"
    "-DLIBBFD_DISASM_FOUR_ARGS_SIGNATURE=ON"
    "-DUSE_SYSTEM_LIBBPF=ON"
    "-DLIBBCC_ATTACH_KPROBE_SIX_ARGS_SIGNATURE=TRUE"
    "-DLIBBCC_ATTACH_UPROBE_SEVEN_ARGS_SIGNATURE=TRUE"
    "-DBUILD_ASAN=OFF"
    "-DBUILD_TESTING=OFF"
    "-DENABLE_MAN=ON"
    "-DENABLE_SYSTEMD=ON"
    "-DSTATIC_LINKING=OFF"
    "-DWARNINGS_AS_ERRORS=OFF"
)
# bpftrace needs to lookup symbols from itself. Stripping off would remove BEGIN_trigger
# and other symbols from itself.
ABSTRIP=0
NOLTO=1
USECLANG=1
