Makefile.common 9.81 KB
Newer Older
RobLoach's avatar
RobLoach committed
1
2
3
4
5
# Appveyor Config
ifeq ($(appveyor),1)
	FLAGS += -DPRId64=I64d -DPRIu64=I64u -DPRIuPTR=Iu
endif

RobLoach's avatar
RobLoach committed
6
# ChaiLove
Steel01's avatar
Steel01 committed
7
8
9
10
11
12
13
14
SOURCES_CXX := $(wildcard \
	$(CORE_DIR)/src/*.cpp \
	$(CORE_DIR)/src/love/*.cpp \
	$(CORE_DIR)/src/love/Types/Audio/*.cpp \
	$(CORE_DIR)/src/love/Types/FileSystem/*.cpp \
	$(CORE_DIR)/src/love/Types/Graphics/*.cpp \
	$(CORE_DIR)/src/love/Types/Input/*.cpp \
	$(CORE_DIR)/src/love/Types/Config/*.cpp \
RobLoach's avatar
RobLoach committed
15
16
)

RobLoach's avatar
RobLoach committed
17
# semver
RobLoach's avatar
RobLoach committed
18
FLAGS += -I$(CORE_DIR)/vendor/semver
Steel01's avatar
Steel01 committed
19
SOURCES_C := $(CORE_DIR)/vendor/semver/semver.c
RobLoach's avatar
RobLoach committed
20

RobLoach's avatar
RobLoach committed
21
# random
Steel01's avatar
Steel01 committed
22
FLAGS += -I$(CORE_DIR)/vendor/random/include
RobLoach's avatar
RobLoach committed
23

RobLoach's avatar
RobLoach committed
24
# filesystem
Steel01's avatar
Steel01 committed
25
FLAGS += -I$(CORE_DIR)/vendor/filesystem
RobLoach's avatar
RobLoach committed
26
27

# libretro-common
Steel01's avatar
Steel01 committed
28
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/include
RobLoach's avatar
RobLoach committed
29

30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# libretro-common audio
SOURCES_C += $(wildcard \
	$(CORE_DIR)/vendor/libretro-common/audio/audio_mix.c \
	$(CORE_DIR)/vendor/libretro-common/audio/audio_mixer.c \
	$(CORE_DIR)/vendor/libretro-common/formats/wav/rwav.c \
	$(CORE_DIR)/vendor/libretro-common/memmap/memalign.c \
	$(CORE_DIR)/vendor/libretro-common/audio/conversion/*.c \
	$(CORE_DIR)/vendor/libretro-common/streams/file_stream.c \
	$(CORE_DIR)/vendor/libretro-common/audio/resampler/audio_resampler.c \
	$(CORE_DIR)/vendor/libretro-common/audio/resampler/drivers/sinc_resampler.c \
	$(CORE_DIR)/vendor/libretro-common/audio/resampler/drivers/null_resampler.c \
	$(CORE_DIR)/vendor/libretro-common/audio/resampler/drivers/nearest_resampler.c \
	$(CORE_DIR)/vendor/libretro-common/vfs/*.c \
	$(CORE_DIR)/vendor/libretro-common/features/features_cpu.c \
	$(CORE_DIR)/vendor/libretro-common/file/config_file_userdata.c \
	$(CORE_DIR)/vendor/libretro-common/file/file_path.c \
	$(CORE_DIR)/vendor/libretro-common/compat/compat_strl.c \
RobLoach's avatar
RobLoach committed
47
48
49
	$(CORE_DIR)/vendor/libretro-common/compat/fopen_utf8.c \
	$(CORE_DIR)/vendor/libretro-common/compat/compat_posix_string.c \
	$(CORE_DIR)/vendor/libretro-common/encodings/encoding_utf.c \
50
51
52
53
54
55
56
	$(CORE_DIR)/vendor/libretro-common/file/config_file_userdata.c \
	$(CORE_DIR)/vendor/libretro-common/file/config_file.c \
	$(CORE_DIR)/vendor/libretro-common/lists/string_list.c \
	$(CORE_DIR)/vendor/libretro-common/compat/compat_strcasestr.c \
	$(CORE_DIR)/vendor/libretro-common/lists/string_list.c \
)

RobLoach's avatar
RobLoach committed
57
# stb_vorbis
RobLoach's avatar
RobLoach committed
58
#SOURCES_C += $(CORE_DIR)/vendor/stb/stb_vorbis.c
RobLoach's avatar
RobLoach committed
59
FLAGS += -DHAVE_STB_VORBIS
RobLoach's avatar
Update    
RobLoach committed
60
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps
RobLoach's avatar
RobLoach committed
61

62
63
# zlib
SOURCES_C += \
RobLoach's avatar
RobLoach committed
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
	$(CORE_DIR)/vendor/libretro-deps/libz/zutil.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/adler32.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/crc32.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/compress.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/deflate.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/gzclose.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/gzlib.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/gzread.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/gzwrite.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/infback.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/inffast.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/inftrees.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/inflate.c \
	$(CORE_DIR)/vendor/libretro-deps/libz/trees.c
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps/libz
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/compat
80
81
FLAGS += -DWANT_ZLIB

RobLoach's avatar
RobLoach committed
82
# PhysFS
RobLoach's avatar
RobLoach committed
83
84
FLAGS += -I$(CORE_DIR)/vendor/didstopia-physfs/src
FLAGS += -I$(CORE_DIR)/vendor/didstopia-physfs/extras
RobLoach's avatar
RobLoach committed
85
FLAGS += -DPHYSFS_NO_CDROM_SUPPORT=1
RobLoach's avatar
RobLoach committed
86
SOURCES_C += $(wildcard \
RobLoach's avatar
RobLoach committed
87
88
	$(CORE_DIR)/vendor/didstopia-physfs/extras/physfsrwops.c \
	$(CORE_DIR)/vendor/didstopia-physfs/src/*.c \
RobLoach's avatar
RobLoach committed
89
)
RobLoach's avatar
RobLoach committed
90
ifeq ($(platform), osx)
RobLoach's avatar
RobLoach committed
91
#	LDFLAGS += -mmacosx-version-min=10.2
RobLoach's avatar
RobLoach committed
92
	LDFLAGS += -framework IOKit -framework Foundation
RobLoach's avatar
RobLoach committed
93
#	FLAGS += -DMAC_OS_X_VERSION_MIN_REQUIRED=1020
RobLoach's avatar
RobLoach committed
94
	FLAGS += -D__MACH__ -D__APPLE__ -DPHYSFS_PLATFORM_APPLE
RobLoach's avatar
RobLoach committed
95
	SOURCES_M += $(CORE_DIR)/vendor/didstopia-physfs/src/physfs_platform_apple.m
RobLoach's avatar
RobLoach committed
96
endif
RobLoach's avatar
RobLoach committed
97
98

# SDL_tty
Steel01's avatar
Steel01 committed
99
FLAGS += -I$(CORE_DIR)/vendor/SDL_tty/include
RobLoach's avatar
RobLoach committed
100
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
101
102
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_tty.c \
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_fnt.c \
RobLoach's avatar
RobLoach committed
103
104
105
)

# SDL_gfx
Steel01's avatar
Steel01 committed
106
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26
RobLoach's avatar
RobLoach committed
107
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
108
	$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26/*.c \
RobLoach's avatar
RobLoach committed
109
110
)

RobLoach's avatar
RobLoach committed
111
# FreeType2
RobLoach's avatar
RobLoach committed
112
# See https://github.com/emscripten-ports/FreeType/blob/master/builds/amiga/makefile
RobLoach's avatar
RobLoach committed
113
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps/freetype/include
RobLoach's avatar
RobLoach committed
114
115
116
117
118
119
120
121
122
123
124
125
126
FLAGS += -DFT2_BUILD_LIBRARY \
	-DFT_USE_AUTOFIT \
	-DFT_USE_RASTER \
	-DFT_USE_SMOOTH \
	-DFT_USE_TT \
	-DFT_USE_T1 \
	-DFT_USE_T42 \
	-DFT_USE_T1CID \
	-DFT_USE_CFF \
	-DFT_USE_OTV \
	-DFT_USE_GXV

SOURCES_C += \
RobLoach's avatar
RobLoach committed
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftbase.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftinit.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftsystem.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftdebug.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftbbox.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftbdf.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftstroke.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftbitmap.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftcid.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftfntfmt.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftfstype.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftgasp.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftglyph.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftgxval.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftlcdfil.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftmm.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftotval.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftpatent.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftpfr.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftsynth.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/fttype1.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/base/ftwinfnt.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/autofit/autofit.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/pshinter/pshinter.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/psaux/psaux.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/psnames/psnames.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/raster/raster.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/smooth/smooth.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/cache/ftcache.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/bdf/bdf.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/cff/cff.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/pcf/pcf.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/winfonts/winfnt.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/sfnt/sfnt.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/pfr/pfr.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/truetype/truetype.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/type1/type1.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/type42/type42.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/cid/type1cid.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/gzip/ftgzip.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/bzip2/ftbzip2.c \
	$(CORE_DIR)/vendor/libretro-deps/freetype/src/lzw/ftlzw.c
RobLoach's avatar
RobLoach committed
169

RobLoach's avatar
RobLoach committed
170
# SDL_ttf
Steel01's avatar
Steel01 committed
171
172
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_ttf-2.0.11/VisualC/external/include
SOURCES_C += $(CORE_DIR)/vendor/sdl-libretro/tests/SDL_ttf-2.0.11/SDL_ttf.c
RobLoach's avatar
RobLoach committed
173
174

# SDL_stbimage
Steel01's avatar
Steel01 committed
175
FLAGS += -I$(CORE_DIR)/vendor/Snippets
RobLoach's avatar
RobLoach committed
176
177

# STB
Steel01's avatar
Steel01 committed
178
FLAGS += -I$(CORE_DIR)/vendor/stb
RobLoach's avatar
RobLoach committed
179

RobLoach's avatar
RobLoach committed
180
181
182
# MD5
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/include
SOURCES_C += $(CORE_DIR)/vendor/libretro-common/utils/md5.c
183

RobLoach's avatar
RobLoach committed
184
185
186
# TinySHA1
FLAGS += -I$(CORE_DIR)/vendor/TinySHA1

RobLoach's avatar
RobLoach committed
187
188
189
# cppcodec
FLAGS += -I$(CORE_DIR)/vendor/cppcodec

RobLoach's avatar
RobLoach committed
190
191
# ChaiScript
ifeq ($(HAVE_CHAISCRIPT),)
Steel01's avatar
Steel01 committed
192
193
	FLAGS += -I$(CORE_DIR)/vendor/chaiscript/include
	FLAGS += -I$(CORE_DIR)/vendor/ChaiScript_Extras/include
RobLoach's avatar
RobLoach committed
194
195
196
197
	FLAGS += -D__HAVE_CHAISCRIPT__
	FLAGS += -DCHAISCRIPT_NO_THREADS -DCHAISCRIPT_NO_THREADS_WARNING -DCHAISCRIPT_NO_DYNLOAD
endif

RobLoach's avatar
RobLoach committed
198
199
# SDL
ifeq ($(platform), win)
RobLoach's avatar
RobLoach committed
200
	SOURCES_C += $(wildcard ./vendor/sdl-libretro/src/*.c  ./vendor/sdl-libretro/src/audio/*.c  ./vendor/sdl-libretro/src/cdrom/dummy/*.c  ./vendor/sdl-libretro/src/cdrom/*.c  ./vendor/sdl-libretro/src/cpuinfo/*.c  ./vendor/sdl-libretro/src/events/*.c  ./vendor/sdl-libretro/src/file/*.c  ./vendor/sdl-libretro/src/stdlib/*.c  ./vendor/sdl-libretro/src/thread/*.c  ./vendor/sdl-libretro/src/timer/*.c  ./vendor/sdl-libretro/src/video/*.c  ./vendor/sdl-libretro/src/joystick/*.c  ./vendor/sdl-libretro/src/video/libretro/*.c  ./vendor/sdl-libretro/src/joystick/libretro/*.c  ./vendor/sdl-libretro/src/timer/libretro/*.c  ./vendor/sdl-libretro/src/audio/libretro/*.c  ./vendor/sdl-libretro/src/thread/win32/SDL_sysmutex.c ./vendor/sdl-libretro/src/thread/win32/SDL_syssem.c ./vendor/sdl-libretro/src/thread/win32/SDL_systhread.c ./vendor/sdl-libretro/src/thread/generic/SDL_syscond.c ./vendor/sdl-libretro/src/loadso/dummy/*.c)
RobLoach's avatar
RobLoach committed
201
else
Steel01's avatar
Steel01 committed
202
	SOURCES_C += $(wildcard $(CORE_DIR)/vendor/sdl-libretro/src/*.c $(CORE_DIR)/vendor/sdl-libretro/src/audio/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/cdrom/dummy/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/cdrom/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/cpuinfo/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/events/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/file/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/stdlib/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/thread/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/timer/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/video/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/joystick/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/video/libretro/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/thread/generic/*.c $(CORE_DIR)/vendor/sdl-libretro/src/joystick/libretro/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/timer/libretro/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/audio/libretro/*.c  $(CORE_DIR)/vendor/sdl-libretro/src/loadso/dummy/*.c)
RobLoach's avatar
RobLoach committed
203
endif
RobLoach's avatar
RobLoach committed
204
FLAGS += -DSDL_THREADS_DISABLED -DSDL_CDROM_DISABLED
Steel01's avatar
Steel01 committed
205
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/include
RobLoach's avatar
RobLoach committed
206

RobLoach's avatar
RobLoach committed
207
OBJECTS += $(SOURCES_CXX:.cpp=.o) $(SOURCES_C:.c=.o) $(SOURCES_M:.m=.o)
RobLoach's avatar
RobLoach committed
208

RobLoach's avatar
RobLoach committed
209
LDFLAGS +=  $(fpic) $(SHARED) $(EXTRA_LDF)
RobLoach's avatar
RobLoach committed
210
211

WARNINGS :=