1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- BUILD_OUT_IMG_DIR ?= $(ROOT_DIR)/out/$(CONFIG_CHIP)/img
- BUILD_OUT_OBJ_DIR ?= $(ROOT_DIR)/out/$(CONFIG_CHIP)/obj
- LD_FLAG = -EL -nostdlib -Wl,--gc-sections -mips32r3
- C_DEF_FLAG =
- C_COMPILE_FLAG = -EL -mips32r3 -mabi=32 -mmt -march=mips32r3 -ffunction-sections -fdata-sections -G0 #mips parameter
- C_COMPILE_FLAG += -Wall -Werror -Wno-unused-variable -Wno-unused-function -Wno-pointer-sign -Wno-format -Wno-unused-but-set-variable -Wno-strict-aliasing -Wno-misleading-indentation #gcc parameter
- C_COMPILE_FLAG += -D__FILENAME__='"$(subst $(dir $<),,$<)"' #self def parameter
- C_COMPILE_FLAG += -fdebug-prefix-map=$(CONFIG_CODE_PATH)/=./
- ifeq ($(CONFIG_HARD_FLOAT),yes)
- C_COMPILE_FLAG += -mhard-float
- LD_FLAG += -mhard-float
- C_DEF_FLAG += -DHV_CONFIG_HARD_FLOAT
- else
- C_COMPILE_FLAG += -msoft-float
- LD_FLAG += -msoft-float
- endif
- ifeq ($(CONFIG_PRINT),yes)
- C_DEF_FLAG += -DHV_CONFIG_ENABLE_PRINT
- endif
- C_DEF_FLAG += -DHV_CONFIG_CHIP_$(shell echo $(CONFIG_CHIP) | tr '[:lower:]' '[:upper:]')
- C_DEF_FLAG += -DHV_CONFIG_ENDIAN_$(shell echo $(CONFIG_ENDIAN) | tr '[:lower:]' '[:upper:]')
- C_DEF_FLAG += -DHV_CONFIG_ARCH_$(shell echo $(CONFIG_ARCH) | tr '[:lower:]' '[:upper:]')
- USER_CONFIG_FILE := $(ROOT_DIR)/user/$(CONFIG_VENDOR)/$(CONFIG_PROJECT)/property.config
- CONFIG_USER_DEFINE := $(shell cat $(USER_CONFIG_FILE) | grep "?=" | awk '{print " -DCONFIG_USER_"$$3}')
- C_DEF_FLAG += $(CONFIG_USER_DEFINE)
- #ASM_COMPILE_FLAG = -EL -mips32r3 -mabi=32 -mmt -march=mips32r3 -ffunction-sections -fdata-sections -G0
- #ASM_COMPILE_FLAG += -Wall -Werror -Wno-unused-variable -Wno-unused-function -Wno-pointer-sign -Wno-format -Wno-unused-but-set-variable -Wno-strict-aliasing -Wno-misleading-indentation
- #ifeq ($(CONFIG_HARD_FLOAT),yes)
- # ASM_COMPILE_FLAG += -mhard-float
- #else
- # ASM_COMPILE_FLAG += -msoft-float
- #endif
- LINK_SCRIPT_DIR ?= $(ROOT_DIR)/build/scripts/ldscript/$(CONFIG_CHIP)
- FILE_INC_CONFIG += -include $(ROOT_DIR)/user/$(CONFIG_VENDOR)/$(CONFIG_PROJECT)/BoardConfig.h
- FILE_INC_CONFIG += -include $(ROOT_DIR)/user/$(CONFIG_VENDOR)/$(CONFIG_PROJECT)/ProjectConfig.h
- FILE_INC_CONFIG += -include $(ROOT_DIR)/user/$(CONFIG_VENDOR)/$(CONFIG_PROJECT)/OSD/OsdConfig.h
- MAKE=make
- CC=mips-mti-elf-gcc
- LD=mips-mti-elf-ld
- AR=mips-mti-elf-ar
- RANLIB=mips-mti-elf-ranlib
- OBJCOPY=mips-mti-elf-objcopy
- OBJDUMP=mips-mti-elf-objdump
- GDB=mips-mti-elf-gdb
- ifeq ($(COMPILE_MODE),release)
- C_COMPILE_FLAG += -O2
- #ASM_COMPILE_FLAG += -O0
- C_DEF_FLAG += -DRELEASE_VERSION
- HEADER=@
- endif
- ifeq ($(COMPILE_MODE),debug)
- C_COMPILE_FLAG += -g -O2
- #ASM_COMPILE_FLAG += -g
- C_DEF_FLAG += -DHV_SCALER_DEBUG_VERSION
- C_DEF_FLAG += -DCOMPILE_USERNAME=\"$(shell whoami)\"
- C_DEF_FLAG += -DCOMPILE_HOSTNAME=\"$(shell hostname)\"
- HEADER=@
- endif
- ASM_DEF_FLAG = $(C_DEF_FLAG)
- ASM_COMPILE_FLAG=$(C_COMPILE_FLAG)
- #@if [ $(COMPILE_MODE) = "release" ] ; then echo "$1" ; else echo ""; fi;
- define ASM_COMPILE_RULE
- $(HEADER)$(CC) $(INCLUDES) $(ASM_COMPILE_FLAG) $(ASM_DEF_FLAG) $(FILE_INC_CONFIG) -o $(BUILD_OUT_OBJ_DIR)/$1 -c $2
- @if [ $(COMPILE_MODE) = "release" ] ; then echo "$1" ; fi;
- @if [ $(COMPILE_MODE) = "debug" ] ; then echo "$1" ; fi;
- endef
- define C_COMPILE_RULE
- $(HEADER)$(CC) $(INCLUDES) $(C_COMPILE_FLAG) $(C_DEF_FLAG) $(FILE_INC_CONFIG) -o $(BUILD_OUT_OBJ_DIR)/$1 -c $2
- @if [ $(COMPILE_MODE) = "release" ] ; then echo "$1" ; fi;
- @if [ $(COMPILE_MODE) = "debug" ] ; then echo "$1" ; fi;
- endef
- %.o : %.S
- $(call ASM_COMPILE_RULE,$@,$<)
- %.o : %.c
- $(call C_COMPILE_RULE,$@,$<)
|