42_so_long/Makefile
2024-02-26 12:51:26 +01:00

33 lines
718 B
Makefile

# The interesting part
NAME = test
SRCS = src/
INCLUDES = includes/
CODE = main
LIBRARIES = mlx
LINK=Xext X11 m z
# It works and I probably won't change it for the rest of my life
C_FILES = $(addsuffix .c,$(addprefix $(SRCS),$(CODE)))
O_FILES = $(addsuffix .o,$(addprefix $(SRCS),$(CODE)))
CC = cc -Wall -Wextra -Werror
all : $(NAME)
$(NAME) : $(O_FILES) $(LIBRARIES)
$(CC) -o $(NAME) $(O_FILES) $(addprefix -L ,$(LIBRARIES)) $(addprefix -l ,$(LIBRARIES) $(LINK))
$(LIBRARIES) :
true $(addprefix && make -C ,$(LIBRARIES))
%.o : %.c
$(CC) $(addprefix -I ,$(INCLUDES) $(LIBRARIES)) -c $< -o $@
clean :
rm -f $(O_FILES)
fclean : clean
rm -f $(NAME)
re : fclean all
.PHONY : all clean fclean re $(LIBRARIES)