-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
37 lines (24 loc) · 960 Bytes
/
Copy pathMakefile
File metadata and controls
37 lines (24 loc) · 960 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
32
33
34
35
36
# Les sources
SRC_DIR = src
HDR_DIR = headers
OBJ_DIR = obj
SOURCES = main.cpp $(SRC_DIR)/Server.cpp $(SRC_DIR)/ServerParsing.cpp $(SRC_DIR)/ServerMessaging.cpp $(SRC_DIR)/ServerCommands.cpp $(SRC_DIR)/ServerUtils.cpp $(SRC_DIR)/Client.cpp $(SRC_DIR)/Channel.cpp
OBJECTS = $(OBJ_DIR)/main.o $(OBJ_DIR)/Server.o $(OBJ_DIR)/Client.o $(OBJ_DIR)/Channel.o
CXX = c++
CXXFLAGS = -Wall -Wextra -Werror -std=c++98 -I$(HDR_DIR)
NAME = irc
all: $(OBJ_DIR) $(NAME)
$(OBJ_DIR):
mkdir -p $(OBJ_DIR)
$(OBJ_DIR)/main.o: main.cpp $(HDR_DIR)/Server.hpp $(HDR_DIR)/Client.hpp $(HDR_DIR)/Channel.hpp $(HDR_DIR)/libs.hpp
$(CXX) $(CXXFLAGS) -c $< -o $@
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp $(HDR_DIR)/Server.hpp $(HDR_DIR)/Client.hpp $(HDR_DIR)/Channel.hpp $(HDR_DIR)/libs.hpp
$(CXX) $(CXXFLAGS) -c $< -o $@
$(NAME): $(OBJECTS)
$(CXX) $(OBJECTS) -o $@
clean:
rm -f $(OBJ_DIR)/*.o
fclean: clean
rm -rf $(NAME) $(OBJ_DIR)
re: fclean all
.PHONY: all clean fclean re