src = $(wildcard src/*.c) obj = $(src:.c=.o) dep = $(obj:.o=.d) vsdr = $(wildcard data/*.vert) fsdr = $(wildcard data/*.frag) spv = $(subst .vert,.vert.spv,$(vsdr)) \ $(subst .frag,.frag.spv,$(fsdr)) bin = rt dbg = -g inc = -I/usr/include -Isubmodule/libimago/src -I/usr/local/include CC = gcc CXX = g++ CFLAGS = -pedantic -Wall $(dbg) -MMD CXXFLAGS = -pedantic -Wall $(dbg) -MMD $(opt) $(inc) LDFLAGS = -lvulkan -lglfw -lassimp -limago .PHONY: all all: $(bin) $(spv) $(bin): $(obj) $(CXX) -o $@ $(obj) $(LDFLAGS) %.vert.spv: %.vert glslangValidator -V $< -o $@ %.frag.spv: %.frag glslangValidator -V $< -o $@ -include $(dep) .PHONY: clean clean: rm -f $(obj) $(bin) $(dep) $(spv)