aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-31 08:08:59 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-31 08:48:42 +0100
commit9db52bc5ef545a3fa9973002e9a28a2ece68d029 (patch)
tree0a1f36d989c6c3cb74e3bc5d5997c6a4c3f058b9 /Makefile
parent3b884e3836c70b1a19eb7778308fadbc608b0384 (diff)
downloadlibft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.tar.gz
libft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.tar.bz2
libft-9db52bc5ef545a3fa9973002e9a28a2ece68d029.zip
Setup unit test with unity
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile34
1 files changed, 24 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 71b147b..ed5ad8a 100644
--- a/Makefile
+++ b/Makefile
@@ -6,21 +6,24 @@
# By: cacharle <marvin@42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2019/10/08 15:45:53 by cacharle #+# #+# #
-# Updated: 2020/01/17 10:51:24 by cacharle ### ########.fr #
+# Updated: 2020/01/31 08:26:39 by cacharle ### ########.fr #
# #
# **************************************************************************** #
LIB = ar rcs
RM = rm -f
+NORM = norminette
+MAKE = make
MAKE_ARGS = --no-print-directory
-CC = gcc
-CCFLAGS = -I$(INCLUDE_DIR) -Wall -Wextra -Werror
-
SRC_DIR = src
INCLUDE_DIR = include
OBJ_DIR = obj
SCRIPT_DIR = script
+TEST_DIR = test
+
+CC = gcc
+CCFLAGS = -I$(INCLUDE_DIR) -Wall -Wextra -Werror
IGNORE_FILE = .libftignore
IGNORE_DEFAULT = ft_printf
@@ -30,19 +33,30 @@ NAME = libft.a
SRC = $(shell sh $(SCRIPT_DIR)/find_src.sh $(IGNORE_FILE))
OBJ = $(SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o)
-HEADER = $(shell find $(INCLUDE_DIR) -name "*.h")
+INCLUDE = $(shell find $(INCLUDE_DIR) -name "*.h")
all: prebuild $(NAME)
+.PHONY: test
+test: all
+ @echo "Testing"
+ @$(MAKE) $(MAKE_ARGS) -C $(TEST_DIR) run
+
+norm:
+ @if [ `command -v $(NORM)` ]; \
+ then echo "Running norminette"; \
+ $(NORM) $(SRC) $(INCLUDE); \
+ else echo "$(NORM) not installed"; fi
+
prebuild:
- @for dir in $$(find $(SRC_DIR)/* $(FIND_ARGS) -type d | \
- sed 's_$(SRC_DIR)/_$(OBJ_DIR)/_g'); \
- do \
- if [ ! -d "$$dir" ]; then \
+ @for dir in $$(find $(SRC_DIR)/* $(FIND_ARGS) -type d | \
+ sed 's_$(SRC_DIR)/_$(OBJ_DIR)/_g'); \
+ do \
+ if [ ! -d "$$dir" ]; then \
mkdir -p $$dir; echo "Making build dir: $$dir"; fi \
done
-$(NAME): $(OBJ) $(HEADER)
+$(NAME): $(OBJ) $(INCLUDE)
@echo "Linking: $@"
@$(LIB) $@ $(OBJ)