Makefile.common 9.4 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
42
43
44
45
46
47
48
# 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 \
	$(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 \
)

49
50
# zlib
SOURCES_C += \
RobLoach's avatar
RobLoach committed
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
	$(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
67
68
FLAGS += -DWANT_ZLIB

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

# SDL_tty
Steel01's avatar
Steel01 committed
86
FLAGS += -I$(CORE_DIR)/vendor/SDL_tty/include
RobLoach's avatar
RobLoach committed
87
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
88
89
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_tty.c \
	$(CORE_DIR)/vendor/SDL_tty/src/SDL_fnt.c \
RobLoach's avatar
RobLoach committed
90
91
92
)

# SDL_gfx
Steel01's avatar
Steel01 committed
93
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26
RobLoach's avatar
RobLoach committed
94
SOURCES_C += $(wildcard \
Steel01's avatar
Steel01 committed
95
	$(CORE_DIR)/vendor/sdl-libretro/tests/SDL_gfx-2.0.26/*.c \
RobLoach's avatar
RobLoach committed
96
97
)

RobLoach's avatar
RobLoach committed
98
# FreeType2
RobLoach's avatar
RobLoach committed
99
# See https://github.com/emscripten-ports/FreeType/blob/master/builds/amiga/makefile
RobLoach's avatar
RobLoach committed
100
FLAGS += -I$(CORE_DIR)/vendor/libretro-deps/freetype/include
RobLoach's avatar
RobLoach committed
101
102
103
104
105
106
107
108
109
110
111
112
113
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
114
115
116
117
118
119
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
	$(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
156

RobLoach's avatar
RobLoach committed
157
# SDL_ttf
Steel01's avatar
Steel01 committed
158
159
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
160
161

# SDL_stbimage
Steel01's avatar
Steel01 committed
162
FLAGS += -I$(CORE_DIR)/vendor/Snippets
RobLoach's avatar
RobLoach committed
163
164

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

RobLoach's avatar
RobLoach committed
167
168
169
# MD5
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/include
SOURCES_C += $(CORE_DIR)/vendor/libretro-common/utils/md5.c
170

RobLoach's avatar
RobLoach committed
171
172
173
# TinySHA1
FLAGS += -I$(CORE_DIR)/vendor/TinySHA1

RobLoach's avatar
RobLoach committed
174
175
176
# cppcodec
FLAGS += -I$(CORE_DIR)/vendor/cppcodec

RobLoach's avatar
RobLoach committed
177
178
# ChaiScript
ifeq ($(HAVE_CHAISCRIPT),)
Steel01's avatar
Steel01 committed
179
180
	FLAGS += -I$(CORE_DIR)/vendor/chaiscript/include
	FLAGS += -I$(CORE_DIR)/vendor/ChaiScript_Extras/include
RobLoach's avatar
RobLoach committed
181
182
183
184
	FLAGS += -D__HAVE_CHAISCRIPT__
	FLAGS += -DCHAISCRIPT_NO_THREADS -DCHAISCRIPT_NO_THREADS_WARNING -DCHAISCRIPT_NO_DYNLOAD
endif

RobLoach's avatar
RobLoach committed
185
186
# SDL
ifeq ($(platform), win)
RobLoach's avatar
RobLoach committed
187
	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
188
else
Steel01's avatar
Steel01 committed
189
	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
190
endif
RobLoach's avatar
RobLoach committed
191
FLAGS += -DSDL_THREADS_DISABLED -DSDL_CDROM_DISABLED
Steel01's avatar
Steel01 committed
192
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/include
RobLoach's avatar
RobLoach committed
193

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

RobLoach's avatar
RobLoach committed
196
LDFLAGS +=  $(fpic) $(SHARED) $(EXTRA_LDF)
RobLoach's avatar
RobLoach committed
197
198

WARNINGS :=