Makefile (711B)
1 ARCH=$(shell uname -m | sed 's/x86_64/x86/' | sed 's/aarch64/arm64/') 2 3 main: main.c process_exit.skel.h 4 gcc -Wall -o main main.c -L../libbpf/src -l:libbpf.a -lelf -lz 5 6 run: main 7 sudo ./main 8 9 process_exit.bpf.o: process_exit.bpf.c vmlinux.h 10 clang \ 11 -target bpf \ 12 -D __TARGET_ARCH_$(ARCH) \ 13 -I/usr/include/$(shell uname -m)-linux-gnu \ 14 -Wall -O2 -g -c process_exit.bpf.c -o process_exit.bpf.o 15 16 process_exit.skel.h: process_exit.bpf.o 17 bpftool gen skeleton process_exit.bpf.o > process_exit.skel.h 18 19 vmlinux.h: 20 bpftool btf dump file /sys/kernel/btf/vmlinux format c > vmlinux.h 21 22 clean: 23 rm process_exit.bpf.o 24 rm main 25 26 clean-all: clean 27 rm vmlinux.h 28 rm process_exit.skel.h 29 30 .PHONY: run clean clean-all