CXX=g++ CXXFLAGS=-Wall -Wextra -O0 -g -I../stack_walker -rdynamic TARGET_BASE=stack_walked TARGETS= \ $(TARGET_BASE).per_func.bin \ $(TARGET_BASE).global.bin \ $(TARGET_BASE).libunwind.bin all: $(TARGETS) stack_walked.libunwind.bin: stack_walked.cpp LD_RUN_PATH=../stack_walker_libunwind \ $(CXX) $(CXXFLAGS) -o $@ $^ \ -L../stack_walker_libunwind -ldl -lstack_walker stack_walked.%.bin: stack_walked.cpp LD_RUN_PATH=eh_elfs.$*:../stack_walker \ $(CXX) $(CXXFLAGS) -o $@ $^ \ -L../stack_walker -ldl -lstack_walker.$* eh_elfs.per_func: stack_walked.per_func.bin ../generate_eh_elf.py --remote seneve --deps -o $@ --switch-per-func $< .PHONY: eh_elfs.per_func eh_elfs.global: stack_walked.global.bin ../generate_eh_elf.py --remote seneve --deps -o $@ --global-switch $< .PHONY: eh_elfs.global clean: rm -f *.bin