-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
78 lines (62 loc) · 2.89 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
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
# **************************************************************************** #
# #
# ::: :::::::: #
# Makefile :+: :+: :+: #
# +:+ +:+ +:+ #
# By: tadiyamu <tadiyamu@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2023/07/11 00:05:10 by pbureera #+# #+# #
# Updated: 2023/07/30 18:01:20 by tadiyamu ### ########.fr #
# #
# **************************************************************************** #
NAME = cub3D
NAME_B = cub3D_bonus
SRC = srcs/cub3d.c srcs/file.c srcs/free.c srcs/map.c srcs/map_valid.c \
srcs/map_utils.c srcs/texture.c srcs/texture_utils.c srcs/edge.c \
srcs/parse_data.c srcs/player.c \
srcs/init_graphic.c srcs/exit.c srcs/rotation.c srcs/movements.c \
srcs/movements_utils.c srcs/init_player.c \
srcs/render.c srcs/render_player_init.c \
srcs/render_map.c srcs/render_raycast.c srcs/render_raycast_utils.c \
srcs/render_column.c \
srcs/hooks/hooks_close.c srcs/texture_display.c
B_SRC = srcs_bonus/cub3d_bonus.c srcs_bonus/file_bonus.c srcs_bonus/free_bonus.c srcs_bonus/map_bonus.c srcs_bonus/map_valid_bonus.c \
srcs_bonus/map_utils_bonus.c srcs_bonus/texture_bonus.c srcs_bonus/texture_utils_bonus.c srcs_bonus/edge_bonus.c \
srcs_bonus/parse_data_bonus.c srcs_bonus/player_bonus.c \
srcs_bonus/init_graphic_bonus.c srcs_bonus/exit_bonus.c srcs_bonus/rotation_bonus.c srcs_bonus/movements_bonus.c \
srcs_bonus/movements_utils_bonus.c srcs_bonus/init_player_bonus.c \
srcs_bonus/render_bonus.c srcs_bonus/render_player_init_bonus.c \
srcs_bonus/render_map_bonus.c srcs_bonus/render_raycast_bonus.c srcs_bonus/render_raycast_utils_bonus.c \
srcs_bonus/render_column_bonus.c \
srcs_bonus/hooks/hooks_close_bonus.c srcs_bonus/texture_display_bonus.c
OBJ = $(SRC:.c=.o)
B_OBJ = $(B_SRC:.c=.o)
CC = cc
LIBFT = ./libft/libft.a
MINILIBX = ./minilibx-linux/libmlx_Linux.a
FLAGS = -Wall -Wextra -Werror -g
LIBMLX = -Llibft/ -lft \
-L./minilibx-linux -lmlx_Linux -lmlx -lXext -lX11 -lm -lz
all: $(NAME)
$(NAME): $(OBJ) $(LIBFT) $(MINILIBX)
@$(CC) -o $(NAME) $(OBJ) $(LIBMLX)
bonus: $(NAME_B)
${NAME_B}: $(B_OBJ) $(LIBFT) $(MINILIBX)
@$(CC) -o $(NAME_B) $(B_OBJ) $(LIBMLX)
%.o : %.c
$(CC) $(FLAGS) -c $< -o $@
$(LIBFT):
cd libft && make && cd ..
$(MINILIBX):
cd minilibx-linux && make && cd ..
clean:
make clean -C libft
make clean -C minilibx-linux
rm -rf $(OBJ)
rm -rf $(B_OBJ)
fclean: clean
make fclean -C libft
rm -rf $(NAME)
rm -rf $(NAME_B)
re: fclean all
.PHONY: all clean fclean re