aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: c83ded3c695afa19fcd1eae0b2a78a04d6f6e170 (plain)
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
# common
CC 	:= gcc
CFLAGS	:= -Wpedantic -s -O2 -Wall -I.
LDFLAGS	:= 

# only for the vm
SDL2_CONFIG 	:= sdl2-config
LIBS		:= `$(SDL2_CONFIG) --libs` -lSDL2_mixer

all: tr8as tr8vm

tr8vm: tr8vm.c vm.o vm.h
	$(CC) -std=c99 $(CFLAGS) `$(SDL2_CONFIG) --cflags` $< vm.o `$(SDL2_CONFIG) --libs` $(LIBS) -o $@

tr8as: tr8as.c stb_image.o
	$(CC) -std=c99 $(CFLAGS) -DDO_MAIN $< stb_image.o -o $@ -lm

vm.o: vm.c vm.h
	$(CC) -c -std=c89 $(CFLAGS) $< -o $@

stb_image.o: stb_image.c stb_image.h
	$(CC) -c -std=c99 $(CFLAGS) $< -o $@

example: example.tr8 tr8vm
	./tr8vm example.tr8

example.tr8: example.asm tr8as
	./tr8as example.asm example.tr8

clean:
	rm -f tr8as tr8vm example.tr8 *.o

.PHONY: clean all example