-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
84 lines (66 loc) · 2.43 KB
/
Makefile
File metadata and controls
84 lines (66 loc) · 2.43 KB
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# **************************************************************************** #
# #
# ::: :::::::: #
# Makefile :+: :+: :+: #
# +:+ +:+ +:+ #
# By: acesar-l <[email protected]> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2021/12/28 20:37:12 by acesar-l #+# #+# #
# Updated: 2022/02/28 13:23:44 by acesar-l ### ########.fr #
# #
# **************************************************************************** #
NAME = libftprintf.a
GREEN = \033[0;32m
RED = \033[0;31m
RESET = \033[0m
LIB_PATH = ./library
LIBFT = ./libft/libft.a
LIBFTPRINTF = ${LIB_PATH}/ft_printf.h
LIBS = -lftprintf
CC = clang
FLAGS = -Wall -Werror -Wextra
REMOVE = rm -f
INCLUDE = -I ${LIB_PATH}
SRCS_PATH = ./printf
SRCS = ${SRCS_PATH}/ft_printf.c \
${SRCS_PATH}/ft_argument_c.c \
${SRCS_PATH}/ft_arguments_d_i.c \
${SRCS_PATH}/ft_argument_p.c \
${SRCS_PATH}/ft_argument_percent.c \
${SRCS_PATH}/ft_argument_s.c \
${SRCS_PATH}/ft_argument_u.c \
${SRCS_PATH}/ft_arguments_x.c \
${SRCS_PATH}/ft_print_reversed_str.c \
${SRCS_PATH}/ft_free_ptr.c \
${SRCS_PATH}/ft_hex_length.c \
${SRCS_PATH}/ft_decimal_length.c \
${SRCS_PATH}/ft_decimal_converter_to_hex.c
OBJS = $(SRCS:.c=.o)
all: ${NAME}
${NAME}: ${OBJS} ${LIBFT}
@echo "\n$(NAME): $(GREEN)$(NAME) was created$(RESET)"
ar -rcs ${NAME} ${OBJS}
@echo
${LIBFT}:
@echo
make bonus -C libft
cp ${LIBFT} ${NAME}
.c.o:
@echo "\n$(NAME): $(GREEN)object files were created$(RESET)"
${CC} -c ${FLAGS} $< -o ${<:.c=.o} ${INCLUDE}
clean:
make clean -C libft
@echo "\n$(NAME): $(RED)object files were deleted$(RESET)"
${REMOVE} ${OBJS}
@echo
fclean:
make fclean -C libft
@echo "\n$(NAME): $(RED)object files were deleted$(RESET)"
${REMOVE} ${OBJS}
@echo "\n$(NAME): $(RED)$(NAME) was deleted$(RESET)"
${REMOVE} ${NAME}
@echo
re : fclean all
norm:
norminette
.PHONY: all clean fclean re norm