this repo has no description
1(menhir
2 (modules parser))
3
4(ocamllex lexer)
5
6(executable
7 (name opentrace)
8 (public_name opentrace)
9 (modules opentrace config parser filter lexer spawn)
10 (foreign_stubs
11 (language c)
12 (flags :standard -D_LARGEFILE64_SOURCE)
13 (names opentrace_stubs))
14 (preprocess
15 (pps ppx_blob))
16 (preprocessor_deps
17 (file opentrace.bpf.o))
18 (libraries eio_posix jsonm cmdliner unix libbpf libbpf_maps))
19
20(rule
21 (mode
22 (promote (until-clean)))
23 (targets opentrace.bpf.o)
24 (deps arch opentrace.bpf.c)
25 (action
26 (system
27 "NIX_HARDENING_ENABLE=\"\" clang -g -O3 -target bpf -I/usr/include/%{architecture}-linux-gnu/ -c opentrace.bpf.c -D__TARGET_ARCH_%{read:arch}")))
28
29(rule
30 (mode
31 (promote (until-clean)))
32 (targets vmlinux.h arch)
33 (action
34 (progn
35 (with-stdout-to
36 vmlinux.h
37 (run bpftool btf dump file /sys/kernel/btf/vmlinux format c))
38 (with-stdout-to
39 arch
40 (bash
41 "uname -m | sed 's/x86_64/x86/' | sed 's/arm.*/arm/' | sed 's/aarch64/arm64/' | sed 's/ppc64le/powerpc/' | sed 's/mips.*/mips/' | sed 's/riscv64/riscv/' | sed 's/loongarch64/loongarch/'")))))
42
43(rule
44 (targets config.ml)
45 (action
46 (run ./include/discover.exe)))