CC := gcc
CFLAGS := -std=c99 -Wall -Wextra -Werror -Wpedantic
-INCGRAPH := -Iminilibx-linux -I/usr/include -ILibft/inc
+INCGRAPH := minilibx-linux /usr/include Libft/inc
LINKGRAPH := -Lminilibx-linux -lmlx -L/usr/lib -lXext -lX11 -lm -lbsd -LLibft -lft
+INCDIR := inc
+
+INC = $(addprefix -I, $(INCDIR) $(INCGRAPH))
+
NAME := fractol
MLXDIR := minilibx-linux/
MLX := $(MLXDIR)libmlx_Linux.a
LFTDIR := Libft/
LFT := $(LFTDIR)libft.a
-SRCS := main.c complex.c color.c event_handling.c fractals.c pixel.c
+SRCDIR := src
+
+SRCS := main.c \
+ complex.c \
+ color.c \
+ event_handling.c \
+ fractals.c \
+ pixel.c \
+
+SRCS := $(addprefix $(SRCDIR)/, $(SRCS))
+
OBJS := $(SRCS:%.c=%.o)
all : $(NAME)
$(CC) $(CFLAGS) $(OBJS) -o $@ $(LINKGRAPH)
%.o : %.c | $(LFTDIR)Makefile $(MLXDIR)Makefile
- $(CC) $(CFLAGS) $(INCGRAPH) -c $< -o $@
+ $(CC) $(CFLAGS) $(INC) -c $< -o $@
$(MLX) : | $(MLXDIR)Makefile
$(MAKE) -C $(MLXDIR)