diff --git a/Makefile b/Makefile index c62fee2..49b0e98 100644 --- a/Makefile +++ b/Makefile @@ -49,8 +49,8 @@ unixpath = $(subst \,/,$1) unixcygpath = /$(subst :,,$(call unixpath,$1)) ifneq (,$(findstring unix,$(platform))) - AR = ${CC_PREFIX}ar - CC = ${CC_PREFIX}gcc + AR ?= ${CC_PREFIX}ar + CC ?= ${CC_PREFIX}gcc TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC @@ -138,8 +138,8 @@ else ifeq ($(platform), classic_armv7_a7) # ARM else ifneq (,$(findstring armv,$(platform))) - AR = ${CC_PREFIX}ar - CC = ${CC_PREFIX}gcc + AR ?= ${CC_PREFIX}ar + CC ?= ${CC_PREFIX}gcc TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC @@ -181,9 +181,9 @@ ifeq ($(IOSSDK),) IOSSDK := $(shell xcodebuild -version -sdk iphoneos Path) endif ifeq ($(platform),ios-arm64) - CC = cc -arch arm64 -isysroot $(IOSSDK) -stdlib=libc++ + CC ?= cc -arch arm64 -isysroot $(IOSSDK) -stdlib=libc++ else - CC = cc -arch armv7 -isysroot $(IOSSDK) + CC ?= cc -arch armv7 -isysroot $(IOSSDK) endif ifeq ($(platform),$(filter $(platform),ios9 ios-arm64)) MINVERSION = -miphoneos-version-min=8.0 @@ -216,18 +216,18 @@ else ifeq ($(platform), qnx) TARGET := $(TARGET_NAME)_libretro_$(platform).so fpic := -fPIC SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T - CC = qcc -Vgcc_ntoarmv7le + CC ?= qcc -Vgcc_ntoarmv7le else ifeq ($(platform), ps3) TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe - AR = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe + CC ?= $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe + AR ?= $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe STATIC_LINKING = 1 FLAGS += -DMSB_FIRST -D__CELLOS_LV2__ OLD_GCC = 1 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 + CC ?= $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe + AR ?= $(CELL_SDK)/host-win32/sn/bin/ps3snarl.exe STATIC_LINKING = 1 FLAGS += -DMSB_FIRST NO_GCC = 1 @@ -235,25 +235,25 @@ else ifeq ($(platform), sncps3) # PSP1 else ifeq ($(platform), psp1) TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = psp-gcc$(EXE_EXT) - AR = psp-ar$(EXE_EXT) + CC ?= psp-gcc$(EXE_EXT) + AR ?= psp-ar$(EXE_EXT) STATIC_LINKING = 1 FLAGS += -G0 # 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) + CC ?= arm-vita-eabi-gcc$(EXE_EXT) + AR ?= arm-vita-eabi-ar$(EXE_EXT) STATIC_LINKING = 1 FLAGS += -DVITA # CTR (3DS) else ifeq ($(platform), ctr) TARGET := $(TARGET_NAME)_libretro_$(platform).a - CC = $(DEVKITARM)/bin/arm-none-eabi-gcc$(EXE_EXT) - CXX = $(DEVKITARM)/bin/arm-none-eabi-g++$(EXE_EXT) - AR = $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT) + CC ?= $(DEVKITARM)/bin/arm-none-eabi-gcc$(EXE_EXT) + CXX ?=$(DEVKITARM)/bin/arm-none-eabi-g++$(EXE_EXT) + AR ?= $(DEVKITARM)/bin/arm-none-eabi-ar$(EXE_EXT) FLAGS += -march=armv6k -mtune=mpcore -mfloat-abi=hard FLAGS += -Wall -mword-relocations FLAGS += -fomit-frame-pointer -ffast-math @@ -311,8 +311,8 @@ else ifeq ($(platform), emscripten) # Windows MSVC 2003 Xbox 1 else ifeq ($(platform), xbox1_msvc2003) TARGET := $(TARGET_NAME)_libretro_xdk1.lib -CC = CL.exe -LD = lib.exe +CC ?= CL.exe +LD ?= lib.exe export INCLUDE := $(XDK)/xbox/include export LIB := $(XDK)/xbox/lib @@ -325,8 +325,8 @@ HAS_GCC := 0 else ifeq ($(platform), xbox360_msvc2010) TARGET := $(TARGET_NAME)_libretro_xdk360.lib MSVCBINDIRPREFIX = $(XEDK)/bin/win32 -CC = "$(MSVCBINDIRPREFIX)/cl.exe" -LD = "$(MSVCBINDIRPREFIX)/lib.exe" +CC ?= "$(MSVCBINDIRPREFIX)/cl.exe" +LD ?= "$(MSVCBINDIRPREFIX)/lib.exe" export INCLUDE := $(XEDK)/include/xbox export LIB := $(XEDK)/lib/xbox @@ -461,9 +461,9 @@ else ifneq (,$(findstring windows_msvc2017,$(platform))) TargetArchMoniker = $(subst $(WinPartition)_,,$(PlatformSuffix)) - CC = cl.exe - CXX = cl.exe - LD = link.exe + CC ?= cl.exe + CXX ?= cl.exe + LD ?= link.exe reg_query = $(call filter_out2,$(subst $2,,$(shell reg query "$2" -v "$1" 2>nul))) fix_path = $(subst $(SPACE),\ ,$(subst \,/,$1)) @@ -617,7 +617,7 @@ ifeq ($(STATIC_LINKING),1) LD ?= lib.exe STATIC_LINKING=0 else - LD = link.exe + LD ?= link.exe endif else LD = $(CC)