Makefile 663 B

1234567891011121314151617181920212223242526272829
  1. # Install
  2. BIN = demo
  3. # Flags
  4. CFLAGS += -std=c89 -Wall -Wextra -pedantic -O2
  5. SRC = main.c
  6. OBJ = $(SRC:.c=.o)
  7. ifeq ($(OS),Windows_NT)
  8. BIN := $(BIN).exe
  9. LIBS = -lglfw3 -lvulkan -lm
  10. else
  11. UNAME_S := $(shell uname -s)
  12. GLFW3 := $(shell pkg-config --libs glfw3)
  13. LIBS = $(GLFW3) -lvulkan -lm
  14. endif
  15. $(BIN): shaders/demo.vert.spv shaders/demo.frag.spv
  16. @mkdir -p bin
  17. rm -f bin/$(BIN) $(OBJS)
  18. $(CC) $(SRC) $(CFLAGS) -o bin/$(BIN) $(LIBS)
  19. shaders/demo.vert.spv: shaders/demo.vert
  20. glslc --target-env=vulkan shaders/demo.vert -o shaders/demo.vert.spv
  21. shaders/demo.frag.spv: shaders/demo.frag
  22. glslc --target-env=vulkan shaders/demo.frag -o shaders/demo.frag.spv