From: Dominik Kaiser Date: Mon, 29 Apr 2024 11:39:47 +0000 (+0200) Subject: Setup Makefile X-Git-Url: https://git.dkaiser.de/?a=commitdiff_plain;h=978f429e07bc07092fcedcdc0b86c2f86ad7b9ff;p=42%2Fpipex.git Setup Makefile --- diff --git a/Makefile b/Makefile index e69de29..ae987e4 100644 --- a/Makefile +++ b/Makefile @@ -0,0 +1,40 @@ +NAME := pipex + +CC = cc +CFLAGS = -Wall -Wextra -Werror +HEADERS = +LIBS = + +VPATH := src +SRC = main.c + +OBJ_DIR := obj +OBJ := $(addprefix $(OBJ_DIR)/, $(SRC:%.c=%.o)) + + +all: $(NAME) + +$(NAME): $(OBJ) + $(CC) $(CFLAGS) $(HEADERS) $^ -o $@ $(LIBS) + +$(OBJ_DIR)/%.o: %.c + @if [ ! -d "$(OBJ_DIR)" ]; then \ + mkdir $(OBJ_DIR); \ + fi + $(CC) $(CFLAGS) $(HEADERS) -c $< -o $@ + +clean: + @if [ -d "$(OBJ_DIR)" ]; then \ + rm -rf $(OBJ_DIR); \ + echo "Removed object files."; \ + fi + +fclean: clean + @if [ -f "$(NAME)" ]; then \ + rm -f $(NAME); \ + echo "Removed binary."; \ + fi + +re: fclean all + +.PHONY: all clean fclean re