X-Git-Url: http://ecere.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=default.cf;h=aa3d8aa33f7485e4840b8a57a731fea3f6c44d84;hb=refs%2Fheads%2Fshaders;hp=5255e50c72b04a3acfb7bd83f675a3f98750e74a;hpb=f0840715d12408c7ecb03aacce422c7d485da274;p=sdk diff --git a/default.cf b/default.cf index 5255e50..aa3d8aa 100644 --- a/default.cf +++ b/default.cf @@ -1,29 +1,63 @@ -EC_BINS := $(_CF_DIR)$(if $(USE_BOOTSTRAP),compiler/bootstrap/obj/bin.$(HOST_PLATFORM)/,obj/$(HOST_PLATFORM)/bin/) +EC_BINS := $(_CF_DIR)$(if $(USE_BOOTSTRAP),compiler/bootstrap/obj/bin.$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/,obj/$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/) + +ifdef WINDOWS_HOST + # Auto-Select MinGW-w64 when asking for 64 bit + ifeq ($(ARCH),x64) + GCC_PREFIX=x86_64-w64-mingw32- + endif +endif + +# EXTENSIONS +OUT := $(if $(STATIC_LIBRARY_TARGET),$(A),$(if $(SHARED_LIBRARY_TARGET),$(SO)$(VER),$(if $(EXECUTABLE_TARGET),$(E),.x))) # TOOLCHAIN -export CC = $(CCACHE_COMPILE)$(DISTCC_COMPILE)$(GCC_PREFIX)gcc$(_SYSROOT) +export CC = $(CCACHE_COMPILE)$(DISTCC_COMPILE)$(GCC_PREFIX)gcc$(_SYSROOT)$(if $(GCC_CC_FLAGS),$(space)$(GCC_CC_FLAGS),) export CPP = $(CCACHE_COMPILE)$(DISTCC_COMPILE)$(GCC_PREFIX)gcc$(_SYSROOT) export AS = $(GCC_PREFIX)as export LD = $(GCC_PREFIX)ld export AR = $(GCC_PREFIX)ar export STRIP = $(GCC_PREFIX)strip -export ECP := $(call psep,$(EC_BINS)ecp$(HOST_E)) -export ECC := $(call psep,$(EC_BINS)ecc$(HOST_E))$(if $(CROSS_TARGET), -t $(TARGET_PLATFORM),) -export ECS := $(call psep,$(EC_BINS)ecs$(HOST_E))$(if $(CROSS_TARGET), -t $(TARGET_PLATFORM),) -export EAR := $(call psep,$(_CF_DIR)obj/$(HOST_PLATFORM)/bin/ear$(HOST_E)) +export ECP := $(call sys_path,$(EC_BINS)ecp$(HOST_E))$(if $(GCC_FLAGS),$(space)$(GCC_FLAGS),) +export ECC := $(call sys_path,$(EC_BINS)ecc$(HOST_E))$(if $(CROSS_TARGET), -t $(TARGET_PLATFORM),)$(if $(GCC_FLAGS),$(space)$(GCC_FLAGS),) +export ECS := $(call sys_path,$(EC_BINS)ecs$(HOST_E))$(if $(CROSS_TARGET), -t $(TARGET_PLATFORM),)$(if $(OUTPUT_POT), -outputpot,)$(if $(DISABLED_POOLING), -disabled-pooling,) +export EAR := $(call sys_path,$(_CF_DIR)obj/$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/bin/ear$(HOST_E)) +ifdef WINDOWS_TARGET +WINDRES := $(GCC_PREFIX)windres + ifdef ARCH + ifeq ($(ARCH),x32) +WINDRES_FLAGS := -F pe-i386 + else + ifeq ($(ARCH),x64) +WINDRES_FLAGS := -F pe-x86-64 + endif + endif + endif +endif UPX := upx -ifndef WINDOWS_HOST -export LD_LIBRARY_PATH = $(_CF_DIR)obj/$(HOST_PLATFORM)/lib/ -export DYLD_LIBRARY_PATH = $(_CF_DIR)obj/$(HOST_PLATFORM)/lib/ +ifndef ARCH +TARGET_ARCH :=$(shell $(CC) -dumpmachine) + ifdef WINDOWS_TARGET + ifneq ($(filter x86_64%,$(TARGET_ARCH)),) + TARGET_ARCH := x86_64 + else + TARGET_ARCH := i386 + endif + else + ifdef LINUX_TARGET + ifneq ($(filter x86_64-pc-linux-gnu,$(TARGET_ARCH)),) # Fix for PREFIXLIBDIR / DEB_HOST_MULTIARCH with Clang on Debian + TARGET_ARCH := x86_64-linux-gnu + endif + ifneq ($(filter i586-linux-gnu,$(TARGET_ARCH)),) + TARGET_ARCH := i386-linux-gnu + endif + endif + endif endif -ifeq "$(HOST_ARCH)" "ARM" -FORCE_64_BIT = -FORCE_32_BIT = -else -FORCE_64_BIT = -m64 -FORCE_32_BIT = -m32 +ifndef WINDOWS_HOST +export LD_LIBRARY_PATH = $(_CF_DIR)obj/$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/ +export DYLD_LIBRARY_PATH = $(_CF_DIR)obj/$(HOST_PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/lib/ endif # HARD CODED PLATFORM-SPECIFIC OPTIONS @@ -38,6 +72,8 @@ endif ifdef OSX_TARGET CFLAGS += -I$(SYSROOT)/usr/include/ffi +else +# OFLAGS += -L/usr/lib/$(TARGET_ARCH)/ec endif OFLAGS += $(LDFLAGS) @@ -46,6 +82,19 @@ OFLAGS += $(LDFLAGS) UPXFLAGS = -9 -q +ifdef ARCH_FLAGS +CFLAGS += $(ARCH_FLAGS) +OFLAGS += $(ARCH_FLAGS) +endif + CFLAGS += -fmessage-length=0 EARFLAGS = q + +ifdef DISABLE_GL +CFLAGS += -DECERE_NOGL +endif + +ifndef ENABLE_SSL +CFLAGS += -DECERE_NOSSL +endif