DobleSpiel/makefile
2025-12-03 13:25:27 +01:00

41 lines
1.0 KiB
Makefile

CC = gcc
FLAGS = -g -Wall -lm
# Betriebssystem erkennen und Variablen laden (hier stehen die Flags drin)
ifeq ($(OS),Windows_NT)
include makefile_windows.variables
else
UNAME = $(shell uname)
ifeq ($(UNAME),Linux)
include makefile_linux.variables
else
include makefile_mac.variables
endif
endif
# Objekt-Dateien, die wir für das Spiel brauchen
OBJ = stack.o bintree.o numbers.o timer.o highscore.o
# --- Hauptziel: Das Spiel bauen ---
# Hier fügen wir $(LDFLAGS) am Ende hinzu, damit -lopengl32 etc. genutzt werden
doble: main.o $(OBJ)
$(CC) $(FLAGS) main.o $(OBJ) -o doble $(LDFLAGS)
# --- Hilfsregel: Aus .c mach .o ---
%.o: %.c
$(CC) -c $(FLAGS) $< -o $@
# --- Tests ---
test_stack: test_stack.c stack.o
$(CC) $(FLAGS) test_stack.c stack.o -o test_stack
test_numbers: test_numbers.c numbers.o bintree.o stack.o
$(CC) $(FLAGS) test_numbers.c numbers.o bintree.o stack.o -o test_numbers
# --- Aufräumen ---
clean:
ifeq ($(OS),Windows_NT)
del /f *.o doble.exe test_stack.exe test_numbers.exe
else
rm -f *.o doble test_stack test_numbers
endif