Add makefile
This commit is contained in:
commit
e5d7347ba3
32
makefile
Normal file
32
makefile
Normal file
@ -0,0 +1,32 @@
|
||||
PROGRAM = program
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
CPPFLAGS = -Wall
|
||||
CXXFLAGS = -std=c++20 -O2
|
||||
LDFLAGS =
|
||||
LDLIBS = -lglfw -lvulkan -ldl -lpthread -lX11 -lXxf86vm -lXrandr -lXi
|
||||
DEPFLAGS = -MMD -MP
|
||||
# remark : I'm not really sure what DEPFLAGS stuff does...
|
||||
|
||||
SRCS := $(shell find src -name '*.cc')
|
||||
OBJS := $(patsubst src/%.cc, build/%.o, $(SRCS))
|
||||
DEPS := $(OBJS:%.o=%.d)
|
||||
|
||||
all: $(OBJS)
|
||||
@echo === LINKING $(PROGRAM)
|
||||
$(CXX) $(CXXFLAGS) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(LDLIBS)
|
||||
|
||||
build/%.o: src/%.cc
|
||||
@echo === COMPILING $@
|
||||
mkdir -p $(dir $@)
|
||||
$(CXX) $(DEPFLAGS) $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $<
|
||||
|
||||
run: all
|
||||
./$(PROGRAM)
|
||||
|
||||
clean:
|
||||
rm -f $(OBJS) $(DEPS) $(PROGRAM)
|
||||
|
||||
.PHONY: run clean
|
||||
|
||||
-include $(DEPS)
|
||||
Loading…
x
Reference in New Issue
Block a user