GPUSuitabilityEst/code/kernel_module/Makefile
2026-07-20 12:30:11 +01:00

36 lines
778 B
Makefile

APP := ebpf
BPF_SRC := ebpf.c
BPF_OBJ := $(APP).bpf.o
SKEL := $(APP).skel.h
VMLINUX := vmlinux.h
CLANG := clang
BPFOOL := bpftool
CFLAGS := -O2 -g -Wall
BPF_CFLAGS := -O2 -g -Wall -target bpf -D__TARGET_ARCH_x86 -I/usr/include
LIBS := -lbpf -lelf -lz
.PHONY: all run clean
all: $(APP)
$(VMLINUX):
$(BPFOOL) btf dump file /sys/kernel/btf/vmlinux format c > $@
$(BPF_OBJ): $(BPF_SRC) $(VMLINUX)
$(CLANG) $(BPF_CFLAGS) -c $(BPF_SRC) -o $@
$(SKEL): $(BPF_OBJ)
$(BPFOOL) gen skeleton $< > $@
$(APP): main.c container_worker.c data_structure/list_entry.c thread_mon/thread_mon.c $(SKEL)
$(CLANG) $(CFLAGS) main.c container_worker.c data_structure/list_entry.c thread_mon/thread_mon.c $(LIBS) -o $@
run: $(APP)
sudo ./$(APP)
clean:
rm -f $(APP) *.o *.skel.h vmlinux.h