aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-15 14:19:33 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-15 14:19:33 +0100
commit7dce30ca733f6b310f997c4515e486718b273d44 (patch)
tree97f6d7e8776accecd2e50a5df73c1237a0a1dabe /Makefile
parentf061613650f5e7c5e260a4d9a1ca1b1d80ca2f2c (diff)
downloadpush_swap-7dce30ca733f6b310f997c4515e486718b273d44.tar.gz
push_swap-7dce30ca733f6b310f997c4515e486718b273d44.tar.bz2
push_swap-7dce30ca733f6b310f997c4515e486718b273d44.zip
WIP: Checker base
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile53
1 files changed, 41 insertions, 12 deletions
diff --git a/Makefile b/Makefile
index f1bb6eb..f36ee3c 100644
--- a/Makefile
+++ b/Makefile
@@ -1,24 +1,46 @@
RM = rm -f
+LIBFT_DIR = libft
+
CC = gcc
-CCFLAGS = -Wall -Wextra #-Werror
+CCFLAGS = -I$(COMMON_DIR) -I$(LIBFT_DIR)/include -Wall -Wextra #-Werror
+LDFLAGS = -L$(LIBFT_DIR) -lft
+
+SRC_DIR = src
+COMMON_DIR = $(SRC_DIR)/common
CHECKER_NAME = checker
-CHECKER_SRC = checker_src/main.c
-CHECKER_OBJ = $(CHECKER_SRC:.c=.o)
+
+COMMON_HEADER = $(COMMON_DIR)/common.h
+COMMON_FILES = stack.c action.c
+COMMON_SRC = $(addprefix $(COMMON_DIR)/,$(COMMON_FILES))
+COMMON_OBJ = $(COMMON_SRC:.c=.o)
PUSH_SWAP_NAME = push_swap
-PUSH_SWAP_SRC = push_swap_src/main.c
-PUSH_SWAP_OBJ = $(PUSH_SWAP_SRC:.c=.o)
+CHECKER_DIR = $(SRC_DIR)/checker
+PUSH_SWAP_DIR = $(SRC_DIR)/push_swap
+CHECKER_HEADER = $(CHECKER_DIR)/checker.h
+CHECKER_FILES = main.c check.c
+CHECKER_SRC = $(addprefix $(CHECKER_DIR)/,$(CHECKER_FILES))
+CHECKER_OBJ = $(CHECKER_SRC:.c=.o)
+CHECKER_OBJ += $(COMMON_OBJ)
+
+PUSH_SWAP_HEADER = $(PUSH_SWAP_DIR)/push_swap.h
+PUSH_SWAP_FILES = main.c
+PUSH_SWAP_SRC = $(addprefix $(PUSH_SWAP_DIR)/,$(PUSH_SWAP_FILES))
+PUSH_SWAP_OBJ = $(PUSH_SWAP_SRC:.c=.o)
+PUSH_SWAP_OBJ += $(COMMON_OBJ)
-all: $(CHECKER_NAME) $(PUSH_SWAP_NAME)
+all: libft_all $(CHECKER_NAME) $(PUSH_SWAP_NAME)
+$(CHECKER_NAME): CCFLAGS += -I$(CHECKER_DIR)
$(CHECKER_NAME): $(CHECKER_OBJ) $(CHECKER_HEADER)
- $(CC) -o $@ $(CHECKER_OBJ)
+ $(CC) $(LDFLAGS) -o $@ $(CHECKER_OBJ)
+$(PUSH_SWAP_NAME): CCFLAGS += -I$(PUSH_SWAP_DIR)
$(PUSH_SWAP_NAME): $(PUSH_SWAP_OBJ) $(PUSH_SWAP_HEADER)
- $(CC) -o $@ $(PUSH_SWAP_OBJ)
+ $(CC) $(LDFLAGS) -o $@ $(PUSH_SWAP_OBJ)
%.o: %.c
$(CC) $(CCFLAGS) -c -o $@ $<
@@ -26,9 +48,16 @@ $(PUSH_SWAP_NAME): $(PUSH_SWAP_OBJ) $(PUSH_SWAP_HEADER)
clean:
$(RM) $(CHECKER_OBJ)
$(RM) $(PUSH_SWAP_OBJ)
+ make -C $(LIBFT_DIR) fclean
+
+fclean:
+ $(RM) $(CHECKER_OBJ) $(CHECKER_NAME)
+ $(RM) $(PUSH_SWAP_OBJ) $(PUSH_SWAP_NAME)
+ make -C $(LIBFT_DIR) fclean
-fclean: clean
- $(RM) $(CHECKER_NAME)
- $(RM) $(PUSH_SWAP_NAME)
+re:
+ make fclean
+ make all
-re: fclean all
+libft_all:
+ make -C $(LIBFT_DIR)