-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
68 lines (49 loc) · 1.77 KB
/
Makefile
File metadata and controls
68 lines (49 loc) · 1.77 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
# **************************************************************************** #
# #
# ::: :::::::: #
# Makefile :+: :+: :+: #
# +:+ +:+ +:+ #
# By: mrodrigu <[email protected]> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2017/11/21 03:08:21 by mrodrigu #+# #+# #
# Updated: 2017/12/05 11:25:03 by jagarcia ### ########.fr #
# #
# **************************************************************************** #
.PHONY : clean fclean re $(LIB_PATH)
NAME = fillit
FLAGS = -Wall -Wextra -Werror
LIB_NAME = libft.a
LIB_DIR = libft/
LIB_PATH = $(LIB_DIR)$(LIB_NAME)
OBJ_DIR_NAME = objects
OBJ_DIR = $(OBJ_DIR_NAME)/
#OBJ_DIR = ./
HEADER_DIR = libft/
SRC = main.c \
ft_filler.c \
ft_reader.c \
ft_decoder.c \
ft_check.c \
ft_fill.c \
ft_memset_fillit.c \
ft_erase.c \
ft_dealer.c
OBJ = $(patsubst %.c,$(OBJ_DIR)%.o,$(SRC))
all : $(NAME)
$(NAME): $(OBJ) $(LIB_PATH)
@gcc -o $(NAME) $(OBJ) -L$(LIB_DIR) -lft -I$(HEADER_DIR)
$(LIB_PATH):
@$(MAKE) -C $(LIB_DIR) --no-print-directory
$(OBJ_DIR)%.o : %.c
@gcc $(FLAGS) -I $(HEADER_DIR) -c $<
@mkdir -p $(OBJ_DIR_NAME)
@mv -f $(@F) $(OBJ_DIR)
clean :
@rm -f $(OBJ)
@rm -rvf $(OBJ_DIR_NAME)
@$(MAKE) -C $(LIB_DIR) clean --no-print-directory
fclean : clean
@rm -f $(NAME)
@$(MAKE) -C $(LIB_DIR) fclean --no-print-directory
re: fclean
@make