1 src = $(wildcard src/*.c) $(wildcard src/scr/*.c) $(wildcard src/glut/*.c)
2 asmsrc = $(wildcard src/*.asm)
3 obj = $(src:.c=.o) $(asmsrc:.asm=.o)
7 asmsrc += cspr/dbgfont.asm cspr/confont.asm
8 bindata = data/loading.img
10 inc = -I/usr/local/include -Isrc -Isrc/3dgfx -Isrc/scr -Isrc/glut -Ilibs \
11 -Ilibs/imago/src -Ilibs/mikmod/include
12 def = -DMINIGLUT_USE_LIBC -DMIKMOD_STATIC
13 warn = -pedantic -Wall -Wno-unused-variable -Wno-unused-function
14 #opt = -O3 -ffast-math
17 CFLAGS = $(arch) $(warn) $(opt) -fno-pie -fno-strict-aliasing $(dbg) $(inc)
18 LDFLAGS = $(arch) -no-pie -Llibs/imago -Llibs/mikmod -limago -lmikmod \
21 cpu ?= $(shell uname -m | sed 's/i.86/i386/')
27 sys ?= $(shell uname -s | sed 's/MINGW.*/mingw/; s/IRIX.*/IRIX/')
29 obj = $(src:.c=.w32.o)
33 LDFLAGS += -static-libgcc -lmingw32 -mconsole -lgdi32 -lwinmm \
36 LDFLAGS += -lGL -lX11 -lpthread
39 sndlib_Linux = -lasound
41 sndlib_mingw = -ldsound
46 $(bin): $(obj) imago mikmod
47 $(CC) -o $@ $(obj) $(LDFLAGS)
55 $(CC) -o $@ $(CFLAGS) -c $<
57 src/data.o: src/data.asm $(bindata)
61 @$(CPP) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
64 libs: imago anim mikmod
76 $(MAKE) -C libs/mikmod
80 $(MAKE) -C libs/imago clean
81 $(MAKE) -C libs/anim clean
82 $(MAKE) -C libs/mikmod clean
99 $(MAKE) CC=i686-w64-mingw32-gcc sys=mingw