Makefile.common 3.85 KB
Newer Older
RobLoach's avatar
RobLoach committed
1
# ChaiLove
RobLoach's avatar
RobLoach committed
2
3
SOURCES_CXX += $(wildcard \
	src/*.cpp \
RobLoach's avatar
RobLoach committed
4
5
6
7
8
9
	src/Modules/*.cpp \
	src/Types/*.cpp \
	src/Types/Audio/*.cpp \
	src/Types/Graphics/*.cpp \
	src/Types/Input/*.cpp \
	src/Types/System/*.cpp \
RobLoach's avatar
RobLoach committed
10
11
12
	test/*.cpp \
)

RobLoach's avatar
RobLoach committed
13
14
15
16
17
18
# filesystem
FLAGS += -Ivendor/filesystem

# libretro-common
FLAGS += -Ivendor/libretro-common/include

19
20
21
22
23
24
25
26
27
28
29
30
31
32
# zlib
SOURCES_C += \
	vendor/zlib/crc32.c \
	vendor/zlib/deflate.c \
	vendor/zlib/trees.c \
	vendor/zlib/inftrees.c \
	vendor/zlib/adler32.c \
	vendor/zlib/zutil.c \
	vendor/zlib/inflate.c \
	vendor/zlib/infback.c \
	vendor/zlib/inffast.c
FLAGS += -Ivendor/zlib
FLAGS += -DWANT_ZLIB

RobLoach's avatar
RobLoach committed
33
# PhysFS
RobLoach's avatar
RobLoach committed
34
35
36
FLAGS += -Ivendor/physfs/src
FLAGS += -Ivendor/physfs/extras
FLAGS += -DPHYSFS_NO_CDROM_SUPPORT=1
RobLoach's avatar
RobLoach committed
37
38
39
40
41
42
SOURCES_C += $(wildcard \
	vendor/physfs/extras/physfsrwops.c \
	vendor/physfs/src/*.c \
)

# SDL_tty
RobLoach's avatar
RobLoach committed
43
FLAGS += -Ivendor/SDL_tty/include
RobLoach's avatar
RobLoach committed
44
45
46
47
48
49
SOURCES_C += $(wildcard \
	vendor/SDL_tty/src/SDL_tty.c \
	vendor/SDL_tty/src/SDL_fnt.c \
)

# SDL_gfx
RobLoach's avatar
RobLoach committed
50
FLAGS += -Ivendor/sdl-libretro/tests/SDL_gfx-2.0.26
RobLoach's avatar
RobLoach committed
51
52
53
54
SOURCES_C += $(wildcard \
	vendor/sdl-libretro/tests/SDL_gfx-2.0.26/*.c \
)

RobLoach's avatar
RobLoach committed
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# SDL_ttf
# TODO Fix TTF Support https://github.com/RobLoach/ChaiLove/issues/48
#FLAGS += -Ivendor/sdl-libretro/tests/SDL_ttf-2.0.11/VisualC/external/include
#SOURCES_C += $(wildcard \
#	vendor/sdl-libretro/tests/SDL_ttf-2.0.11/*.c \
#)

# SDL_stbimage
FLAGS += -Ivendor/Snippets

# STB
FLAGS += -Ivendor/stb

# ChaiScript
ifeq ($(HAVE_CHAISCRIPT),)
	FLAGS += -Ivendor/chaiscript/include
	FLAGS += -Ivendor/RobLoachChaiScript_Extras/include
	FLAGS += -D__HAVE_CHAISCRIPT__
	FLAGS += -DCHAISCRIPT_NO_THREADS -DCHAISCRIPT_NO_THREADS_WARNING -DCHAISCRIPT_NO_DYNLOAD
	FLAGS += -DCHAISCRIPT_EXTRAS_MATH_DISABLE_ISINF -DCHAISCRIPT_EXTRAS_MATH_DISABLE_ISNAN
endif

RobLoach's avatar
RobLoach committed
77
78
# SDL
ifeq ($(platform), win)
RobLoach's avatar
RobLoach committed
79
	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
80
else
RobLoach's avatar
RobLoach committed
81
	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/thread/generic/*.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/loadso/dummy/*.c)
RobLoach's avatar
RobLoach committed
82
endif
RobLoach's avatar
RobLoach committed
83
FLAGS += -DSDL_THREADS_DISABLED -DSDL_CDROM_DISABLED
RobLoach's avatar
RobLoach committed
84
85
FLAGS += -Ivendor/sdl-libretro/include

RobLoach's avatar
RobLoach committed
86
87
88
ifeq ($(platform), osx)
	CXXFLAGS += -stdlib=libc++
endif
RobLoach's avatar
RobLoach committed
89

RobLoach's avatar
RobLoach committed
90
OBJECTS += $(SOURCES_CXX:.cpp=.o) $(SOURCES_C:.c=.o)
RobLoach's avatar
RobLoach committed
91
92
93
94
95
96
97
98
99
100

# Build all the dependencies, and the core.
all: | dependencies	$(TARGET)

ifeq ($(DEBUG), 0)
   FLAGS += -O3 -ffast-math -fomit-frame-pointer
else
   FLAGS += -O0 -g
endif

RobLoach's avatar
RobLoach committed
101
LDFLAGS +=  $(fpic) $(SHARED) $(EXTRA_LDF)
RobLoach's avatar
RobLoach committed
102
103
104
105
106
107

WARNINGS :=

ifneq ($(HAVE_TESTS),)
	FLAGS += -D__HAVE_TESTS__
endif