CXXFLAGS := -std=c++17 -Wall -fPIC

run: main inject.so
	@echo "--- running main ---"
	@./main

inject: run
	@echo "--- running LD_PRELOAD=./inject.so ./main ---"
	@LD_PRELOAD=./inject.so ./main

.PHONY: run clean inject

clean:
	@rm -f *.so *.o main

main: main.o lib.so
	g++ -o main -Wl,-rpath -Wl,'$$ORIGIN' -L. main.o -l:lib.so -ldl -rdynamic

lib.so: lib.o
	g++ -shared -o lib.so lib.o

inject.so: inject.o
	g++ -shared -o inject.so inject.o
