-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile.Linux
68 lines (56 loc) · 1.54 KB
/
Makefile.Linux
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
68
CFLAGS = -O2
CFLAGS += -pie
CFLAGS += -static-libgcc -static-libstdc++ -ftls-model=global-dynamic
CFLAGS += -I/usr/include/SDL2
CFLAGS += -I/usr/local/include/SDL2
CFLAGS += -I/opt/X11/include
CFLAGS += -I./sdk/public
CFLAGS += -D_THREAD_SAFE
CFLAGS += -DLINUX
CC = gcc $(CFLAGS)
CPPFLAGS = -std=c++17
CPPFLAGS += -fno-rtti
CPPFLAGS += -fexceptions
CPPFLAGS += $(CFLAGS)
CPPFLAGS += -DZ80_DISABLE_DEBUG
CPPFLAGS += -DZ80_DISABLE_BREAKPOINT
CPPFLAGS += -DZ80_DISABLE_NESTCHECK
CPPFLAGS += -DZ80_CALLBACK_WITHOUT_CHECK
CPPFLAGS += -DZ80_CALLBACK_PER_INSTRUCTION
CPPFLAGS += -DZ80_UNSUPPORT_16BIT_PORT
CPPFLAGS += -DZ80_NO_FUNCTIONAL
CPPFLAGS += -DZ80_NO_EXCEPTION
CPP = g++ $(CPPFLAGS)
HEADER_FILES = ./vgszero/src/core/*.hpp
HEADER_FILES += ./vgszero/src/core/*.h
HEADER_FILES += ./src/*.h
OBJECTS = sdlmain.o
OBJECTS += vgstone.o
OBJECTS += vgs0math.o
OBJECTS += gamepkg.o
OBJECTS += err_joypad.o
all: game steam_appid.txt libsteam_api.so
-@rm -rf release
mkdir release
cp -p game release
cp -p libsteam_api.so release
cp -p LICENSE*.txt release
cp -p README.txt release
./game
clean:
rm -f $(OBJECTS)
rm -f game
libsteam_api.so: ./sdk/redistributable_bin/linux64/libsteam_api.so
cp -p $< .
game: $(OBJECTS) libsteam_api.so
$(CPP) -o game $(OBJECTS) -Wl,-rpath,. -lSDL2 -L. -lsteam_api
sdlmain.o: ./src/sdlmain.cpp $(HEADER_FILES) ./Makefile.Linux
$(CPP) -c $<
vgstone.o: ./vgszero/src/core/vgstone.c
$(CC) -c $<
vgs0math.o: ./vgszero/src/core/vgs0math.c
$(CC) -c $<
gamepkg.o: ./src/gamepkg.c
$(CC) -c $<
err_joypad.o: ./src/err_joypad.c
$(CC) -c $<