From bee57c12a4582d56f2eb18ea632e416cbffe5528 Mon Sep 17 00:00:00 2001 From: not_a_robot Date: Sun, 19 Nov 2023 16:18:23 +0000 Subject: initial commit --- Makefile | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b2bb6df --- /dev/null +++ b/Makefile @@ -0,0 +1,45 @@ +ifneq (, $(shell which clang)) + CC:=clang +else ifneq (, $(shell which gcc)) + CC:=gcc +else ifneq (, $(shell which cc)) + CC:=cc +else + $(error "No C compiler found (!)") +endif + +CFLAGS:=-Wall -Wextra -Wpedantic -std=c99 -g3 +LDFLAGS:=-I/usr/local/include/ -I/usr/X11R6/include/ -I./src/raylib/src/ +LDLIBS:=-Lobj/ -lraylib -lGL -lm -lpthread -lX11 -ldl -lrt +DIRS:=obj bin +BINS:=bin/retris + +.PHONY: all dirs clean + +all: dirs $(BINS) + +run: dirs $(BINS) + bin/retris + +bin/retris: obj/retris.o obj/libraylib.a + $(CC) $(CFLAGS) $(LDFLAGS) $(LDLIBS) $^ -o $@ + +obj/%.o: src/%.c src/%.h + $(CC) $(CFLAGS) $(LDFLAGS) -c $< -o $@ +obj/%.o: src/%.c + $(CC) $(CFLAGS) $(LDFLAGS) -c $< -o $@ +obj/libraylib.a: src/raylib/src/* + mkdir -p src/raylib/build + cmake -DBUILD_EXAMPLES=OFF -S src/raylib -B src/raylib/build + $(MAKE) -C src/raylib/build -j8 + cp src/raylib/build/raylib/libraylib.a obj/ + +dirs: $(DIRS) +$(DIRS): + @mkdir -p $(DIRS) + +clean: + rm -rf bin/* obj/* src/raylib/build +# fast clean - raylib rarely, if ever, needs to be cleaned +fclean: + rm -f bin/* obj/*.o -- cgit v1.2.3