diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 20 |
1 files changed, 12 insertions, 8 deletions
@@ -9,7 +9,7 @@ NAME := minishell CC = cc -CFLAGS = -Wall -Wextra -Werror +CFLAGS = -Wall -Wextra -g LIB_DIR = lib LIBS = -L $(LIB_DIR)/libft -lft -lreadline HEADERS = -I include -I $(LIB_DIR)/libft @@ -19,7 +19,9 @@ SRC := main.c debug_tools.c init.c signal_handling.c repl.c new_token.c \ free_token.c new_node.c free_node.c tokenizer.c parser.c \ parse_cmd.c collect_redirs.c print_ast.c interpreter.c env.c \ get_cmd_path.c env_to_strlst.c execute_cmd.c format_string.c \ - builtins_part_one.c builtins_part_two.c + builtins_part_one.c builtins_part_two.c env_tools.c error.c \ + read_heredoc.c create_files.c builtins_part_three.c handle_redir.c \ + praise_the_norme.c OBJ_DIR := _obj OBJ := $(addprefix $(OBJ_DIR)/, $(SRC:%.c=%.o)) @@ -30,18 +32,18 @@ OBJ := $(addprefix $(OBJ_DIR)/, $(SRC:%.c=%.o)) all: libs $(NAME) -$(NAME): $(OBJ) - @$(CC) $(CFLAGS) $(HEADERS) $(LIBS) $^ -o $@ - @echo "[$(NAME)] Created binary." - libs: @make -C $(LIB_DIR)/libft +$(NAME): $(OBJ) + @$(CC) $(CFLAGS) $^ -o $@ $(HEADERS) $(LIBS) + @echo "[$(NAME)] Created binary." + $(OBJ_DIR)/%.o: %.c @if [ ! -d "$(dir $@)" ]; then \ mkdir -p $(dir $@); \ fi - @$(CC) $(CFLAGS) $(HEADERS) -c $< -o $@ + @$(CC) $(CFLAGS) -c $< -o $@ $(HEADERS) @echo "[$(NAME)] Compiled $<." clean: @@ -63,7 +65,9 @@ debug: CFLAGS += -g debug: CFLAGS += -fsanitize=address -fsanitize=undefined \ -fno-sanitize-recover=all -fsanitize=float-divide-by-zero \ -fsanitize=float-cast-overflow -fno-sanitize=null \ - -fno-sanitize=alignment + -fno-sanitize=alignment -fno-sanitize=object-size \ + -fno-sanitize=vptr -fno-sanitize=return -fno-sanitize=signed-integer-overflow \ + -fno-sanitize=bounds -fno-sanitize=pointer-subtract -fno-sanitize=pointer-compare debug: CFLAGS += -DDEBUG=1 debug: clean all |
