aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/ps2/Makefile.ps2
blob: d6ebc9bfc8b3781a56b47a12b398ef338fcea382 (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
# $Header: Exp $
 include $(PS2SDK)/Defs.make

PS2_EXTRA = /home/tony/GSOC/ps2/sdk-extra
PS2_EXTRA_INCS = /zlib/include /libmad/ee/include /SjPcm/ee/src /tremor
PS2_EXTRA_LIBS = /zlib/lib /libmad/ee/lib /SjPcm/ee/lib /vorbis /tremor/tremor

# Set to 1 to enable, 0 to disable dynamic modules
DYNAMIC_MODULES = 1

VERBOSE_BUILD=0

# Test for dynamic plugins
ifeq ($(DYNAMIC_MODULES),1)
ENABLED = DYNAMIC_PLUGIN
DEFINES += -DDYNAMIC_MODULES
PRE_OBJS_FLAGS = -Wl,--whole-archive
POST_OBJS_FLAGS = -Wl,--no-whole-archive
else
ENABLED = STATIC_PLUGIN
endif

ENABLE_SCUMM = $(ENABLED)
#ENABLE_SCUMM_7_8 = $(ENABLED)
#ENABLE_HE = $(ENABLED)
ENABLE_AGI = $(ENABLED)
#ENABLE_AGOS = $(ENABLED)
#ENABLE_CINE = $(ENABLED)
#ENABLE_CRUISE = $(ENABLED)
#ENABLE_DRASCULA = $(ENABLED)
#ENABLE_GOB = $(ENABLED)
#ENABLE_KYRA = $(ENABLED)
#ENABLE_LURE = $(ENABLED)
# ENABLE_M4 = $(ENABLED)
#ENABLE_MADE = $(ENABLED)
#ENABLE_PARALLACTION = $(ENABLED)
#ENABLE_QUEEN = $(ENABLED)
#ENABLE_SAGA = $(ENABLED)
#ENABLE_SAGA2 = $(ENABLED)
#ENABLE_IHNM = $(ENABLED)
#ENABLE_SKY = $(ENABLED)
#ENABLE_SWORD1 = $(ENABLED)
#ENABLE_SWORD2 = $(ENABLED)
# ENABLE_TINSEL = $(ENABLED)
#ENABLE_TOUCHE = $(ENABLED)

HAVE_GCC3 = true

CC	= ee-gcc
CXX     = ee-g++
AS      = ee-gcc
LD      = ee-gcc
AR      = ee-ar cru
RANLIB  = ee-ranlib
STRIP   = ee-strip
MKDIR   = mkdir -p
RM      = rm -f

srcdir = ../../..
VPATH = $(srcdir)
INCDIR = ../../../
DEPDIR = .deps
CXX_UPDATE_DEP_FLAG = -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d",-MQ,"$@",-MP

# Variables for dynamic plugin building
PLUGIN_PREFIX =
PLUGIN_SUFFIX = .plg
PLUGIN_EXTRA_DEPS = plugin.syms elf/scummvm.elf
PLUGIN_LDFLAGS = -nostartfiles -mno-crt0 $(PS2SDK)/ee/startup/crt0.o -Wl,-q,--just-symbols=elf/scummvm.org.elf,-Tlinkfile,--retain-symbols-file,plugin.syms -lstdc++ -lc

DEFINES  = -DUSE_VORBIS -DUSE_MAD -DUSE_TREMOR -DUSE_ZLIB -DFORCE_RTL -D_EE -D__PLAYSTATION2__ -O2 -Wall -Wno-multichar -fno-exceptions -fno-rtti

INCLUDES = $(addprefix -I$(PS2_EXTRA),$(PS2_EXTRA_INCS)) 
INCLUDES += -I $(PS2SDK)/ee/include -I $(PS2SDK)/common/include -I ./common -I . -I $(srcdir) -I $(srcdir)/engines

TARGET = elf/scummvm

OBJS := backends/platform/ps2/DmaPipe.o \
    backends/platform/ps2/Gs2dScreen.o \
    backends/platform/ps2/irxboot.o \
	backends/platform/ps2/ps2input.o \
	backends/platform/ps2/ps2pad.o \
	backends/platform/ps2/savefilemgr.o \
    backends/platform/ps2/fileio.o \
    backends/platform/ps2/asyncfio.o \
	backends/platform/ps2/icon.o \
    backends/platform/ps2/cd.o \
    backends/platform/ps2/eecodyvdfs.o \
    backends/platform/ps2/rpckbd.o \
    backends/platform/ps2/systemps2.o \
    backends/platform/ps2/ps2mutex.o \
    backends/platform/ps2/ps2time.o \
	backends/platform/ps2/ps2debug.o \
	backends/platform/ps2/ps2loader.o
    
MODULE_DIRS += .

include $(srcdir)/Makefile.common

LDFLAGS += -mno-crt0 $(PS2SDK)/ee/startup/crt0.o -T main_prog.ld #$(PS2SDK)/ee/startup/linkfile
LDFLAGS += -G 0 -L $(PS2SDK)/ee/lib -L .
LDFLAGS += $(addprefix -L$(PS2_EXTRA),$(PS2_EXTRA_LIBS)) 
LDFLAGS += -lmc -lpad -lmouse -lhdd -lpoweroff -lsjpcm -lmad -ltremor -lz -lm -lc -lfileXio -lkernel -lstdc++
LDFLAGS +=

all: $(TARGET).elf

$(TARGET).elf: $(OBJS)
	$(LD) $(PRE_OBJS_FLAGS) $(OBJS) $(POST_OBJS_FLAGS) $(LDFLAGS) -o $@