From 307c6f5c053988af57809e2061c84372803d9be4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Benjamim?= Date: Thu, 20 Apr 2017 00:20:26 -0300 Subject: [PATCH] Makefile cleanup. --- Makefile.libretro | 442 ++++++++++++++++++++-------------------------- 1 file changed, 190 insertions(+), 252 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index 833a3e6..e0b9f70 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -2,317 +2,255 @@ DEBUG = 0 LOGSOUND = 0 FRONTEND_SUPPORTS_RGB565 = 1 -ifeq ($(platform),) - platform = unix - ifeq ($(shell uname -a),) - platform = win - else ifneq ($(findstring MINGW,$(shell uname -a)),) - platform = win - else ifneq ($(findstring Darwin,$(shell uname -a)),) - platform = osx - arch = intel - ifeq ($(shell uname -p),powerpc) - arch = ppc - endif - else ifneq ($(findstring win,$(shell uname -a)),) - platform = win - endif -endif - # 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 - arch = intel - ifeq ($(shell uname -p),powerpc) - arch = ppc - endif -else ifneq ($(findstring MINGW,$(shell uname -a)),) - system_platform = win +ifeq ($(platform),) + platform = unix + ifeq ($(shell uname -a),) + platform = win + EXE_EXT = .exe + else ifneq ($(findstring MINGW,$(shell uname -a)),) + platform = win + else ifneq ($(findstring Darwin,$(shell uname -a)),) + platform = osx + arch = intel + ifeq ($(shell uname -p),powerpc) + arch = ppc + endif + else ifneq ($(findstring win,$(shell uname -a)),) + platform = win + endif +else ifneq (,$(findstring armv,$(platform))) + override platform += unix +else ifneq (,$(findstring rpi,$(platform))) + override platform += unix endif TARGET_NAME := genesis_plus_gx + LIBM := -lm + GIT_VERSION ?= " $(shell git rev-parse --short HEAD || echo unknown)" ifneq ($(GIT_VERSION)," unknown") - CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\" + CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\" endif # Unix -ifeq ($(platform), unix) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB +ifneq (,$(findstring unix,$(platform))) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB + + # Raspberry Pi + ifneq (,$(findstring rpi,$(platform))) + ENDIANNESS_DEFINES += -DALIGN_LONG + CFLAGS += -fomit-frame-pointer -ffast-math + ifneq (,$(findstring rpi1,$(platform))) + PLATFORM_DEFINES += -DARM11 -marm -march=armv6j -mfpu=vfp -mfloat-abi=hard + else ifneq (,$(findstring rpi2,$(platform))) + PLATFORM_DEFINES += -DARM -marm -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard + else ifneq (,$(findstring rpi3,$(platform))) + PLATFORM_DEFINES += -DARM -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard + endif + endif # Portable Linux else ifeq ($(platform), linux-portable) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC -nostdlib - SHARED := -shared -Wl,--version-script=libretro/link.T - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB - LIBM := + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC -nostdlib + SHARED := -shared -Wl,--version-script=libretro/link.T + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB + LIBM := + # OS X else ifeq ($(platform), osx) - TARGET := $(TARGET_NAME)_libretro.dylib - fpic := -fPIC - SHARED := -dynamiclib - ifeq ($(arch),ppc) - ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN - else - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - endif - PLATFORM_DEFINES := -DHAVE_ZLIB + TARGET := $(TARGET_NAME)_libretro.dylib + fpic := -fPIC + SHARED := -dynamiclib + ifeq ($(arch),ppc) + ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN + else + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + endif + PLATFORM_DEFINES := -DHAVE_ZLIB - OSXVER = `sw_vers -productVersion | cut -d. -f 2` - OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"` - fpic += -mmacosx-version-min=10.1 - ifndef ($(NOUNIVERSAL)) - CFLAGS += $(ARCHFLAGS) - LDFLAGS += $(ARCHFLAGS) - endif + OSXVER = `sw_vers -productVersion | cut -d. -f 2` + OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"` + fpic += -mmacosx-version-min=10.1 + ifndef ($(NOUNIVERSAL)) + CFLAGS += $(ARCHFLAGS) + LDFLAGS += $(ARCHFLAGS) + endif # iOS else ifneq (,$(findstring ios,$(platform))) + TARGET := $(TARGET_NAME)_libretro_ios.dylib + fpic := -fPIC + SHARED := -dynamiclib + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB - TARGET := $(TARGET_NAME)_libretro_ios.dylib - fpic := -fPIC - SHARED := -dynamiclib - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB + ifeq ($(IOSSDK),) + IOSSDK := $(shell xcrun -sdk iphoneos -show-sdk-path) + endif - ifeq ($(IOSSDK),) - IOSSDK := $(shell xcrun -sdk iphoneos -show-sdk-path) - endif - - CC = cc -arch armv7 -isysroot $(IOSSDK) -ifeq ($(platform),ios9) - CC += -miphoneos-version-min=8.0 - PLATFORM_DEFINES += -miphoneos-version-min=8.0 -else - CC += -miphoneos-version-min=5.0 - PLATFORM_DEFINES += -miphoneos-version-min=5.0 -endif + CC = cc -arch armv7 -isysroot $(IOSSDK) + ifeq ($(platform),ios9) + CC += -miphoneos-version-min=8.0 + PLATFORM_DEFINES += -miphoneos-version-min=8.0 + else + CC += -miphoneos-version-min=5.0 + PLATFORM_DEFINES += -miphoneos-version-min=5.0 + endif # Theos else ifeq ($(platform), theos_ios) - DEPLOYMENT_IOSVERSION = 5.0 - TARGET = iphone:latest:$(DEPLOYMENT_IOSVERSION) - ARCHS = armv7 armv7s - TARGET_IPHONEOS_DEPLOYMENT_VERSION=$(DEPLOYMENT_IOSVERSION) - THEOS_BUILD_DIR := objs - include $(THEOS)/makefiles/common.mk + DEPLOYMENT_IOSVERSION = 5.0 + TARGET = iphone:latest:$(DEPLOYMENT_IOSVERSION) + ARCHS = armv7 armv7s + TARGET_IPHONEOS_DEPLOYMENT_VERSION=$(DEPLOYMENT_IOSVERSION) + THEOS_BUILD_DIR := objs + include $(THEOS)/makefiles/common.mk - LIBRARY_NAME = $(TARGET_NAME)_libretro_ios + LIBRARY_NAME = $(TARGET_NAME)_libretro_ios - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB # QNX else ifeq ($(platform), qnx) - TARGET := $(TARGET_NAME)_libretro_qnx.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB - CC = qcc -Vgcc_ntoarmv7le - AR = qcc -Vgcc_ntoarmv7le - PLATFORM_DEFINES := -D__BLACKBERRY_QNX__ -marm -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=softfp + TARGET := $(TARGET_NAME)_libretro_qnx.so + fpic := -fPIC + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB + CC = qcc -Vgcc_ntoarmv7le + AR = qcc -Vgcc_ntoarmv7le + PLATFORM_DEFINES := -D__BLACKBERRY_QNX__ -marm -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=softfp # PS3 -else ifeq ($(platform), ps3) - TARGET := $(TARGET_NAME)_libretro_ps3.a - CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe - AR = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe - PLATFORM_DEFINES := -D__CELLOS_LV2 -DALT_RENDER -DBYTE_ORDER=BIG_ENDIAN - STATIC_LINKING = 1 +else ifneq (,$(filter $(platform), ps3 sncps3 psl1ght)) + TARGET := $(TARGET_NAME)_libretro_ps3.a + PLATFORM_DEFINES := -D__CELLOS_LV2 -DALT_RENDER + STATIC_LINKING = 1 -# sncps3 -else ifeq ($(platform), sncps3) - TARGET := $(TARGET_NAME)_libretro_ps3.a - CC = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe - AR = $(CELL_SDK)/host-win32/sn/bin/ps3snarl.exe - PLATFORM_DEFINES := -D__CELLOS_LV2 -DALT_RENDER -DBYTE_ORDER=BIG_ENDIAN - STATIC_LINKING = 1 + # sncps3 + ifneq (,$(findstring sncps3,$(platform))) + CC = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe + AR = $(CELL_SDK)/host-win32/sn/bin/ps3snarl.exe + PLATFORM_DEFINES += -DBYTE_ORDER=BIG_ENDIAN -# Lightweight PS3 Homebrew SDK -else ifeq ($(platform), psl1ght) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(PS3DEV)/ppu/bin/ppu-gcc$(EXE_EXT) - AR = $(PS3DEV)/ppu/bin/ppu-ar$(EXE_EXT) - PLATFORM_DEFINES := -D__CELLOS_LV2 -DALT_RENDER - STATIC_LINKING = 1 + # PS3 + else ifneq (,$(findstring ps3,$(platform))) + CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe + AR = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe + PLATFORM_DEFINES += -DBYTE_ORDER=BIG_ENDIAN + + # Lightweight PS3 Homebrew SDK + else ifneq (,$(findstring psl1ght,$(platform))) + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = $(PS3DEV)/ppu/bin/ppu-gcc$(EXE_EXT) + AR = $(PS3DEV)/ppu/bin/ppu-ar$(EXE_EXT) + endif # PSP else ifeq ($(platform), psp1) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = psp-gcc$(EXE_EXT) - AR = psp-ar$(EXE_EXT) - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DPSP - CFLAGS += -G0 - STATIC_LINKING = 1 + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = psp-gcc$(EXE_EXT) + AR = psp-ar$(EXE_EXT) + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DPSP + CFLAGS += -G0 + STATIC_LINKING = 1 # Vita else ifeq ($(platform), vita) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = arm-vita-eabi-gcc$(EXE_EXT) - AR = arm-vita-eabi-ar$(EXE_EXT) - CFLAGS += -O3 -mfloat-abi=hard -ffast-math -fsingle-precision-constant - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DALT_RENDERER -DHAVE_ALLOCA_H -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DVITA - STATIC_LINKING = 1 + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = arm-vita-eabi-gcc$(EXE_EXT) + AR = arm-vita-eabi-ar$(EXE_EXT) + CFLAGS += -O3 -mfloat-abi=hard -ffast-math -fsingle-precision-constant + ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DALT_RENDERER -DHAVE_ALLOCA_H -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DVITA + STATIC_LINKING = 1 # CTR (3DS) else ifeq ($(platform), ctr) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(DEVKITARM)/bin/arm-none-eabi-gcc$(EXE_EXT) - AR = $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT) - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN -DUSE_DYNAMIC_ALLOC - PLATFORM_DEFINES := -DARM11 -D_3DS - CFLAGS += -march=armv6k -mtune=mpcore -mfloat-abi=hard -marm -mfpu=vfp - CFLAGS += -Wall -mword-relocations - CFLAGS += -fomit-frame-pointer -ffast-math - STATIC_LINKING = 1 - -# Raspberry Pi 1 -else ifeq ($(platform), rpi1) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - PLATFORM_DEFINES := -DHAVE_ZLIB - PLATFORM_DEFINES += -DARM11 - PLATFORM_DEFINES += -marm -march=armv6j -mfloat-abi=hard -mfpu=vfp - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN - CFLAGS += -fomit-frame-pointer -ffast-math - CXXFLAGS = $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11 - -# Raspberry Pi 2 -else ifeq ($(platform), rpi2) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - PLATFORM_DEFINES := -DHAVE_ZLIB - PLATFORM_DEFINES += -DARM - PLATFORM_DEFINES += -marm -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN - CFLAGS += -fomit-frame-pointer -ffast-math - CXXFLAGS = $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11 - -# Raspberry Pi 3 -else ifeq ($(platform), rpi3) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - PLATFORM_DEFINES := -DHAVE_ZLIB - PLATFORM_DEFINES += -DARM - PLATFORM_DEFINES += -marm -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN - CFLAGS += -fomit-frame-pointer -ffast-math - CXXFLAGS = $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11 + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = $(DEVKITARM)/bin/arm-none-eabi-gcc$(EXE_EXT) + AR = $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT) + ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN -DUSE_DYNAMIC_ALLOC + PLATFORM_DEFINES := -DARM11 -D_3DS + CFLAGS += -march=armv6k -mtune=mpcore -mfloat-abi=hard -marm -mfpu=vfp + CFLAGS += -Wall -mword-relocations + CFLAGS += -fomit-frame-pointer -ffast-math + STATIC_LINKING = 1 # Xbox 360 else ifeq ($(platform), xenon) - TARGET := $(TARGET_NAME)_libretro_xenon360.a - CC = xenon-gcc$(EXE_EXT) - AR = xenon-ar$(EXE_EXT) - PLATFORM_DEFINES := -D__LIBXENON__ -DALT_RENDER - ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN - STATIC_LINKING = 1 + TARGET := $(TARGET_NAME)_libretro_xenon360.a + CC = xenon-gcc$(EXE_EXT) + AR = xenon-ar$(EXE_EXT) + PLATFORM_DEFINES := -D__LIBXENON__ -DALT_RENDER + ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN + STATIC_LINKING = 1 -# Nintendo Game Cube -else ifeq ($(platform), ngc) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) - AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT) - ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN - PLATFORM_DEFINES := -DGEKKO -DHW_DOL -mrvl -mcpu=750 -meabi -mhard-float -DALT_RENDER - PLATFORM_DEFINES += -U__INT32_TYPE__ -U __UINT32_TYPE__ -D__INT32_TYPE__=int - STATIC_LINKING = 1 +# Nintendo GameCube / Wii / WiiU +else ifneq (,$(filter $(platform), ngc wii wiiu)) + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) + AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT) + ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN + PLATFORM_DEFINES := -DGEKKO -mcpu=750 -meabi -mhard-float -DALT_RENDER + PLATFORM_DEFINES += -U__INT32_TYPE__ -U __UINT32_TYPE__ -D__INT32_TYPE__=int + STATIC_LINKING = 1 -# Nintendo Wii -else ifeq ($(platform), wii) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) - AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT) - PLATFORM_DEFINES := -DGEKKO -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float -DALT_RENDER - PLATFORM_DEFINES += -U__INT32_TYPE__ -U __UINT32_TYPE__ -D__INT32_TYPE__=int - ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN - STATIC_LINKING = 1 + # Nintendo WiiU + ifneq (,$(findstring wiiu,$(platform))) + PLATFORM_DEFINES += -DWIIU -DHW_RVL -mwup -DUSE_DYNAMIC_ALLOC -# Nintendo WiiU -else ifeq ($(platform), wiiu) - TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(DEVKITPPC)/bin/powerpc-eabi-gcc$(EXE_EXT) - AR = $(DEVKITPPC)/bin/powerpc-eabi-ar$(EXE_EXT) - PLATFORM_DEFINES := -DGEKKO -DWIIU -DHW_RVL -mwup -mcpu=750 -meabi -mhard-float -DALT_RENDER -DUSE_DYNAMIC_ALLOC - PLATFORM_DEFINES += -U__INT32_TYPE__ -U __UINT32_TYPE__ -D__INT32_TYPE__=int - ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN - STATIC_LINKING = 1 + # Nintendo Wii + else ifneq (,$(findstring wii,$(platform))) + PLATFORM_DEFINES += -DHW_RVL -mrvl -# ARM -else ifneq (,$(findstring armv,$(platform))) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB - ifneq (,$(findstring cortexa5,$(platform))) - PLATFORM_DEFINES += -marm -mcpu=cortex-a5 - else ifneq (,$(findstring cortexa8,$(platform))) - PLATFORM_DEFINES += -marm -mcpu=cortex-a8 - else ifneq (,$(findstring cortexa9,$(platform))) - PLATFORM_DEFINES += -marm -mcpu=cortex-a9 - else ifneq (,$(findstring cortexa15a7,$(platform))) - PLATFORM_DEFINES += -marm -mcpu=cortex-a15.cortex-a7 - else - PLATFORM_DEFINES += -marm - endif - ifneq (,$(findstring softfloat,$(platform))) - PLATFORM_DEFINES += -mfloat-abi=softfp - else ifneq (,$(findstring hardfloat,$(platform))) - PLATFORM_DEFINES += -mfloat-abi=hard - endif - PLATFORM_DEFINES += -DARM + # Nintendo GameCube + else ifneq (,$(findstring ngc,$(platform))) + PLATFORM_DEFINES += -DHW_DOL -mrvl + endif # emscripten else ifeq ($(platform), emscripten) - TARGET := $(TARGET_NAME)_libretro_$(platform).bc - ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN -DHAVE_ZLIB - STATIC_LINKING = 1 + TARGET := $(TARGET_NAME)_libretro_$(platform).bc + ENDIANNESS_DEFINES := -DLSB_FIRST -DALIGN_LONG -DBYTE_ORDER=LITTLE_ENDIAN -DHAVE_ZLIB + STATIC_LINKING = 1 # GCW0 else ifeq ($(platform), gcw0) - TARGET := $(TARGET_NAME)_libretro.so - CC = /opt/gcw0-toolchain/usr/bin/mipsel-linux-gcc - CXX = /opt/gcw0-toolchain/usr/bin/mipsel-linux-g++ - AR = /opt/gcw0-toolchain/usr/bin/mipsel-linux-ar - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined - fpic := -fPIC - LDFLAGS += $(PTHREAD_FLAGS) - CFLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR - CFLAGS += -ffast-math -march=mips32 -mtune=mips32r2 -mhard-float + TARGET := $(TARGET_NAME)_libretro.so + CC = /opt/gcw0-toolchain/usr/bin/mipsel-linux-gcc + AR = /opt/gcw0-toolchain/usr/bin/mipsel-linux-ar + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + fpic := -fPIC + LDFLAGS += $(PTHREAD_FLAGS) + CFLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR + CFLAGS += -ffast-math -march=mips32 -mtune=mips32r2 -mhard-float # Windows else - TARGET := $(TARGET_NAME)_libretro.dll - CC = gcc - SHARED := -shared -static-libgcc -static-libstdc++ -Wl,--version-script=libretro/link.T -Wl,--no-undefined + TARGET := $(TARGET_NAME)_libretro.dll + CC = gcc + SHARED := -shared -static-libgcc -static-libstdc++ -Wl,--version-script=libretro/link.T -Wl,--no-undefined - ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN - PLATFORM_DEFINES := -DHAVE_ZLIB + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB endif LDFLAGS += $(LIBM) ifeq ($(DEBUG), 1) - CFLAGS += -O0 -g + CFLAGS += -O0 -g else ifeq ($(platform),qnx) CFLAGS += -Os -DNDEBUG else ifeq ($(platform), emscripten) @@ -331,17 +269,17 @@ include $(LIBRETRO_DIR)/Makefile.common OBJECTS := $(SOURCES_C:.c=.o) ifeq ($(LOGSOUND), 1) - LIBRETRO_CFLAGS := -DLOGSOUND + LIBRETRO_CFLAGS := -DLOGSOUND endif DEFINES := -DUSE_LIBTREMOR CFLAGS += $(fpic) $(DEFINES) $(CODE_DEFINES) ifeq ($(FRONTEND_SUPPORTS_RGB565), 1) - # if you have a new frontend that supports RGB565 - BPP_DEFINES = -DUSE_16BPP_RENDERING -DFRONTEND_SUPPORTS_RGB565 + # if you have a new frontend that supports RGB565 + BPP_DEFINES = -DUSE_16BPP_RENDERING -DFRONTEND_SUPPORTS_RGB565 else - BPP_DEFINES = -DUSE_15BPP_RENDERING + BPP_DEFINES = -DUSE_15BPP_RENDERING endif @@ -352,9 +290,9 @@ LIBRETRO_CFLAGS += $(BPP_DEFINES) \ -D__LIBRETRO__ ifeq ($(platform), qnx) - LIBRETRO_CFLAGS += -D__inline__=inline + LIBRETRO_CFLAGS += -D__inline__=inline else - LIBRETRO_CFLAGS += -DINLINE="static inline" + LIBRETRO_CFLAGS += -DINLINE="static inline" endif ifeq ($(platform), theos_ios)