⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gsm2.mak

📁 MTK分布式编译需要修改的文件。配合incredibuild3就可以使用了。
💻 MAK
📖 第 1 页 / 共 5 页
字号:
	TST_GEN_DEP_OUTS  		= $(strip $(TST_DB))\BPLGUInfoCustomAppSrc
	COMP_TRACE_DEFS			= $(EXISTED_CUS_REL_TRACE_DEFS)
	COMP_TRACE_DEFS			+= $(NEW_CUS_REL_TRACE_DEFS)
	PTR_GEN_OUTS  				= $(patsubst %.h,%.ptr, $(notdir $(subst \,/,$(COMP_TRACE_DEFS))))
	TST_GEN_DEP_STP3_SRCS  	= $(strip $(TST_DB))\BPLGUInfoCustomAppSrc  $(PTR_GEN_OUTS)
	TST_GEN_DEP_STP3_OUTS  	= $(strip $(TST_DB))\$(strip $(BPLGUINFOCUSTOMSRCP))

endif

# Concat module's local preprocessor definition
COMPDEFS          = __NULL_DEF__
COMPDEFS += $(foreach COMP,$(COMPLIST),$(shell type make\$(COMP)\$(COMP).def))
#$(warning [$(COMPDEFS)])

# -----------------------------
# Macros definition
# -----------------------------
PURELNKOPT     = $(strip $(LNKOPT))

ifeq ($(strip $(COMPILER)),RVCT)
  LNKOPT       += --largeregions --scatter $(SCATTERFILE) --output $(strip $(TARGDIR))\$(TARGNAME).elf \
						--symdefs $(strip $(TARGDIR))\$(TARGNAME).sym \
						--list $(strip $(TARGDIR))\$(TARGNAME).lis \
						--libpath $(DIR_ARMLIB)

ifeq ($(strip $(SECURE_SUPPORT)),TRUE)
  LNKOPT       += --keep g_secinfo_tail \
						--keep g_SEC_RO \
						--keep g_FlashToolCfg \
						--keep g_SecureMAC_Size \
						--keep g_SecureMAC
endif

ifeq ($(strip $(CUST_PARA_SUPPORT)),TRUE)
  LNKOPT       += --keep g_CustParaCfg \
                  --keep g_CustParaCfg_Tail
endif

ifeq ($(strip $(NAND_FLASH_BOOTING)),TRUE)
  LNKOPT       += --keep g_enfb_3rdrom_header
endif

endif

ifeq ($(strip $(COMPILER)),ADS)
  LNKOPT       += -scatter $(SCATTERFILE) -output $(strip $(TARGDIR))\$(TARGNAME).elf \
						-symdefs $(strip $(TARGDIR))\$(TARGNAME).sym \
						-list $(strip $(TARGDIR))\$(TARGNAME).lis \
						-libpath $(DIR_ARMLIB)

ifeq ($(strip $(SECURE_SUPPORT)),TRUE)
  LNKOPT       += -keep g_secinfo_tail \
						-keep g_SEC_RO \
						-keep g_FlashToolCfg \
						-keep g_SecureMAC_Size \
						-keep g_SecureMAC
endif

ifeq ($(strip $(CUST_PARA_SUPPORT)),TRUE)
  LNKOPT       += -keep g_CustParaCfg \
                  -keep g_CustParaCfg_Tail
endif

ifeq ($(strip $(NAND_FLASH_BOOTING)),TRUE)
  LNKOPT       += -keep g_enfb_3rdrom_header
endif

endif


# *************************************************************************
#  Target Definitions
# *************************************************************************

ifeq ($(strip $(CUSTOM_RELEASE)),TRUE)

  ifneq ($(findstring init,$(COMPLIST)),)
		INITLIB        =  $(strip $(COMPLIBDIR))\init.lib
  else
		INITLIB        =  $(CUS_MTK_LIB)\init.lib
  endif

ifeq  ($(strip $(call Upper,$(PROJECT))),UMTS)

  ifneq ($(findstring init_ma,$(COMPLIST)),)
		INITLIB        =  $(strip $(COMPLIBDIR))\init_ma.lib
  else
		INITLIB        =  $(CUS_MTK_LIB)\init_ma.lib
  endif

endif

  MTK_LIBS       =  $(foreach COMP,$(CUS_REL_HDR_COMP),$(CUS_MTK_LIB)\$(COMP).lib)
  
  ifdef GEMINI
    ifeq ($(strip $(GEMINI)),TRUE)
      CUS_REL_MTK_COMP := $(subst drv_sec,,$(CUS_REL_MTK_COMP))
      ifneq ($(findstring __DRV_DUAL_SIM_INVERSE__,$(CUSTOM_OPTION)),)
        MTK_LIBS += $(CUS_MTK_LIB)\DRV_DUAL_SIM_INVERSE_ON\drv_sec.lib
      else
        MTK_LIBS += $(CUS_MTK_LIB)\DRV_DUAL_SIM_INVERSE_OFF\drv_sec.lib
      endif
    endif
  endif
  
	MTK_LIBS       += $(foreach COMP,$(CUS_REL_MTK_COMP),$(CUS_MTK_LIB)\$(COMP).lib)
else

  ifneq ($(findstring init,$(COMPLIST)),)
	  INITLIB        =  $(strip $(COMPLIBDIR))\init.lib
  endif
  ifneq ($(findstring init_ma,$(COMPLIST)),)
	  INITLIB        =  $(strip $(COMPLIBDIR))\init_ma.lib
  endif
	MTK_LIBS       =

endif



ifeq ($(call Upper,$(PROJECT)),L1S)
	ifeq ($(strip $(CUSTOM_RELEASE)),FALSE)
	CODEGEN_RESULT = $(strip $(TST_DB))\l1validation_db\BPLVInfo
	endif
else

	ifeq ($(strip $(SPLIT_SYSTEM)),TRUE)
		CODEGEN_RESULT = $(strip $(TST_DB))\BPLGUSplitInfo
	else

		ifeq ($(strip $(CUSTOM_RELEASE)),TRUE)
			CODEGEN_RESULT = $(strip $(TST_GEN_DEP_STP3_OUTS))		# used to control which steps will be available in custom release
		else
			CODEGEN_RESULT = $(strip $(TST_DB))\$(strip $(BPLGUINFOCUSTOM))
		endif
	endif
endif


ifeq ($(strip $(CUSTOM_RELEASE)),FALSE)
   ifneq ($(call Upper,$(strip $(PROJECT))),BASIC)
      NEED_RM_TSTDB = TRUE
   endif
else
	NEED_RM_TSTDB = FALSE
endif


L1TRACE_DB_DIR  =  $(strip $(TST_DB))\l1trace_db
L1VAL_DB_DIR    =  $(strip $(TST_DB))\l1validation_db
PSTRACE_DB_DIR  =  $(strip $(TST_DB))\pstrace_db
GV_DB_DIR       =  $(strip $(TST_DB))\gv

TMD_GEN_C_H_FILES = $(foreach tmd_file,$(TMD_FILES), $(basename $(tmd_file)).c $(strip $(TSTDIR))\include\$(notdir $(basename $(tmd_file)).h))

GV_FILES			 = $(shell dir $(strip $(TST_DB))\gv\*.gv /s/b)
#$(error [$(GV_FILES)])

ifeq ($(call Upper,$(PROJECT)),L1S)
	L1V_FILES	 = $(shell dir $(strip $(TST_DB))\l1validation_db\*.l1v /s/b)
#$(error [$(L1V_FILES)])
endif


ifeq ($(strip $(DO_UPDATE_MODULE)),TRUE)
   ifeq ($(findstring verno,$(UPDATE_MODS)),)
      UPDATE_MODS := $(UPDATE_MODS) verno
   endif
   COMPLIBLIST = $(foreach comp,$(UPDATE_MODS),$(comp).lib)
else
	ifeq ($(strip $(DO_REMAKE_MODULE)),TRUE)
           ifeq ($(findstring verno,$(REMAKE_MODS)),)
              REMAKE_MODS := $(REMAKE_MODS) verno
           endif
   	COMPLIBLIST = $(foreach comp,$(REMAKE_MODS),$(comp).lib)
	else
		COMPLIBLIST = $(call sort,$(foreach comp,$(COMPLIST),$(comp).lib))
	endif
endif

# either drmadp.lib or custom.lib will run custominfo.pl
# but some project may not have to compile drmadp.lib, so put drmadp.lib first
ifneq ($(findstring drmadp.lib,$(COMPLIBLIST)),)
	CUSTOM_EXIST   =  TRUE
else
	CUSTOM_EXIST   =  FALSE
endif

ifneq ($(findstring custom.lib,$(COMPLIBLIST)),)
	CUSTOM_EXIST   =  TRUE
else
	CUSTOM_EXIST   =  FALSE
endif

# Do component module name parsing according to different project combination
# For example, in classb solution, l1 -> l1_classb instead l1,
# but l1_classb should be accepted, too.
ifeq ($(NEED_TRANS_CLASSB),TRUE)
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out l1.lib,$(comp)),$(comp),l1_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out rr.lib,$(comp)),$(comp),rr_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out mm.lib,$(comp)),$(comp),mm_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out l4.lib,$(comp)),$(comp),l4_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out peer.lib,$(comp)),$(comp),peer_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out interface.lib,$(comp)),$(comp),interface_classb.lib))
endif
ifeq ($(NEED_TRANS_UMTS),TRUE)
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out l1.lib,$(comp)),$(comp),l1_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out rr.lib,$(comp)),$(comp),rr_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out mm.lib,$(comp)),$(comp),mm_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out l1_classb.lib,$(comp)),$(comp),l1_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out rr_classb.lib,$(comp)),$(comp),rr_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out mm_classb.lib,$(comp)),$(comp),mm_classb_umts.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out l4.lib,$(comp)),$(comp),l4_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out peer.lib,$(comp)),$(comp),peer_classb.lib))
	COMPLIBLIST := $(foreach comp,$(COMPLIBLIST),$(if $(filter-out interface.lib,$(comp)),$(comp),interface_classb.lib))
endif

#$(warning COMPLIBLIST = $(COMPLIBLIST))

ifneq ($(strip $(call Upper,$(REMAKE_MODS))),BOOTLOADER)
ifneq ($(strip $(call Upper,$(REMAKE_MODS))),FOTA)
   CHK_COMPLIST = $(foreach comp,$(COMPLIBLIST),$(if $(findstring "$(comp)",$(foreach word,$(COMPLIST),"$(word).lib")),,$(comp) ))
   ifneq ($(words $(CHK_COMPLIST)),0)
      ifeq ($(strip $(CUSTOM_RELEASE)),TRUE)
         $(error $(foreach comp,$(CHK_COMPLIST),"$(comp)") NOT in CUS_REL_SRC_COMP or NOT in CUS_REL_PAR_SRC_COMP)
      else
         $(error $(foreach comp,$(CHK_COMPLIST),"$(comp)") NOT in COMPLIST)
      endif
   endif
endif
endif

ifeq ($(strip $(DO_UPDATE_MODULE)),TRUE)
   COMPSCANLIST = $(UPDATE_MODS)
else
	COMPSCANLIST = $(COMPLIST)
endif

ifdef COMPLIST
COM_DEF_PATH = $(foreach mod,$(COMPLIST), \
    $(if $($(mod)),$(FIXPATH)\make\$($(mod))\$($(mod)).def,$(FIXPATH)\make\$(mod)\$(mod).def))
endif

# Do component module name parsing according to different project combination
# For example, in classb solution, l1 -> l1_classb instead l1,
# but l1_classb should be accepted, too.
ifeq ($(NEED_TRANS_CLASSB),TRUE)
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out l1,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out rr,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out mm,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out l4,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out peer,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out interface,$(comp)),$(comp),$(comp)_classb))
endif
#$(warning COMPSCANLIST = $(COMPSCANLIST))
ifeq ($(NEED_TRANS_UMTS),TRUE)
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out l1,$(comp)),$(comp),$(comp)_classb_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out rr,$(comp)),$(comp),$(comp)_classb_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out mm,$(comp)),$(comp),$(comp)_classb_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out l1_classb,$(comp)),$(comp),$(comp)_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out rr_classb,$(comp)),$(comp),$(comp)_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out mm_classb,$(comp)),$(comp),$(comp)_umts))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out l4,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out peer,$(comp)),$(comp),$(comp)_classb))
	COMPSCANLIST := $(foreach comp,$(COMPSCANLIST),$(if $(filter-out interface,$(comp)),$(comp),$(comp)_classb))
endif

COMP_DEP_LIST = $(foreach comp,$(COMPSCANLIST),$(comp).dep)

# copy mmi_features_switch.h & CustMiscData.c will be used when CUSTOM_RELEASE == FALSE
# 1. MMI_VERSION != (PLUTO_MMI | NEPTUNE_MMI) ............................. MP is in our site     => CUSTOMER_MMI
# 2. MMI_VERSION == (PLUTO_MMI | NEPTUNE_MMI) & EMPTY_RESOURCE == TRUE .... MP is NOT in our site => CUSTOMER_MMI
# 3. MMI_VERSION == (PLUTO_MMI | NEPTUNE_MMI) & EMPTY_RESOURCE == FALSE ... MTK internal          => PLUTO_MMI or NEPTUNE_MMI
# copy mmi_features_switch.h & CustMiscData.c will be used when CUSTOM_RELEASE == TRUE
# 4. MMI_VERSION != (PLUTO_MMI | NEPTUNE_MMI) ............................. MP is in our site     => CUSTOMER_MMI
# 5. MMI_VERSION == (PLUTO_MMI | NEPTUNE_MMI) & EMPTY_RESOURCE == TRUE .... MP is NOT in our site => PLUTO_MMI or NEPTUNE_MMI
ifeq ($(strip $(CUSTOM_RELEASE)),FALSE)
   NEED_COPY_MMIFEATURE = CUSTOMER_MMI

   ifeq ($(strip $(MMI_VERSION)),PLUTO_MMI)
		NEED_COPY_MMIFEATURE = PLUTO_MMI

      ifdef EMPTY_RESOURCE
	      ifeq ($(strip $(EMPTY_RESOURCE)),TRUE)
				NEED_COPY_MMIFEATURE = CUSTOMER_MMI
		   endif
		endif
	else
		ifeq ($(strip $(MMI_VERSION)),NEPTUNE_MMI)
			NEED_COPY_MMIFEATURE = NEPTUNE_MMI

         ifdef EMPTY_RESOURCE
	         ifeq ($(strip $(EMPTY_RESOURCE)),TRUE)
				   NEED_COPY_MMIFEATURE = CUSTOMER_MMI
		      endif
		   endif
		endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -