diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 23 |
1 files changed, 13 insertions, 10 deletions
| @@ -1,31 +1,34 @@ | |||
| 1 | OS := $(shell uname) | 1 | OS := $(shell uname) |
| 2 | ifeq ($(OS), Linux) | 2 | ifeq ($(OS), Linux) |
| 3 | SYSTEM = linux_amd64 | 3 | SYSTEM = linux_amd64 |
| 4 | else ifeq ($(OS), Darwin) | 4 | else ifeq ($(OS), Darwin) |
| 5 | SYSTEM = macos | 5 | SYSTEM = macos |
| 6 | else ifeq ($(OS), WindowsNT) | 6 | else ifeq ($(OS), WindowsNT) |
| 7 | SYSTEM = windows | 7 | SYSTEM = windows |
| 8 | else | 8 | else |
| 9 | SYSTEM = unknown | 9 | SYSTEM = unknown |
| 10 | endif | 10 | endif |
| 11 | 11 | ||
| 12 | CC := clang | 12 | CC := clang |
| 13 | RAYLIB_VER := raylib-6.0_$(SYSTEM) | 13 | RAYLIB_VER := raylib-6.0_$(SYSTEM) |
| 14 | CFLAGS := -std=c99 -v -g -I./vendor/$(RAYLIB_VER)/include | 14 | CFLAGS := -std=c99 -v -g -I./vendor/$(RAYLIB_VER)/include |
| 15 | LDFLAGS := -L./vendor/$(RAYLIB_VER)/lib -Wl,-Bstatic -lraylib -Wl,-Bdynamic -lm -lpthread -ldl -lrt -lX11 | 15 | LDFLAGS := ./vendor/$(RAYLIB_VER)/lib/libraylib.a -lm |
| 16 | GAME := bin/stalag | 16 | GAME := bin/stalag |
| 17 | HEXDUMP := bin/hexdump | 17 | HEXDUMP := bin/hexdump |
| 18 | SOURCES := main.c | 18 | SOURCES := main.c map.c game.c |
| 19 | |||
| 20 | ifeq ($(SYSTEM), linux_amd64) | ||
| 21 | LDFLAGS += -lX11 | ||
| 22 | endif | ||
| 19 | 23 | ||
| 20 | # Check if macOS and then append proper CFLAGS. | ||
| 21 | ifeq ($(SYSTEM), macos) | 24 | ifeq ($(SYSTEM), macos) |
| 22 | CFLAGS += -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL | 25 | LDFLAGS += -framework CoreVideo -framework IOKit -framework Cocoa -framework GLUT -framework OpenGL |
| 23 | endif | 26 | endif |
| 24 | 27 | ||
| 25 | all: info mkdirs $(HEXDUMP) $(GAME) | 28 | all: info mkdirs $(HEXDUMP) $(GAME) |
| 26 | 29 | ||
| 27 | .PHONY: info mkdirs clean | 30 | .PHONY: info mkdirs clean |
| 28 | 31 | ||
| 29 | info: # Print out information about the build | 32 | info: # Print out information about the build |
| 30 | $(info CC : $(CC)) | 33 | $(info CC : $(CC)) |
| 31 | $(info SYSTEM : $(SYSTEM)) | 34 | $(info SYSTEM : $(SYSTEM)) |
| @@ -43,4 +46,4 @@ mkdirs: | |||
| 43 | mkdir -p bin | 46 | mkdir -p bin |
| 44 | 47 | ||
| 45 | clean: | 48 | clean: |
| 46 | -rm $(GAME) $(HEXDUMP) \ No newline at end of file | 49 | -rm $(GAME) $(HEXDUMP) |
