-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
50 lines (32 loc) 路 1.12 KB
/
Copy pathMakefile
File metadata and controls
50 lines (32 loc) 路 1.12 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
NAME = minishell
LIB_PATH = libft/
LIB = ${LIB_PATH}libft.a
SRCS = ${wildcard main/*.c parser/*.c dollar/*.c executor/*.c commands/*.c run/*.c}
HEADER = -I include/
OBJS = ${SRCS:%.c=%.o}
CC = gcc
CFLAGS = -Wall -Werror -Wextra
READLINE = -lreadline -L/Users/${USER}/.brew/Cellar/readline/8.1.1/lib/
RM = rm -rf
.PHONY : all clean fclean re subsystem readline
all : subsystem ${NAME}
subsystem :
@make -C ${LIB_PATH} all
@printf "\033[0;33m馃崁 File '${LIB}' is done ! 鉁匼033[0m\n"
${NAME} : ${OBJS_LIB} ${OBJS}
@${CC} ${CFLAGS} ${HEADER} ${READLINE} ${OBJS} ${LIB} -o ${NAME}
@printf "\033[0;32m馃挰 File '${NAME}' is created ! 鉁匼033[0m\n"
${OBJDIR} :
@mkdir -p ${OBJDIR}
%.o : %.c
@${CC} ${CFLAGS} ${HEADER} -I/Users/${USER}/.brew/Cellar/readline/8.1.1/include -c $< -o $@
readline :
brew install readline
clean :
@make -C ${LIB_PATH} clean
@${RM} ${OBJS}
@printf "\033[0;34m馃懟 Files '${OBJS}' are deleted ! 馃棏锔廫033[0m\n"
fclean : clean
@${RM} ${NAME} ${LIB}
@printf "\033[0;31m馃挰 File '${NAME}' is deleted ! 馃棏锔廫033[0m\n"
re : fclean all