diff --git a/Makefile.xenon b/Makefile.xenon new file mode 100644 index 0000000000..be60339e2f --- /dev/null +++ b/Makefile.xenon @@ -0,0 +1,57 @@ +### +## +# Makefile for SSNES libxenon. +## +### +## +DEBUG = 0 + +## Platform detection from nall/Makefile. Only two applicable hosts for PS3 SDK. +ifeq ($(platform),) + uname := $(shell uname -a) +ifeq ($(uname),) + platform := win +else + platform := linux +endif +endif + +CC = $(DEVKITXENON)/bin/xenon-gcc +LD = $(DEVKITXENON)/bin/xenon-ld +STRIP = $(DEVITKXENON)/bin/xenon-strip + +PPU_TARGET := ssnes-libxenon.elf + +LDDIRS = -L. -L$(DEVKITXENON)/usr/lib +INCDIRS = -I. -Icommon -I$(DEVKITXENON)/usr/include -I$(DEVKITXENON)/usr/include/SDL + +OBJ = fifo_buffer.o getopt.o ssnes.o driver.o file.o settings.o message.o rewind.o movie.o audio/sdl.o gfx/gfx_common.o gfx/snes_state.o ups.o bps.o strl.o screenshot.o audio/hermite.o dynamic.o audio/utils.o conf/config_file.o gfx/image.o + +LIBS = -lsnes -lSDL -lxenon -lm + +DEFINES = -std=c99 -DHAVE_SDL_IMAGE=1 -DHAVE_CONFIGFILE=1 -DHAVE_SDL=1 -DPACKAGE_VERSION=\"0.9.2\" -Dmain=ssnes_main + +DEFINES += -ffunction-sections -fdata-sections -mno-altivec -mhard-float -mcpu=cell -mtune=cell -m32 -fno-pic -mpowerpc64 -g -Wall -DSDL -DXENON $(INCDIRS) + +ifeq ($(DEBUG), 1) + OPTIMIZE_LV := -O0 -g +else + OPTIMIZE_LV := -O3 +endif + +CFLAGS = $(OPTIMIZE_LV) $(DEFINES) + +LDFLAGS = -g -Wl, --gc-sections -Wl, -Map,$(notdir $@).map + +$(PPU_TARGET): $(OBJ) + $(LD) -o $@ $(OBJ) $(CFLAGS) $(LDFLAGS) $(LDDIRS) $(LIBS) + $(STRIP) $(PPU_TARGET) + +%.o: %.c config.h + $(CC) $(CFLAGS) -c -o $@ $< + +clean: + rm -f $(PPU_TARGET) + rm -f $(OBJ) + +.PHONY: clean