forked from IshikawaRasoto/SamuraiSouls
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
31 lines (21 loc) · 654 Bytes
/
Makefile
File metadata and controls
31 lines (21 loc) · 654 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
PROJECT_NAME := main
CC := g++
SRC_DIR := src
INCLUDE_DIR := include
CSRCS := $(shell find ./ $(SRC_DIR) -name "*.cpp")
HSRCS := $(shell find $(INCLUDE_DIR) -name "*.hpp")
OBJS := $(CSRCS:.cpp=.o)
INCLUDES := $(foreach dir, $(INCLUDE_DIR), -I$(dir))
SFML_MODULES := window graphics system
SFML_FLAGS := $(foreach module, $(SFML_MODULES), -lsfml-$(module))
FLAGS = $(SFML_FLAGS) -lm $(INCLUDES) -c
all: $(PROJECT_NAME)
$(PROJECT_NAME): $(OBJS)
$(CC) -o $@ $^ $(SFML_FLAGS)
%.o: %.cpp
$(CC) -o $@ $< $(FLAGS)
main.o: main.cpp
$(CC) -o $@ $< $(FLAGS)
clean:
rm -rf $(shell find ./ $(SRC_DIR) -name "*.o") ./$(PROJECT_NAME)
.PHONY: clean all