bcebb62953fb71962c8906488bb90f1262e8dcb0
[eradicate] / Makefile
1 !ifdef __UNIX__
2 dosobj = src/dos/main.obj src/dos/gfx.obj src/dos/timer.obj src/dos/watdpmi.obj &
3                  src/dos/vbe.obj src/dos/vga.obj src/dos/keyb.obj src/dos/mouse.obj &
4                  src/dos/logger.obj
5 scrobj = src/introscr.obj src/menuscr.obj
6 gameobj = src/game.obj src/util.obj src/gfxutil.obj src/dynarr.obj src/rbtree.obj
7 gfxobj = src/3dgfx/3dgfx.obj src/3dgfx/mesh.obj src/3dgfx/meshload.obj &
8                 src/3dgfx/polyfill.obj src/3dgfx/polyclip.obj
9 incpath = -Isrc -Isrc/dos -Ilibs/imago/src
10 libpath = libpath libs/imago
11 !else
12 dosobj = src\dos\main.obj src\dos\gfx.obj src\dos\timer.obj src\dos\watdpmi.obj &
13                  src\dos\vbe.obj src\dos\vga.obj src\dos\keyb.obj src\dos\mouse.obj &
14                  src\dos\logger.obj
15 scrobj = src\introscr.obj src\menuscr.obj
16 gameobj = src\game.obj src\util.obj src\gfxutil.obj src\dynarr.obj src\rbtree.obj
17 gfxobj = src\3dgfx\3dgfx.obj src\3dgfx\mesh.obj src\3dgfx\meshload.obj &
18                 src\3dgfx\polyfill.obj src\3dgfx\polyclip.obj
19 incpath = -Isrc -Isrc\dos -Ilibs\imago\src
20 libpath = libpath libs\imago
21 !endif
22
23 obj = $(dosobj) $(gameobj) $(gfxobj) $(scrobj)
24 bin = game.exe
25
26 def = -dM_PI=3.141592653589793
27 libs = imago.lib
28
29 CC = wcc386
30 LD = wlink
31 CFLAGS = -d3 -5 -fp5 -otebmileran $(def) -s -zq -bt=dos $(incpath)
32 LDFLAGS = option map $(libpath) library { $(libs) }
33
34 $(bin): $(obj)
35         %write objects.lnk $(obj)
36         %write ldflags.lnk $(LDFLAGS)
37         $(LD) debug all name $@ system dos4g file { @objects } @ldflags
38
39 .c: src;src/dos;src/3dgfx
40 .asm: src;src/dos;src/3dgfx
41
42 .c.obj: .autodepend
43         $(CC) -fo=$@ $(CFLAGS) $[*
44
45 .asm.obj:
46         nasm -f obj -o $@ $[*.asm
47
48 !ifdef __UNIX__
49 clean: .symbolic
50         rm -f $(obj)
51         rm -f $(bin)
52 !else
53 clean: .symbolic
54         del src\*.obj
55         del src\dos\*.obj
56         del *.lnk
57         del $(bin)
58 !endif