-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
45 lines (34 loc) · 737 Bytes
/
Makefile
File metadata and controls
45 lines (34 loc) · 737 Bytes
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
OS = $(shell uname)
NAME = fractol
SRC = $(wildcard ./srcs/*.c)
OBJ = $(SRC:.c=.o)
HDR = ./srcs/fractol.h
LIB = ./lib
INC = ./includes
LIBFT = $(LIB)/libft.a
ifeq ($(OS), Darwin)
LIBMLX = $(LIB)/mlx_macos.a
W_FLAGS = -Wall -Wextra -Werror
FLAGS = -framework OpenGL -framework AppKit
FLAGS += -framework OpenCL
CFLAGS = -DMAC
else
ifeq ($(OS), Linux)
# TODO
# LIBMLX = $(LIB)/mlx_linux.a
# FLAGS = -lmlx -lXext -lX11
# FLAGS += -lOpenCL
else
@echo "Cant make it on your system, sorry.."
endif
endif
all: $(NAME)
$(NAME): $(OBJ)
gcc -I $(INC) $(LIBFT) $(LIBMLX) $(FLAGS) $(OBJ) -o $(NAME)
%.o: %.c $(HDR)
gcc -I $(INC) $(CFLAGS) $(W_FLAGS) -c $< -o $@
clean:
rm -f $(OBJ)
fclean: clean
rm -f $(NAME)
re: fclean all