CONFIG_EXE_STATIC?=n ifeq ($(CONFIG_USE_CCACHE),y) #CCACHE_EXE =$(shell [ -x "/usr/bin/ccache" ] && echo "ccache") CCACHE_EXE = $(ROOT_DIR)/tools/ccache endif #Enhance debugging for version build server now (2014/12/26) #Dear Customers, Please do NOT merge it! CROSS_PATH_GCC492 = /pub/tools/package/toolchain/mips-2014.11_4.9.2_01 VENDOR_NAME = s2 ifneq "$(wildcard $(CROSS_PATH_GCC492) )" "" CROSS_PATH = $(CROSS_PATH_GCC492) else ifeq ($(CONFIG_GCC540),y) CROSS_PATH = /pub/tools/package/toolchain/mips-2016.08.1/usr VENDOR_NAME = t1 else ifeq ($(CONFIG_SUPPORT_NEW_AIRPLAY),y) CROSS_PATH = /pub/tools/package/toolchain/mips-2014.05-extra else CROSS_PATH = /pub/tools/package/toolchain/mips-2014.05 endif endif endif CROSS_PREFIX = mipsel-$(VENDOR_NAME)-linux-uclibc- ifeq ($(CONFIG_STATIC_UCLIBC),y) #UCLIBCDIR = $(CROSS_PATH)/mipsel-$(VENDOR_NAME)-linux-uclibc/sysroot UCLIBCDIR = $(ROOT_DIR)/aps/_install else UCLIBCDIR = $(CROSS_PATH)/mipsel-$(VENDOR_NAME)-linux-uclibc/sysroot endif CROSS = $(CCACHE_EXE) $(CROSS_PATH)/bin/$(CROSS_PREFIX) PURECROSS = $(CROSS_PATH)/bin/$(CROSS_PREFIX) OBJCOPY = $(CROSS_PATH)/bin/$(CROSS_PREFIX)objcopy WRNFLAGS := -Wall -Wundef -Wempty-body -Wold-style-declaration -Wclobbered -Wignored-qualifiers -Wsign-compare WRNFLAGS += -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-unused-but-set-parameter #CFLAGS += -mips32r2 -pie -mplt -fPIC -mno-abicalls CFLAGS += -mips32r2 -mplt $(WARNING_CFLAGS) CFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I$(UCLIBCDIR)/usr/include ifeq ($(CONFIG_GCC540),y) CFLAGS += -I$(CROSS_PATH)/include -fgnu89-inline endif ifeq ($(CONFIG_GCOV_APPLICATION),y) CFLAGS += -fprofile-arcs -ftest-coverage LDFLAGS += -fprofile-arcs -ftest-coverage else WRNFLAGS += -Werror endif ifeq ($(CONFIG_BR2_OPTIMIZE_0),y) CFLAGS += -O0 endif ifeq ($(CONFIG_BR2_OPTIMIZE_1),y) CFLAGS += -O1 endif ifeq ($(CONFIG_BR2_OPTIMIZE_2),y) CFLAGS += -O2 endif ifeq ($(CONFIG_BR2_OPTIMIZE_3),y) CFLAGS += -O3 endif ifeq ($(CONFIG_BR2_OPTIMIZE_S),y) CFLAGS += -Os endif ifeq ($(CONFIG_BR2_DEBUG_1),y) CFLAGS += -g1 endif ifeq ($(CONFIG_BR2_DEBUG_2),y) CFLAGS += -g2 endif ifeq ($(CONFIG_BR2_DEBUG_3),y) CFLAGS += -g3 endif ifeq ($(CONFIG_CALL_TRACE),y) CFLAGS += -finstrument-functions endif #reduce code size CFLAGS += -ffunction-sections -fdata-sections LDFLAGS += -Wl,--gc-sections ifeq ($(CONFIG_GCC540),y) ifneq ($(CONFIG_CORE_DUMP),y) CFLAGS += -flto -fuse-linker-plugin -ffat-lto-objects LDFLAGS += -flto -fuse-linker-plugin -ffat-lto-objects endif endif #place uninitialized global variables in the data section, rather than generating them as common blocks CFLAGS += -fno-common ifeq ($(CONFIG_EXE_STATIC),y) LDFLAGS += -static else LDFLAGS += -L$(UCLIBCDIR)/usr/lib -L$(UCLIBCDIR)/lib -lpthread -lm endif #CFLAGS += -fdump-rtl-expand ifeq ($(CONFIG_MEMWATCH), y) CFLAGS += -DMEMWATCH CFLAGS += -DMW_STDIO endif