」 feat(Makefile): made the makefile cute :3 (and use cc cuz gcc is way faster than clang, GNU supremacy)

This commit is contained in:
yosyo
2024-06-03 15:49:39 +02:00
parent 06f2480711
commit 0e572cd344
2 changed files with 28 additions and 19 deletions

View File

@ -6,13 +6,15 @@
# By: mmoussou <mmoussou@student.42angouleme.fr +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/04/24 10:49:52 by adjoly #+# #+# #
# Updated: 2024/05/21 20:56:16 by adjoly ### ########.fr #
# Updated: 2024/06/03 15:44:04 by mmoussou ### ########.fr #
# #
# **************************************************************************** #
SHELL = bash
NAME = minishell
CC = clang
CC = cc
OBJSDIR = obj/
@ -28,29 +30,36 @@ OBJS = $(addprefix $(OBJSDIR), $(SRC:.c=.o))
FLAGS = -Werror -Wall -Wextra -g
LIB = libft/libft.a \
LIB = libft/libft.a
$(NAME): $(OBJS)
@make -sj$(nproc) -C libft
# --------------------------------
all: $(NAME)
$(LIB):
@make -sj$(nproc) -C $(LIBFT_DIR)
$(NAME): $(LIB) $(OBJS)
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m objects compiled."
@printf "\n \x1B[1;33m[  ]\x1B[0m compiling $(NAME)..."
@$(CC) $(FLAGS) $(OBJS) $(LIB) -o $(NAME) -lreadline
@echo "[✔] Compiled"
@printf "\x1B[2K\r \x1B[1;33m[  ]\x1B[0m $(NAME) compiled.\n"
$(OBJSDIR)%.o: %.c
@mkdir -p $(@D)
@$(CC) $(INCLUDE) $(FLAGS) $< -c -o $@
@echo "[✔] $< compiled"
all: $(NAME)
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m compiling objects... : $<"
clean:
@make -s -C libft clean
@rm -f $(OBJS)
@printf " \x1B[1;31m[  ]\x1B[0m deleted $(NAME).\n"
fclean: clean
@make -s -C libft fclean
@rm -f $(NAME)
@rm -Rf $(OBJSDIR)
@echo "[X] Cleaned"
@printf " \x1B[1;31m[  ]\x1B[0m deleted objects.\n"
re: fclean all

View File

@ -6,13 +6,13 @@
# By: mmoussou <mmoussou@student.42angouleme.fr +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/01/22 07:21:18 by mmoussou #+# #+# #
# Updated: 2024/05/25 14:22:48 by adjoly ### ########.fr #
# Updated: 2024/06/03 15:42:56 by mmoussou ### ########.fr #
# #
# **************************************************************************** #
SHELL = bash
CC = clang
CC = cc
CFLAGS = -Wall -Werror -Wextra -pipe -fPIE
@ -94,23 +94,23 @@ OBJS = $(SRCS:.c=.o)
all: $(NAME)
%.o: %.c
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m Compiling Libft Objects... : $<"
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m compiling libft objects... : $<"
@$(CC) $(CFLAGS) -I$(INCLUDE) $< -c -o $@
$(NAME): $(OBJS)
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m Libft Objects Compiled."
@printf "\n \x1B[1;33m[ 󱉟 ]\x1B[0m Creating Libft Archive..."
@printf "\x1B[2K\r \x1B[1;32m[ 󱌣 ]\x1B[0m libft objects compiled."
@printf "\n \x1B[1;33m[ 󱉟 ]\x1B[0m creating libft archive..."
@ar rcs $(NAME) $(OBJS)
@printf "\x1B[2K\r \x1B[1;33m[ 󱉟 ]\x1B[0m Libft Archive Created.\n"
@printf "\x1B[2K\r \x1B[1;33m[ 󱉟 ]\x1B[0m libft archive created.\n"
clean:
@rm -f $(OBJS)
@printf " \x1B[1;31m[  ]\x1B[0m Deleted Libft Objects.\n"
@printf " \x1B[1;31m[  ]\x1B[0m deleted libft objects.\n"
fclean: clean
@rm -f $(NAME)
@printf " \x1B[1;31m[  ]\x1B[0m Deleted Libft Archive.\n"
@printf " \x1B[1;31m[  ]\x1B[0m deleted libft archive.\n"
re: fclean all
.PHONY: all server client clean fclean re
.PHONY: all clean fclean re