LLC ?= llc
CLANG ?= clang
CC ?= gcc

all: bridge_xdp.o loader

bridge_xdp.o: bridge_xdp.c
	$(CLANG) -S \
	    -target bpf \
	    -D __BPF_TRACING__ \
	    -I/usr/include/x86_64-linux-gnu \
	    -Wall \
	    -O2 -emit-llvm -c -o bridge_xdp.ll bridge_xdp.c
	$(LLC) -march=bpf -filetype=obj -o bridge_xdp.o bridge_xdp.ll

loader: loader.c
	$(CC) -Wall -o loader loader.c -l:libbpf.a -lelf -lz

clean:
	rm -f bridge_xdp.o bridge_xdp.ll loader
