CC=clang++ CFLAGS=-c -O2 -Wall -Wextra -Werror -MMD $(INCLUDES) INCLUDES=\ -Iinc/ \ -isystem VkFFT/vkFFT/ \ -isystem VkFFT/glslang-main/glslang/Include \ $(shell pkg-config --cflags vulkan 2>/dev/null) LDFLAGS=-Llib -lfftw3f \ -LVkFFT/build/glslang-main/SPIRV \ -LVkFFT/build/glslang-main/glslang \ -lSPIRV -lglslang \ $(shell pkg-config --libs vulkan 2>/dev/null) SRCS=$(wildcard *.cc) OBJS=$(SRCS:.cc=.o) HDRS=$(wildcard *.h) EXE=baseline $(EXE): $(OBJS) | foss $(CC) $^ -o $@ $(LDFLAGS) %.o: %.cc | foss $(CC) $(CFLAGS) $^ -o $@ .PHONY: all all: $(EXE) .PHONY: foss foss: @bash ./foss.sh .PHONY: clean clean: rm -f $(OBJS)