initial commit

This commit is contained in:
whaffman 2025-08-19 23:13:21 +02:00
commit 2f64f3327f
3 changed files with 86 additions and 0 deletions

0
.gitignore vendored Normal file
View File

45
Makefile Normal file
View File

@ -0,0 +1,45 @@
# **************************************************************************** #
# #
# :::::::: #
# Makefile :+: :+: #
# +:+ #
# By: whaffman <whaffman@student.codam.nl> +#+ #
# +#+ #
# Created: 2025/03/21 14:50:00 by whaffman #+# #+# #
# Updated: 2025/03/21 14:58:40 by whaffman ######## odam.nl #
# #
# **************************************************************************** #
EX = $(shell find . -maxdepth 1 -type d -name 'ex*' -exec basename {} \;)
all:
for ex in $(EX); do \
$(MAKE) -C $$ex; \
done
clean:
for ex in $(EX); do \
$(MAKE) -C $$ex clean; \
done
fclean:
for ex in $(EX); do \
$(MAKE) -C $$ex fclean; \
done
re:
for ex in $(EX); do \
$(MAKE) -C $$ex re; \
done
run:
@for ex in $(EX); do \
echo "Running tests in $$ex:"; \
$(MAKE) -sC $$ex fclean; \
$(MAKE) -sC $$ex run; \
$(MAKE) -sC $$ex fclean; \
echo "Finished tests in $$ex"; \
echo ""; \
done
.PHONY: all clean fclean re run

41
common.mk Normal file
View File

@ -0,0 +1,41 @@
# **************************************************************************** #
# #
# :::::::: #
# common.mk :+: :+: #
# +:+ #
# By: whaffman <whaffman@student.codam.nl> +#+ #
# +#+ #
# Created: 2025/03/21 15:00:16 by whaffman #+# #+# #
# Updated: 2025/03/21 15:04:44 by whaffman ######## odam.nl #
# #
# **************************************************************************** #
INC = -I./inc
VPATH = src
SRC = $(notdir $(wildcard src/*.cpp))
OBJ = $(SRC:.cpp=.o)
CC = c++
CFLAGS = -Wall -Wextra -Werror -std=c++11 -MMD
all: $(NAME)
-include $(OBJ:.o=.d)
run: all
./$(NAME)
$(NAME): $(OBJ)
$(CC) $(CFLAGS) $(OBJ) -o $(NAME)
%.o: %.cpp
$(CC) $(CFLAGS) $(INC) -c $< -o $@
clean:
rm -f $(OBJ)
fclean: clean
rm -f $(NAME)
re: fclean all
.PHONY: all clean fclean re run