8116c12d426e1385b7fcbf6669798ae3c2be39aa
[raydungeon] / Makefile
1 src = $(wildcard src/*.c)
2 obj = $(src:.c=.o)
3 dep = $(src:.c=.d)
4 bin = game
5
6 warn = -pedantic -Wall
7 dbg = -g
8
9 CFLAGS = $(warn) $(opt) $(dbg) $(inc) $(def) -MMD
10 LDFLAGS = $(syslib) $(libgl)
11
12 sys := $(shell uname -s | sed 's/MINGW.*/mingw/')
13 ifeq ($(sys), mingw)
14         syslib = -mwindows
15         libgl = -lopengl32 -lfreeglut
16
17         obj = $(src:.c=.w32.o)
18         dep = $(src:.c=.w32.d)
19         bin = game.exe
20 else
21         libgl = -lGL -lGLU -lglut
22 endif
23
24 $(bin): $(obj)
25         $(CC) -o $@ $(obj) $(LDFLAGS)
26
27 -include $(dep)
28
29 %.w32.o: %.c
30         $(CC) -c $< $(CFLAGS) -o $@
31
32 .PHONY: clean
33 clean:
34         rm -f $(obj) $(bin)
35
36 .PHONY: cross
37 cross:
38         $(MAKE) CC=i686-w64-mingw32-gcc sys=mingw
39
40 .PHONY: cross-clean
41 cross-clean:
42         $(MAKE) sys=mingw clean