# gpSP makefile
# Gilead Kutnick - Exophase

# Global definitions
EE_BIN = gpsp_kai.elf

EE_GPVAL = -G0
EE_CFLAGS += -mno-gpopt $(EE_GPVAL) -g -DUSE_C_CORE
EE_INCS += -I./ -I$(PS2SDK)/ports/include -I$(PS2SDK)/ports/include/SDL -I$(PS2DEV)/gskit/include
EE_LDFLAGS += -L$(PS2SDK)/ports/lib -L$(PS2DEV)/gskit/lib -L./ps2/libps2time
EE_LIBS += -lgskit -ldmakit -laudsrv -lpad -lz -lps2time -lcdvd \
		   -lm -lpatches -lhdd -lfileXio -lpoweroff -ldebug

EE_CFLAGS +=  -funsigned-char -ffast-math -fforce-addr -fmerge-all-constants
		   
EE_OBJS = main.o cpu_common.o cpu_asm.o cpu_c.o video.o memory.o sound.o input.o gs.o \
	    gui.o zip.o cheats.o mips_stub.o fbm_print.o bios.o draw.o \
		scalers/scaler.o scalers/scale2x.o scalers/2xSaI.o\
		unicode.o swab.o ps2.o iomanx_irx.o usbhdfsd_irx.o usbd_irx.o libsd_irx.o audsrv_irx.o \
		poweroff_irx.o fileXio_irx.o ps2atad_irx.o ps2fs_irx.o ps2hdd_irx.o ps2dev9_irx.o 
		
all: $(EE_BIN)

usbd_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/usbd.irx usbd_irx.o usbd_irx
usbhdfsd_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/usbhdfsd.irx usbhdfsd_irx.o usbhdfsd_irx
iomanx_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/iomanx.irx iomanx_irx.o iomanx_irx
libsd_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/freesd.irx libsd_irx.o libsd_irx
audsrv_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/audsrv.irx audsrv_irx.o audsrv_irx
poweroff_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/poweroff.irx poweroff_irx.o poweroff_irx
fileXio_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/fileXio.irx fileXio_irx.o fileXio_irx
ps2atad_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/ps2atad.irx ps2atad_irx.o ps2atad_irx
ps2fs_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/ps2fs.irx ps2fs_irx.o ps2fs_irx
ps2hdd_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/ps2hdd.irx ps2hdd_irx.o ps2hdd_irx
ps2dev9_irx.o:
	bin2o $(EE_GPVAL) $(PS2SDK)/iop/irx/ps2dev9.irx ps2dev9_irx.o ps2dev9_irx
run:
	ps2client -h 192.168.2.10 execee host:$(EE_BIN)
reset:
	ps2client -h 192.168.2.10 reset
pack:
	ps2-packer $(EE_BIN) packed_$(EE_BIN)
strip:
	ee-strip $(EE_BIN)
test:
	ee-addr2line -e $(EE_BIN) 001E6E28
clean:
	rm -f $(EE_BIN) $(EE_OBJS)

include $(PS2SDK)/samples/Makefile.pref
include $(PS2SDK)/samples/Makefile.eeglobal
