NAME = webserv CXX = c++ CXXFLAGS = -Wall -Wextra #-Werror CXXFLAGS += $(HEADERS) CXXFLAGS += -std=c++98 CXXFLAGS += -g #CXXFLAGS += -O3 VPATH = $(SRCS_D) HEADERS = $(HEADERS_D:%=-I%) HEADERS_D = headers \ headers_hugo SRCS_D = srcs \ srcs_hugo SRCS = main.cpp \ Webserv.cpp SRCS_HUGO = hugo_main.cpp \ hugo_Webserv.cpp OBJS_D = builds OBJS = $(SRCS:%.cpp=$(OBJS_D)/%.o) OBJS_HUGO = $(SRCS_HUGO:%.cpp=$(OBJS_D)/%.o) # -------------------- # ------ RULES ------- # -------------------- all: $(NAME) hugo: fclean hu_link $(OBJS_D)/%.o: %.cpp | $(OBJS_D) $(CXX) $(CXXFLAGS) -c $< -o $@ $(OBJS_D): mkdir $@ $(NAME): $(OBJS) hu_link: $(OBJS_HUGO) $(NAME) hu_link: $(CXX) $^ -o $(NAME) clean: rm -rf $(OBJS_D) fclean: clean rm -f $(NAME) re: fclean all .PHONY : all clean fclean re