-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
executable file
·54 lines (42 loc) · 1.79 KB
/
Makefile
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
# **************************************************************************** #
# #
# ::: :::::::: #
# Makefile :+: :+: :+: #
# +:+ +:+ +:+ #
# By: user42 <user42@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2020/02/05 12:43:24 by vparekh #+# #+# #
# Updated: 2020/04/11 18:56:29 by user42 ### ########.fr #
# #
# **************************************************************************** #
BINARY = minishell
LIBFT = ./libft/libft.a
LIBFT_SRC := $(wildcard libft/*.c)
LIBFT_OBJ := $(patsubst libft/%.c, libft/%.o, $(LIBFT_SRC))
# COMP = gcc -Wall -Wextra -fsanitize=address -g3
COMP = gcc -Wall -Wextra -g3
INCLUDES = -Iincludes -Llibft -lft
SRC := $(wildcard src/*.c)
OBJ := $(patsubst src/%.c, obj/%.o, $(SRC))
GREEN='\033[01;32m'
RESET='\033[00m'
all: $(BINARY)
$(BINARY): $(LIBFT) $(MLX) $(OBJ)
@echo "$(GREEN).................Making minishell................ $(RESET)"
$(COMP) $(INCLUDES) $(OBJ) $(LIBFT) -o $(BINARY)
$(LIBFT): $(LIBFT_OBJ)
@echo "$(GREEN).................Making Libft.................... $(RESET)"
ar rcs $(LIBFT) $(LIBFT_OBJ)
libft/%.o: libft/%.c
$(COMP) -Iincludes -c $< -o $@
obj/%.o: src/%.c
mkdir -p obj
$(COMP) -Iincludes -c $< -o $@
norme:
norminette src/*
norminette includes/*
clean:
rm -rf libft/*.o obj/*
fclean: clean
rm -rf $(BINARY) *.dSYM $(LIBFT)
re: fclean all