From bcc10bf187d6b517aa2167ed43aab43e92912b5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zo=C3=ABy=20Noort?= Date: Mon, 5 May 2025 18:24:27 +0200 Subject: [PATCH] chore: added Makefile --- Makefile | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8a0ee05 --- /dev/null +++ b/Makefile @@ -0,0 +1,31 @@ +CC = clang +CFLAGS = -Wall -Wextra -Werror -O3 +LDFLAGS = -flto +SRC_DIR = srcs +OBJ_DIR = obj +BUILD_DIR = build +HDR_DIR = hdrs +SRCS = $(wildcard $(SRC_DIR)/*.c) +OBJS = $(SRCS:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) +LIBRARY = $(BUILD_DIR)/libft.a + +all: $(LIBRARY) + +$(OBJ_DIR) $(BUILD_DIR): + @mkdir -p $@ + +$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c $(HDR_DIR)/*.h | $(OBJ_DIR) + $(CC) $(CFLAGS) -I$(HDR_DIR) -c $< -o $@ + +$(LIBRARY): $(OBJS) | $(BUILD_DIR) + $(AR) rcs $(LIBRARY) $(OBJS) + +clean: + rm -rf $(OBJ_DIR)/*.o + +fclean: clean + rm -rf $(BUILD_DIR) + +re: fclean all + +.PHONY: all clean fclean re