CC := c++ CFLAGS := -O0 -g -Wall -Wextra -Werror -std=c++98 SRC := main.cpp OBJ := $(patsubst %.cpp,%.o,$(SRC)) NAME := a.out all: $(NAME) $(NAME): $(OBJ) $(CC) -o $(NAME) $(OBJ) %.o: %.cpp $(CC) $(CFLAGS) -c -o $@ $< clean: rm -f $(OBJ) fclean: rm -f $(OBJ) $(NAME) re: make fclean make .PHONY: all clean fclean re