blob: 6638e0ef8f7283a729bb1b93c17170b06e26b953 (
plain)
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
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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
# this enables port specific debug messages and redirects stdout/err over
# usbgecko in memcard slot b
DEBUG_WII = 1
# builds a gamecube version. cleanup object files before flipping this
GAMECUBE = 0
ENABLE_SCUMM = STATIC_PLUGIN
ENABLE_SCUMM_7_8 = STATIC_PLUGIN
ENABLE_HE = STATIC_PLUGIN
# ENABLE_AGI = STATIC_PLUGIN
ENABLE_AGOS = STATIC_PLUGIN
ENABLE_CINE = STATIC_PLUGIN
ENABLE_CRUISE = STATIC_PLUGIN
ENABLE_DRASCULA = STATIC_PLUGIN
ENABLE_GOB = STATIC_PLUGIN
ENABLE_GROOVIE = STATIC_PLUGIN
ENABLE_IGOR = STATIC_PLUGIN
ENABLE_KYRA = STATIC_PLUGIN
ENABLE_LURE = STATIC_PLUGIN
ENABLE_M4 = STATIC_PLUGIN
ENABLE_MADE = STATIC_PLUGIN
ENABLE_PARALLACTION = STATIC_PLUGIN
ENABLE_QUEEN = STATIC_PLUGIN
ENABLE_SAGA = STATIC_PLUGIN
ENABLE_SKY = STATIC_PLUGIN
ENABLE_SWORD1 = STATIC_PLUGIN
ENABLE_SWORD2 = STATIC_PLUGIN
ENABLE_TINSEL = STATIC_PLUGIN
ENABLE_TOUCHE = STATIC_PLUGIN
ENABLE_TUCKER = STATIC_PLUGIN
DISABLE_HQ_SCALERS = 1
DISABLE_SCALERS = 1
USE_ZLIB = 1
USE_MAD = 1
USE_TREMOR = 1
USE_FLAC = 1
#USE_MPEG2 = 1
ifeq ($(GAMECUBE),1)
USE_MT32EMU = 0
else
USE_MT32EMU = 1
endif
srcdir = ../../..
VPATH = $(srcdir)
HAVE_GCC3 = 1
DISTPATH = $(srcdir)/dists/wii
ifeq ($(strip $(DEVKITPPC)),)
$(error "Please set DEVKITPPC in your environment. export DEVKITPPC=<path to>devkitPPC")
endif
PREFIX = $(DEVKITPPC)/bin/powerpc-gekko-
CXX = $(PREFIX)g++
AS = $(PREFIX)gcc
LD = $(PREFIX)gcc
AR = $(PREFIX)ar cru
RANLIB = $(PREFIX)ranlib
STRIP = $(PREFIX)strip -g
MKDIR = mkdir -p
RM = rm -f
RM_REC = rm -rf
CP = cp -f
ifeq ($(GAMECUBE),1)
TARGET = scummvm-gc
MACHDEP = -DGEKKO -DGAMECUBE -mogc -mcpu=750 -meabi -mhard-float \
-ffunction-sections -fdata-sections -fmodulo-sched
LIBDIR = $(DEVKITPRO)/libogc/lib/cube
LIBS = -lstdc++ -lfat -logc -lm
else
TARGET = scummvm-wii
MACHDEP = -DGEKKO -mrvl -mcpu=750 -meabi -mhard-float \
-ffunction-sections -fdata-sections -fmodulo-sched
LIBDIR = $(DEVKITPRO)/libogc/lib/wii
LIBS = -lstdc++ -lfat -lwiiuse -lbte -logc -lm
endif
INCDIR = $(srcdir) . $(srcdir)/engines/ $(DEVKITPRO)/libogc/include
CXXFLAGS = -g -Os -Wall $(MACHDEP) -D__WII__ -Wno-multichar -Wno-long-long \
-Wno-unknown-pragmas -Wno-reorder -fno-exceptions -fno-rtti
CXXFLAGS += $(addprefix -I,$(INCDIR))
LDFLAGS = -g $(MACHDEP) -Wl,-Map,$(TARGET).elf.map
LDFLAGS += $(addprefix -L,$(LIBDIR))
CXXFLAGS += -I$(DEVKITPRO)/3rd/wii/include
LDFLAGS += -L$(DEVKITPRO)/3rd/wii/lib
ifdef DEBUG_WII
CXXFLAGS += -DDEBUG_WII
LIBS += -ldb
endif
ifdef USE_ZLIB
CXXFLAGS += -DUSE_ZLIB
LIBS += -lz
endif
ifdef USE_MAD
CXXFLAGS += -DUSE_MAD -I$(DEVKITPRO)/libogc/include/mad
LIBS += -lmad
endif
ifdef USE_TREMOR
CXXFLAGS += -DUSE_VORBIS -DUSE_TREMOR
LIBS += -lvorbisidec
endif
ifdef USE_FLAC
CXXFLAGS += -DUSE_FLAC
LIBS += -lFLAC
endif
ifdef USE_MPEG2
CXXFLAGS += -DUSE_MPEG2
LIBS += -lmpeg2
endif
ifdef USE_MT32EMU
CXXFLAGS += -DUSE_MT32EMU
endif
OBJS := backends/platform/wii/main.o \
backends/platform/wii/gx_supp.o \
backends/platform/wii/osystem.o \
backends/platform/wii/osystem_gfx.o \
backends/platform/wii/osystem_sfx.o \
backends/platform/wii/osystem_events.o
include $(srcdir)/Makefile.common
.PHONY: clean-wii distclean-wii upload dist
all: $(TARGET).dol
$(TARGET).dol: $(TARGET).elf
$(DEVKITPPC)/bin/elf2dol $< $@
$(TARGET).elf: $(OBJS)
$(LD) $^ $(LDFLAGS) $(LIBS) -o $@
clean: clean-wii
clean-wii:
@$(RM) $(TARGET).elf $(TARGET).elf.map $(TARGET).dol
distclean: distclean-wii
distclean-wii:
@$(RM_REC) dist
upload: $(TARGET).dol
ifeq ($(GAMECUBE),1)
$(DEVKITPPC)/bin/geckoupload $(TARGET).dol
else
$(DEVKITPPC)/bin/wiiload $(TARGET).dol
endif
dist:
$(MKDIR) dist/scummvm
ifeq ($(GAMECUBE),1)
$(CP) $(TARGET).dol dist/scummvm/
else
$(CP) $(TARGET).dol dist/scummvm/boot.dol
$(CP) $(DISTPATH)/meta.xml dist/scummvm/
$(CP) $(DISTPATH)/icon.png dist/scummvm/
endif
$(CP) $(DISTPATH)/READMII dist/scummvm/
$(CP) $(srcdir)/AUTHORS dist/scummvm/
$(CP) $(srcdir)/COPYING dist/scummvm/
$(CP) $(srcdir)/COPYRIGHT dist/scummvm/
$(CP) $(srcdir)/NEWS dist/scummvm/
$(CP) $(srcdir)/README dist/scummvm/
$(CP) $(DIST_FILES_THEMES) dist/scummvm/
ifneq ($(DIST_FILES_ENGINEDATA),)
$(CP) $(DIST_FILES_ENGINEDATA) dist/scummvm/
endif
|