first attempt at fixing the VBE 1.2 fallback code
[retrobench] / Makefile
1 src = $(wildcard src/*.c)
2 ssrc = $(wildcard src/*.s) sinlut.s
3 src_x11 = $(wildcard src/x11/*.c)
4 src_fbdev = $(wildcard src/fbdev/*.c)
5 obj_x11 = $(src_x11:.c=.o) $(src:.c=.o) $(ssrc:.s=.o)
6 obj_fbdev = $(src_fbdev:.c=.o) $(src:.c=.o) $(ssrc:.s=.o)
7 dep = $(src:.c=.d) $(src_x11:.c=.d) $(src_fbdev:.c=.d)
8 bin_x11 = rbench_x11
9 bin_fbdev = rbench_fbdev
10
11 warn = -pedantic -Wall -Wno-deprecated-declarations
12 dbg = -g
13 opt = -O3 -ffast-math
14 inc = -Isrc
15
16 CFLAGS = -m32 -pedantic $(warn) $(dbg) $(opt) $(inc) -fno-strict-aliasing -MMD
17 ASFLAGS = --32
18 LDFLAGS_x11 = -L/usr/X11R6/lib -lX11 -lXext
19 LDFLAGS_fbdev =
20
21 .PHONY: all
22 all: $(bin_x11) $(bin_fbdev)
23
24 $(bin_x11): $(obj_x11)
25         $(CC) -o $@ -m32 $(obj_x11) $(LDFLAGS_x11)
26
27 $(bin_fbdev): $(obj_fbdev)
28         $(CC) -o $@ -m32 $(obj_fbdev) $(LDFLAGS_fbdev)
29
30 sinlut.s: tools/lutgen
31         tools/lutgen >$@
32
33 -include $(dep)
34
35 .PHONY: clean
36 clean:
37         $(RM) $(obj_x11) $(obj_fbdev) $(bin_x11) $(bin_fbdev)
38
39 .PHONY: cleandep
40 cleandep:
41         $(RM) $(dep)
42
43 tools/lutgen: tools/lutgen.c
44         $(CC) -o $@ $< -lm