### ## # Makefile for RetroArch Wii. ## DEBUG = 0 HAVE_LOGGER = 0 HAVE_FILE_LOGGER = 0 PERF_TEST = 0 PC_DEVELOPMENT_IP_ADDRESS = "192.168.1.100" PC_DEVELOPMENT_UDP_PORT = 3490 # system platform system_platform = unix ifeq ($(shell uname -a),) EXE_EXT = .exe system_platform = win else ifneq ($(findstring Darwin,$(shell uname -a)),) system_platform = osx else ifneq ($(findstring MINGW,$(shell uname -a)),) system_platform = win endif CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) CXX = $(DEVKITPPC)/bin/powerpc-eabi-g++$(EXE_EXT) LD = $(DEVKITPPC)/bin/powerpc-eabi-ld$(EXE_EXT) ELF2DOL = $(DEVKITPPC)/bin/elf2dol$(EXE_EXT) DOL_TARGET := retroarch_wii.dol ELF_TARGET := retroarch_wii.elf INCLUDE := -I. -I$(DEVKITPRO)/libogc/include LIBDIRS := -L$(DEVKITPRO)/libogc/lib/wii -L. MACHDEP := -DGEKKO -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float CFLAGS += -Wall -std=gnu99 $(MACHDEP) $(INCLUDE) LDFLAGS := $(MACHDEP) -Wl,-Map,$(notdir $(ELF_TARGET)).map,-wrap,malloc,-wrap,free,-wrap,memalign,-wrap,calloc,-wrap,realloc,-wrap,strdup,-wrap,strndup,-wrap,malloc_usable_size -T gx/ld/rvl.ld LIBS := -lfat -lretro_wii -lwiiuse -logc -lbte APP_BOOTER_DIR = wii/app_booter OBJ = console/griffin/griffin.o console/font.binobj console/rzlib/rzlib.o $(APP_BOOTER_DIR)/app_booter.binobj ifeq ($(PERF_TEST), 1) CFLAGS += -DPERF_TEST endif ifeq ($(HAVE_LOGGER), 1) CFLAGS += -DHAVE_LOGGER CFLAGS += -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) CFLAGS += -Iconsole/logger OBJ += console/logger/logger.o endif ifeq ($(HAVE_FILE_LOGGER), 1) CFLAGS += -DHAVE_FILE_LOGGER CFLAGS += -Iconsole/logger endif CFLAGS += -std=gnu99 -DHAVE_DEFAULT_RETROPAD_INPUT -DHAVE_RGUI -DHAVE_THREAD -DRARCH_CONSOLE -DHAVE_LIBRETRO_MANAGEMENT -DHAVE_RARCH_EXEC -DHAVE_CONFIGFILE=1 -DGEKKO -DHAVE_ZLIB -DHAVE_RARCH_MAIN_WRAP -DHAVE_GRIFFIN=1 -DHAVE_SCREENSHOTS -DPACKAGE_VERSION=\"0.9.8-beta2\" -Dmain=rarch_main -Wno-char-subscripts ifeq ($(DEBUG), 1) CFLAGS += -O0 -g else CFLAGS += -O3 endif all: $(DOL_TARGET) %.dol: %.elf $(ELF2DOL) $< $@ $(ELF_TARGET): $(OBJ) $(CXX) -o $@ $(LDFLAGS) $(LIBDIRS) $(OBJ) $(LIBS) %.o: %.c $(CC) $(CFLAGS) -c -o $@ $< %.bmpobj: %.bmp $(LD) -r -b binary -o $@ $< %.binobj: %.bin $(LD) -r -b binary -o $@ $< $(APP_BOOTER_DIR)/app_booter.bin: $(MAKE) -C $(APP_BOOTER_DIR) pkg: all cp -r $(DOL_TARGET) wii/pkg/CORE.dol clean: rm -f $(DOL_TARGET) rm -f $(ELF_TARGET) rm -f $(OBJ) $(MAKE) -C $(APP_BOOTER_DIR) clean .PHONY: clean