blob: 225bb3d57d1fb860a72570e1e908bb5cda058238 [file] [log] [blame]
SOURCES := $(wildcard *.comp)
SPIRV := $(SOURCES:.comp=.spv)
CPP_INTERFACE := $(SOURCES:.comp=.spv.cpp)
CPP_DRIVER := $(SOURCES:.comp=.cpp)
EXECUTABLES := $(SOURCES:.comp=.shader)
OBJECTS := $(CPP_DRIVER:.cpp=.o) $(CPP_INTERFACE:.cpp=.o)
CXXFLAGS += -std=c++11 -I../../include -I.
LDFLAGS += -pthread -lm
all: $(EXECUTABLES)
%.spv: %.comp
glslangValidator -V -o $@ $<
%.spv.cpp: %.spv
../../spirv-cross --cpp --output $@ $<
%.o: %.cpp
$(CXX) -c -o $@ $< $(CXXFLAGS)
%.shader: %.o %.spv.o
$(CXX) -o $@ $^ $(LDFLAGS)
clean:
$(RM) -f $(EXECUTABLES) $(SPIRV) $(CPP_INTERFACE) $(OBJECTS)
.PHONY: clean