42 lines
616 B
Makefile
42 lines
616 B
Makefile
|
|
|
|
COMPILER = g++
|
|
|
|
NAME = codingame-ide-sync
|
|
|
|
FLAGS = -std=c++20 -Wall -Werror -Wextra
|
|
|
|
#ex: INCLUDES = -I libs/FTXUI/include -I libs/json-parser/include
|
|
INCLUDES=
|
|
|
|
SOURCES = \
|
|
main \
|
|
File \
|
|
merge \
|
|
|
|
SRC_WITHOUT_SUFFIX = $(addprefix src/, $(SOURCES))
|
|
SRC = $(addsuffix .cpp, $(SRC_WITHOUT_SUFFIX))
|
|
OBJ = $(SRC:src/%.cpp=obj/%.o)
|
|
|
|
all: $(NAME)
|
|
|
|
$(NAME): dir $(OBJ)
|
|
${COMPILER} $(FLAGS) $(OBJ) -o $(NAME)
|
|
|
|
dir:
|
|
if [ ! -d "obj" ]; then mkdir obj; fi
|
|
|
|
obj/%.o: src/%.cpp src/*.h
|
|
${COMPILER} $(FLAGS) $(INCLUDES) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(OBJ)
|
|
|
|
fclean: clean
|
|
rm -f $(NAME)
|
|
|
|
re: fclean all
|
|
|
|
|
|
run: all
|
|
./${NAME}
|