diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..150f3b5 --- /dev/null +++ b/Makefile @@ -0,0 +1,46 @@ +OS := $(shell uname) +ifeq ($(OS), Linux) +SYSTEM = linux_amd64 +else ifeq ($(OS), Darwin) +SYSTEM = macos +else ifeq ($(OS), WindowsNT) +SYSTEM = windows +else +SYSTEM = unknown +endif + +CC := clang +RAYLIB_VER := raylib-6.0_$(SYSTEM) +CFLAGS := -std=c99 -v -g -I./vendor/$(RAYLIB_VER)/include +LDFLAGS := -L./vendor/$(RAYLIB_VER)/lib -Wl,-Bstatic -lraylib -Wl,-Bdynamic -lm -lpthread -ldl -lrt -lX11 +GAME := bin/stalag +HEXDUMP := bin/hexdump +SOURCES := main.c + +# Check if macOS and then append proper CFLAGS. +ifeq ($(SYSTEM), macos) +CFLAGS += -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL +endif + +all: info mkdirs $(HEXDUMP) $(GAME) + +.PHONY: info mkdirs clean + +info: # Print out information about the build + $(info CC : $(CC)) + $(info SYSTEM : $(SYSTEM)) + $(info RAYLIB_VER : $(RAYLIB_VER)) + $(info CFLAGS : $(CFLAGS)) + $(info LDFLAGS : $(LDFLAGS)) + +$(GAME): $(SOURCES) + $(CC) $(CFLAGS) $(SOURCES) -o $(GAME) $(LDFLAGS) + +$(HEXDUMP): tools/hexdump.c + $(CC) -std=c99 -o $(HEXDUMP) tools/hexdump.c + +mkdirs: + mkdir -p bin + +clean: + -rm $(GAME) $(HEXDUMP)
\ No newline at end of file |
