Repository navigation
Expand file tree
/
Copy pathMakefile.em
More file actions
67 lines (53 loc) · 1.82 KB
/
Copy pathMakefile.em
File metadata and controls
67 lines (53 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
src = $(wildcard src/*.c) $(wildcard src/3dgfx/*.c) $(wildcard src/rt/*.c) \
$(wildcard src/scr/*.c) $(wildcard src/sdl/*.c)
obj = $(src:.c=.emo)
bin = demo.html
inc = -Isrc -Isrc/3dgfx -Isrc/rt -Isrc/scr -Isrc/utils -Isrc/sdl -Ilibs \
-Ilibs/imago/src -Ilibs/anim/src -Ilibs/mikmod/include -Ilibs/goat3d/include
def = -DMIKMOD_STATIC -DNO_ASM
warn = -pedantic -Wall -Wno-unused-variable -Wno-unused-function -Wno-address
opt = -O3 -ffast-math
dbg = -g3
CC = emcc
CFLAGS = $(warn) $(opt) $(def) -fno-pie -fno-strict-aliasing $(dbg) $(inc) -sUSE_SDL
LDFLAGS = libs/imago/imago.ema libs/anim/anim.ema libs/goat3d/goat3d.ema \
libs/mikmod/mikmod.ema -lSDL --preload-file data --preload-file demo.seq \
--exclude-file data/.svn \
-sINITIAL_MEMORY=67108864 -sUSE_SDL --shell-file demopage_shell.html
# -gsource-maps --profile-funcs -sSAFE_HEAP=1
$(bin): $(obj) imago anim goat3d mikmod demopage_shell.html
$(CC) -o $@ $(obj) $(LDFLAGS)
demopage_shell.html: tools/demotmpl.htm
tools/fixhtml >$@
%.emo: %.c
$(CC) $(CFLAGS) -o $@ -c $<
.PHONY: libs
libs: imago anim mikmod goat3d
.PHONY: imago
imago:
$(MAKE) -C libs/imago -f Makefile.em
.PHONY: anim
anim:
$(MAKE) -C libs/anim -f Makefile.em
.PHONY: mikmod
mikmod:
$(MAKE) -C libs/mikmod -f Makefile.em
.PHONY: goat3d
goat3d:
$(MAKE) -C libs/goat3d -f Makefile.em
.PHONY: cleanlibs
cleanlibs:
$(MAKE) -C libs/imago clean -f Makefile.em
$(MAKE) -C libs/anim clean -f Makefile.em
$(MAKE) -C libs/mikmod clean -f Makefile.em
$(MAKE) -C libs/goat3d clean -f Makefile.em
.PHONY: clean
clean:
rm -f $(obj) $(bin) demo.data demo.js demo.wasm
.PHONY: cleandep
cleandep:
rm -f $(dep)
.PHONY: install
install: $(bin)
rsync -vz -e ssh $(bin) goat.mutantstargoat.com:public_html/dosdemo/index.html
rsync -vz -e ssh demo.data demo.js demo.wasm goat.mutantstargoat.com:public_html/dosdemo