📄 makefile
字号:
# Makefile - make rules for target/config/ixdp425## Copyright 2003 Wind River Systems, Inc.## modification history# --------------------# 01l,19oct04,m_h build with local CSR_BASE# 01k,23jul03,m_h Access Library name change# 01j,21jul03,m_h LIB_EXTRA += not =# 01i,18jul03,m_h CSR_BASE hard coded for win project# 01h,02jul03,m_h little endian support# 01g,07apr03,m_h comment is out of place# 01f,07apr03,m_h enable ixEth, error if no CSR_BASE# 01e,04apr03,m_h Optimization, local FEI, ixOsBufLib.o# 01d,19nov02,jb3 Fixed doc build failure w/o intel library# 01c,13nov02,jb3 SPR 84009# 01b,22oct02,jb Setting RAM_HIGH to config.h value# 01a,05sep02,jb3 Merge in changes from w/ t2.1 ongiong development# 01j,22aug02,jb Adjust hex file vma offset# 01i,20aug02,jb Moving RAM_LOW# 01h,19aug02,jb Removing unneeded entries# ---,01feb02,xxx Update for T2.2 (bspCnvtT2_2.tcl)# 01g,31jul02,jb Adding files to doc list# 01f,26jun02,jb Adding ixp425 End support# 01e,26jun02,jb Adding hex files to RELEASE build# 01d,25jun02,jb Adding to RELEASE# 01c,14jun02,jb Removing fei include# 01b,12jun02,jb Continuing restructure# 01a,10jun02,jb Removing POSTBUILD Rule## DESCRIPTION# This file contains rules for building vxWorks for the IXP425.##*/# BSP flavor setup, e.g. endianinclude make.ixp#CSR_BASE must be defined here for windows project builds.# For command line builds or solaris project builds # this is optional since it can be defined in the# user's environment#CSR_BASE = c:/AccLibTGT_DIR = $(WIND_BASE)/targetCSR_BASE = D:/acclib-1-5/ixp400_xscale_swLOCAL_CSR_BASE = $(CSR_BASE)#Lets look around for a valid CSR_BASE or csr_base directoryifeq ($(LOCAL_CSR_BASE),)IXDP425_CSR = $(wildcard $(TGT_DIR)/config/ixdp425/csr_base)ifneq ($(IXDP425_CSR),)CSR_BASE = $(IXDP425_CSR)else#abort with error messageEXTRA_DEFINE += -DDISPLAY_CSR_BASE_ERRORendifendif# IX_TARGET will be "vxle" or "vxbe" depending on endiannessIXP425LIB_BASE = $(CSR_BASE)/lib/$(IX_TARGET)IXP425LIB = $(IXP425LIB_BASE)/libIxp425.a CPU = XSCALEifeq ($(IX_TARGET),vxle)TOOL = gnuelseTOOL = gnubeendifIX_TARGET_OS := vxWorksOSAL_DIR := $(CSR_BASE)/../ixp_osal# BY default using OSAL EXTRA_DEFINE += -DINCLUDE_IXP400_OSAL=1EXTRA_DEFINE += -I$(OSAL_DIR)/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/modules/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/modules/ioMem/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/modules/core/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/modules/bufferMgt/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/core/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/platforms/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/platforms/ixp400/ \ -I$(OSAL_DIR)/os/$(IX_TARGET_OS)/include/core/ \ -I$(OSAL_DIR)/include/ \ -I$(OSAL_DIR)/include/modules/ \ -I$(OSAL_DIR)/include/modules/bufferMgt/ \ -I$(OSAL_DIR)/include/modules/ioMem/ \ -I$(OSAL_DIR)/include/modules/core/ \ -I$(OSAL_DIR)/include/platforms/ \ -I$(OSAL_DIR)/include/platforms/ixp400/ \ EXTRA_DEFINE += -I$(CSR_BASE)/src/include -I$(CSR_BASE)/srcEXTRA_DEFINE += -DCPU_XSCALE \ -DARMMMU=ARMMMU_XSCALE -DARMCACHE=ARMCACHE_XSCALE \ -D__vxworks ifeq ($(findstring gnu,$(TOOL)),gnu)## gnu compiler## uncomment this line for extra optimization when NOT building bootroms##EXTRA_DEFINE += -O3 -fomit-frame-pointer -funroll-loopselse## diab compiler# Be careful with spaces: they can mess up dependancy generationEXTRA_DEFINE += -DIX_OSAL_INLINE=__inline__ "-DIX_OSAL_INLINE_EXTERN=__inline__ extern" -Xtest-at-topifeq ($(IX_TARGET),vxle)## TOOL=diableEXTRA_DEFINE += -D__ARMEL__else## TOOL=diabbeEXTRA_DEFINE += -D__ARMEB__endif### uncomment for diab debugging #####EXTRA_DEFINE += -g -Xkill-opt=0x400000endif## Note: To get listing from .s files add -Wa,-a to cflags.ifeq ($(IX_TARGET),vxle)# The following should be removed if _NOT_ running in PCI LE data coherent modeEXTRA_DEFINE += -DVXWORKS_DATA_COHERENTelseBE_FLAG1 = -mbig-endianBE_FLAG2 = -X -EBendifinclude $(TGT_DIR)/h/make/defs.bsp#include $(TGT_DIR)/h/make/make.$(CPU)$(TOOL)#include $(TGT_DIR)/h/make/defs.$(WIND_HOST_TYPE)## Only redefine make definitions below this point, or your definitions will## be overwritten by the makefile stubs above.SWAP = $(TGT_DIR)/config/$(TARGET_DIR)/swapbytes_$(WIND_HOST_TYPE)# To include flashUtils in non compressed portion of image. flashUtils is# used to program the bootrom into flash through software. This should not# be included in the final release of the BSP.BOOT_EXTRA = flashUtils.oVENDOR = Intelifeq ($(IX_TARGET),vxle)TARGET_DIR = ixdp425_leBOARD = IXP425_Ixdp425_Board_LEelseTARGET_DIR = ixdp425BOARD = IXP425_Ixdp425_Board_BEendif# Specify the targets to be built by "make release"; after these targets are# built, the target bsp2prj is built as well.RELEASE += bootrom.hex ## The constants ROM_TEXT_ADRS, ROM_SIZE, and RAM_HIGH_ADRS are defined# in config.h, MakeSkel, Makefile, and Makefile.*# All definitions for these constants must be identical.## Boot from EPROMROM_BASE_ADRS = 50000000 # base address of EPROMROM_TEXT_ADRS = 50001000 # code start addr in EPROMROM_SIZE = 01000000 # size of EPROM , 16 meg for now.RAM_LOW_ADRS = 00010000 # RAM text/data addressRAM_HIGH_ADRS = 02000000 # RAM text/data address.# relocate the rom image to offset by ROM_TEXT_ADRS - RAM_LOW_ADRS#HEX_FLAGS = -v --adjust-vma 0X4FFFF000#VMA_FLAGS = -O srec --set-start=$(VMA_START)# Uncomment these two lines to build with onboard ethernet engines.MACH_EXTRA = ixEthAccSysEnd.o ixEthAccEnd.o ixOsBufLib.oLIB_EXTRA += $(IXP425LIB_BASE)/libIxp425.a# These may not be needed after Tor 2.2 cumulative patch 1# also endLib.h should be removed from the directory if these are removedMACH_EXTRA += endNetBufLib.o fei82557End.oDOC_FILES = sysLib sysEnd \ ixp425Eeprom ixp425Gpio ixp425I2c ixp425IntrCtl \ ixp425Pci ixp425PciConfigLib ixp425PciConfigShow \ ixp425PciDma ixp425PciIntLib ixp425Sio \ ixEthAccEnd ixEthAccSysEnd \ ixp425Timer ####################################################### END SECTION####################################################### Only redefine make definitions above this point, or the expansion of## makefile target dependencies may be incorrect.include $(TGT_DIR)/h/make/rules.bsp#include $(TGT_DIR)/h/make/rules.$(WIND_HOST_TYPE)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -