Makefile.common 9.71 KB
Newer Older
RobLoach's avatar
RobLoach committed
1
# ChaiLove
Steel01's avatar
Steel01 committed
2
3
4
5
6
7
8
9
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
10
11
)

RobLoach's avatar
RobLoach committed
12
# semver
RobLoach's avatar
RobLoach committed
13
FLAGS += -I$(CORE_DIR)/vendor/semver
Steel01's avatar
Steel01 committed
14
SOURCES_C := $(CORE_DIR)/vendor/semver/semver.c
RobLoach's avatar
RobLoach committed
15

RobLoach's avatar
RobLoach committed
16
# random
Steel01's avatar
Steel01 committed
17
FLAGS += -I$(CORE_DIR)/vendor/random/include
RobLoach's avatar
RobLoach committed
18

RobLoach's avatar
RobLoach committed
19
# filesystem
Steel01's avatar
Steel01 committed
20
FLAGS += -I$(CORE_DIR)/vendor/filesystem
RobLoach's avatar
RobLoach committed
21
22

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

25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# 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
42
43
44
	$(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 \
45
46
47
48
49
	$(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 \
)

RobLoach's avatar
RobLoach committed
50
# stb_vorbis
RobLoach's avatar
RobLoach committed
51
#SOURCES_C += $(CORE_DIR)/vendor/stb/stb_vorbis.c
RobLoach's avatar
RobLoach committed
52
FLAGS += -DHAVE_STB_VORBIS
RobLoach's avatar
Update    
RobLoach committed
53
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps
RobLoach's avatar
RobLoach committed
54

55
56
# zlib
SOURCES_C += \
RobLoach's avatar
RobLoach committed
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
	$(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
73
74
FLAGS += -DWANT_ZLIB

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

# SDL_tty
Steel01's avatar
Steel01 committed
92
FLAGS += -I$(CORE_DIR)/vendor/SDL_tty/include
RobLoach's avatar
RobLoach committed
93
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
94
95
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_tty.c \
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_fnt.c \
RobLoach's avatar
RobLoach committed
96
97
98
)

# SDL_gfx
Steel01's avatar
Steel01 committed
99
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26
RobLoach's avatar
RobLoach committed
100
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
101
	$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26/*.c \
RobLoach's avatar
RobLoach committed
102
103
)

RobLoach's avatar
RobLoach committed
104
# FreeType2
RobLoach's avatar
RobLoach committed
105
# See https://github.com/emscripten-ports/FreeType/blob/master/builds/amiga/makefile
RobLoach's avatar
RobLoach committed
106
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps/freetype/include
RobLoach's avatar
RobLoach committed
107
108
109
110
111
112
113
114
115
116
117
118
119
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
120
121
122
123
124
125
126
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
	$(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
162

RobLoach's avatar
RobLoach committed
163
# SDL_ttf
Steel01's avatar
Steel01 committed
164
165
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
166
167

# SDL_stbimage
Steel01's avatar
Steel01 committed
168
FLAGS += -I$(CORE_DIR)/vendor/Snippets
RobLoach's avatar
RobLoach committed
169
170

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

RobLoach's avatar
RobLoach committed
173
174
175
# MD5
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/include
SOURCES_C += $(CORE_DIR)/vendor/libretro-common/utils/md5.c
176

RobLoach's avatar
RobLoach committed
177
178
179
# TinySHA1
FLAGS += -I$(CORE_DIR)/vendor/TinySHA1

RobLoach's avatar
RobLoach committed
180
181
182
# cppcodec
FLAGS += -I$(CORE_DIR)/vendor/cppcodec

RobLoach's avatar
RobLoach committed
183
184
# ChaiScript
ifeq ($(HAVE_CHAISCRIPT),)
Steel01's avatar
Steel01 committed
185
186
	FLAGS += -I$(CORE_DIR)/vendor/chaiscript/include
	FLAGS += -I$(CORE_DIR)/vendor/ChaiScript_Extras/include
RobLoach's avatar
RobLoach committed
187
188
189
190
	FLAGS += -D__HAVE_CHAISCRIPT__
	FLAGS += -DCHAISCRIPT_NO_THREADS -DCHAISCRIPT_NO_THREADS_WARNING -DCHAISCRIPT_NO_DYNLOAD
endif

RobLoach's avatar
RobLoach committed
191
192
# SDL
ifeq ($(platform), win)
RobLoach's avatar
RobLoach committed
193
	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
194
else
Steel01's avatar
Steel01 committed
195
	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
196
endif
RobLoach's avatar
RobLoach committed
197
FLAGS += -DSDL_THREADS_DISABLED -DSDL_CDROM_DISABLED
Steel01's avatar
Steel01 committed
198
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/include
RobLoach's avatar
RobLoach committed
199

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

RobLoach's avatar
RobLoach committed
202
LDFLAGS +=  $(fpic) $(SHARED) $(EXTRA_LDF)
RobLoach's avatar
RobLoach committed
203
204

WARNINGS :=
205
206
207
208
209

# Windows: Fix retro_common_api.h
ifeq ($(system_platform), win)
	FLAGS += -DPRId64=I64d -DPRIu64=I64u -DPRIuPTR=Iu
endif