forked from gameblabla/sdlquake
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.bittboy
124 lines (111 loc) · 3.03 KB
/
Makefile.bittboy
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# Software Name
PROGRAM = sdlquake.dge
# Compiler
CHAINPREFIX=/opt/miyoo
CROSS_COMPILE=$(CHAINPREFIX)/usr/bin/arm-linux-
CC = $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
STRIP = $(CROSS_COMPILE)strip
SYSROOT := $(CHAINPREFIX)/usr/arm-miyoo-linux-musleabi/sysroot
SDL_CFLAGS := $(shell $(SYSROOT)/usr/bin/sdl-config --cflags)
SDL_LIBS := $(shell $(SYSROOT)/usr/bin/sdl-config --libs)
TYR_RELEASE := v0.62-pre
TYR_GIT := $(shell git describe --dirty 2> /dev/null)
TYR_VERSION := $(if $(TYR_GIT),$(TYR_GIT),$(TYR_RELEASE))
TYR_VERSION_NUM ?= $(patsubst v%,%,$(TYR_VERSION))
# Linker
LDFLAGS = -nodefaultlibs -lc -lgcc -lm -lSDL -lasound -flto -no-pie -s -Wl,--as-needed -Wl,--gc-sections -L$(SYSROOT)/usr/lib/ts -lts
CFLAGS = -Os -fdata-sections -ffunction-sections -fno-PIC -flto -fsingle-precision-constant -fno-common -DDINGUX
CFLAGS += -DNQ_HACK -DNDEBUG -DELF -DTYR_VERSION=$(TYR_VERSION_NUM) -DQBASEDIR="."
# Include
INCLUDES :=
NET_FOLDER =
CFLAGS += -Isource
CFILES = source/host.c \
source/menu.c \
source/screen.c \
source/net_loop.c \
source/net_main.c \
source/net_common.c \
source/net_none.c \
source/net_dgrm.c
CFILES += source/sv_main.c \
source/pr_exec.c \
source/sdl_common.c \
source/vid_mode.c \
source/rb_tree.c \
source/cd_common.c \
source/alias_model.c \
source/r_model.c \
source/pr_cmds.c \
source/pr_edict.c \
source/cd_null.c \
source/vid_sdl_rs97.c \
source/shell.c \
source/r_sprite.c \
source/sprite_model.c \
source/snd_sdl.c \
source/sys_unix.c \
source/chase.c \
source/cl_demo.c \
source/cl_input.c \
source/cl_main.c \
source/cl_parse.c \
source/cl_tent.c \
source/cmd.c \
source/common.c \
source/console.c \
source/crc.c \
source/cvar.c \
source/d_edge.c \
source/d_fill.c \
source/d_init.c \
source/d_modech.c \
source/d_part.c \
source/d_polyse.c \
source/d_scan.c \
source/d_sky.c \
source/d_sprite.c \
source/d_surf.c \
source/d_vars.c \
source/draw.c \
source/host_cmd.c \
source/keys.c \
source/mathlib.c \
source/model.c \
source/nonintel.c \
source/r_aclip.c \
source/r_alias.c \
source/r_bsp.c \
source/r_draw.c \
source/r_edge.c \
source/r_efrag.c \
source/r_light.c \
source/r_main.c \
source/r_misc.c \
source/r_part.c \
source/r_sky.c \
source/r_surf.c \
source/r_vars.c \
source/sbar.c \
source/snd_dma.c \
source/snd_mix.c \
source/sv_move.c \
source/sv_phys.c \
source/sv_user.c \
source/snd_mem.c \
source/view.c \
source/wad.c \
source/world.c \
source/zone.c
#
#========================================(Compile)
#
OFILES = $(SFILES:.S=.o) $(CFILES:.c=.o)
$(PROGRAM): $(OFILES)
$(CC) $(CFLAGS) $(OFILES) -o $@ $(LDFLAGS)
all: $(PROGRAM)
%.o: %.c
$(CC) $(ALL_INCLUDES) $(CFLAGS) -c $< -o $@
clean:
-rm -f $(OFILES) $(MAPFILE) $(PROGRAM)