makefile compile both luke and hugo files

This commit is contained in:
hugogogo
2022-07-22 23:37:30 +02:00
12 changed files with 239 additions and 658 deletions

View File

@@ -1,62 +1,55 @@
NAME = webserv
NAME = webserv
CXX = c++
CXX = c++
CXXFLAGS = -Wall -Wextra #-Werror
CXXFLAGS += $(HEADERS)
CXXFLAGS += -std=c++98
CXXFLAGS += -g
#CXXFLAGS += -O3
CXXFLAGS = -Wall -Wextra -Werror
CXXFLAGS += -std=c++98
CXXFLAGS += -I$(HEADERS_D)
CXXFLAGS += -g
#CXXFLAGS += -O3
VPATH = $(SRCS_D)
#SHELL = /bin/zsh
VPATH = $(DIR_SRCS)
DIR_SRCS = srcs
HEADERS = $(HEADERS_D:%=-I%)
HEADERS_D = headers \
headers_hugo
HEADERS_D = ./srcs
HEADERS = bak__Webserv.hpp
SRCS_D = srcs \
srcs_hugo
SRCS = main.cpp \
Webserv.cpp
SRCS_HUGO = hugo_main.cpp \
hugo_Webserv.cpp
DEPENDENCIES = $(HEADERS:%=$(HEADERS_D)/%)
#SRCS = $(MAIN) Webserv.cpp
SRCS = $(MAIN) bak__Webserv.cpp
#MAIN = main.cpp
#MAIN = main_luke.cpp
MAIN = main_hugo.cpp
#MAIN = main_poll.cpp
#MAIN = main_select.cpp
DIR_OBJS = builds
OBJS = $(SRCS:%.cpp=$(DIR_OBJS)/%.o)
OBJS_D = builds
OBJS = $(SRCS:%.cpp=$(OBJS_D)/%.o)
OBJS_HUGO = $(SRCS_HUGO:%.cpp=$(OBJS_D)/%.o)
# --------------------
# ------ RULES -------
# --------------------
all: $(NAME)
hugo: fclean hu_link
$(DIR_OBJS)/%.o: %.cpp | $(DIR_OBJS)
$(OBJS_D)/%.o: %.cpp | $(OBJS_D)
$(CXX) $(CXXFLAGS) -c $< -o $@
$(DIR_OBJS):
$(OBJS_D):
mkdir $@
$(OBJS): $(DEPENDENCIES)
#$(OBJS): $(DEPENDENCIES) Makefile
$(NAME) : $(OBJS)
$(CXX) $(OBJS) -o $(NAME)
$(NAME): $(OBJS)
hu_link: $(OBJS_HUGO)
$(NAME) hu_link:
$(CXX) $^ -o $(NAME)
clean:
rm -f $(OBJS)
rm -rf $(OBJS_D)
fclean: clean
rm -f $(NAME)
re: fclean all
#run: all
.PHONY : all clean fclean re run
.PHONY : all clean fclean re