Files
system-programming/exercises/tree/Makefile
2025-07-01 10:21:34 +02:00

28 lines
484 B
Makefile

CC = gcc
CFLAGS = -Wall -Wextra -std=c11 -g
SRC = main.c tree.c
OBJ = $(SRC:.c=.o)
EXEC = tree
# Main target
all: $(EXEC)
# Build executable
$(EXEC): $(OBJ)
$(CC) $(CFLAGS) -o $@ $^
# Run test suite
test: all
@cd test && ./run_tests.sh
# Clean object files and executable
clean:
rm -f $(OBJ) $(EXEC)
# Full cleanup (also test artifacts)
distclean: clean
cd test && rm -f actual_output.txt valgrind.log expected_output.txt && rm -rf testdir
.PHONY: all test clean distclean