181 lines
6.2 KiB
Plaintext
181 lines
6.2 KiB
Plaintext
# defs.unix - standard unix host specific makefile
|
|
#
|
|
# Copyright 1995-2007, Wind River Systems.
|
|
#
|
|
# modification history
|
|
# --------------------
|
|
# 02s,08oct08,pee WIND00137789.
|
|
# 02r,30apr08,pee vsb tuning.
|
|
# 02q,11mar08,pee vsb
|
|
# 02p,08mar07,pee added support for generic option framework
|
|
# 02o,06sep05,h_k added USRENTRY. (SPR #111954)
|
|
# 02n,09may05,j_c merging 02l and 02m changes from the 2 branches
|
|
# 02m,22apr05,h_a Redoing a LIB_ROOT change that was erratically undone
|
|
# 02m,19apr05,tpw Adjust to new docs location as of WB18
|
|
# 02l,18Apr05,pee Added support for precomp objects
|
|
# 02l,07apr05,h_a Definition of LIB_ROOT for externel lib targets
|
|
# 02l,07apr05,h_a LIB_ROOT to replace $(TGT_DIR)/lib for building components
|
|
# 02k,02sep04,c_c Modified tclsh location.
|
|
# 02j,07jul04,c_c Removed usage of romfs_image.h.
|
|
# 02i,15jul04,kab SPR 99488: requires /bin/echo
|
|
# 02h,26may04,dgp remove references to refgen.tcl
|
|
# 02g,26apr04,f_b Removed absolute path to objcopy to prepare for new
|
|
# directory structure and align with how nm & size are found
|
|
# 02f,20feb04,c_c Avoid eror message if no file is given to sed.
|
|
# 02e,09feb04,fle Adapted to new host utilities locations
|
|
# 02d,12jan04,pad Now call directly makeSymTbl.tcl instead of the Unix and
|
|
# Windows wrapper files (SPR #92936).
|
|
# 02c,01dec03,c_c Added macros for postprocessing dependencies.
|
|
# 02b,26nov03,bpn Fixed DIRCHAR macro.
|
|
# 02a,07nov03,c_c Unified build rules with WIN32 hosts.
|
|
# 01z,09oct03,md make ROMFS location resident in project root
|
|
# 01y,02jul03,md added ROMFS variables
|
|
# 01x,17apr02,jab added NULL_DEVICE make variable
|
|
# 01w,14dec01,tam added CMD_SEPARATOR def
|
|
# 01v,02nov01,tam added RMDIR
|
|
# 01u,01nov01,jab added MKDIR
|
|
# 01t,20oct01,dat Relocting tool specific macros
|
|
# 01s,27aug01,wsl add man pages
|
|
# 01r,19dec00,rec add endian flag to CPP definition
|
|
# 01q,06dec00,sn removed -xc
|
|
# 01q,08apr99,bc Merge in objcopy invocations from Aeolus
|
|
# 01p,07sep98,fle added doc related variable : DOCS_ROOT
|
|
# 01o,02apr98,pcn Removed Objcopy changes from Tempest view
|
|
# 01n,25feb98,ms added NOP def, removed VX_CPU_FAMILY=$(TOOLENV) from CPP
|
|
# 01m,15dec97,pcn Added Objcopy in BSP build.
|
|
# 01l,20oct97,tm added constants to support objcopy gated by USE_OBJCOPY flag
|
|
# 01k,10oct97,ms added MV and ECHO. Don't define USRCONFIG, BOOTINIT, ...
|
|
# macros if using new build rules.
|
|
# 01j,17aug96,yp Added definition of LIBDIR and BSPBUILD_TCL and DIRCHAR
|
|
# 01i,18aug96,ms use deflate to compress bootROM images
|
|
# 01h,18apr96,dat
|
|
# +yp added MKPREP
|
|
# 01g,06mar96,dat removed makeVersion
|
|
# 01f,13nov95,p_m added DEMO_DIR.
|
|
# 01e,03nov95,yp Made CPP arch specific so .s.o targets don't get generate
|
|
# 01d,24oct95,dat recovered CONFIG_ALL macro
|
|
# 01c,29jun95,kkk added VXSIZE definition.
|
|
# 01b,19jun95,yp allowed arch. specific tools to be inherited from
|
|
# make.$(CPU)$(TOOL)
|
|
# 01a,01jun95,yp created
|
|
#
|
|
# DESCRIPTION
|
|
# This file contains default definitions, and flags used in building targets
|
|
# that are host specific to a standard unix environment.
|
|
|
|
|
|
## directories
|
|
|
|
BIN_DIR = $(WIND_BASE)/host/$(WIND_HOST_TYPE)/bin
|
|
FOUNDATION_DIR = $(WIND_FOUNDATION_PATH)/$(WIND_HOST_TYPE)/bin
|
|
|
|
ifeq ($(WIND_PROJECT_MAKEFILE),)
|
|
TGT_DIR = $(WIND_BASE)/target
|
|
endif
|
|
|
|
# temporay, until all occurent of LIB_ROOT are removed.
|
|
LIB_ROOT = $(VSB_DIR)
|
|
|
|
CONFIG_ALL = $(TGT_DIR)/config/all
|
|
DEMO_DIR = $(TGT_DIR)/lib/obj$(CPU)$(TOOL)test
|
|
LIBDIR = $(LIB_ROOT)/$(LIBDIRNAME)
|
|
PRECOMPBASE = $(TGT_DIR)/precomp
|
|
PRECOMPDIR = $(TGT_DIR)/precomp/default$(MAJOR_OPTION_SUFFIX)/$(LIBDIRNAME)
|
|
RESOURCE_DIR = $(WIND_BASE)/host/resource
|
|
|
|
## doc files
|
|
|
|
DOCS_ROOT = $(WIND_DOCS)/extensions/eclipse/plugins
|
|
MAN_PAGE_DIR = $(WIND_BASE)/man
|
|
DOC_OPTS = $(DOC_OPTS_MAN)
|
|
DOC_OPTS_C_TCL = -config CTcl2html
|
|
DOC_OPTS_CPP = -cpp
|
|
DOC_OPTS_FILE = -config File2html
|
|
DOC_OPTS_MAN = -mg -missingok
|
|
|
|
## tools
|
|
|
|
ENV_BIN = VX_CPU_FAMILY=$(TOOLENV) $(BIN_DIR)/
|
|
EXTRACT_BIN = $(OBJCPY) $(EXTRACT_BIN_FLAG)
|
|
BINXSYM = $(OBJCPY) $(EXTRACT_SYM_FLAG)
|
|
BINHEX = $(OBJCPY) $(EXTRACT_HEX_FLAG)
|
|
BINCONV = $(OBJCPY)
|
|
COMPRESS = $(ENV_BIN)deflate
|
|
ROMSIZEPROG = $(ENV_BIN)romsize
|
|
VXSIZEPROG = $(ENV_BIN)vxsize
|
|
MKSYMTBL = $(TCL) $(WIND_BASE)/host/resource/hutils/tcl/makeSymTbl.tcl \
|
|
$(TOOLENV)
|
|
BINTOASM = $(ENV_BIN)binToAsm
|
|
MKPREP = $(ENV_BIN)mkprep
|
|
MG = $(ENV_BIN)mg
|
|
MKROMFS = $(ENV_BIN)mkromfs
|
|
LDOUT_SYMS = true
|
|
LDOUT_CONV = true
|
|
LDOUT_HOST = true
|
|
MV_BIN = echo
|
|
MKDIR = mkdir -p
|
|
RMDIR = rm -f -r
|
|
RM = rm -f
|
|
MV = mv
|
|
ECHO = /bin/echo
|
|
CP = cp
|
|
SED = sed
|
|
TR = tr
|
|
ASM_P1 = cat
|
|
ASM_P2 = cat
|
|
TARGET =
|
|
BSPBUILD_TCL = $(BIN_DIR)/bspBuild.tcl
|
|
NOP = \#
|
|
|
|
## macro for postprocessing dependencies
|
|
|
|
PROCESS_DEP = if [ -f $@ ]; then \
|
|
$(SED) -e 's|^.*\.o|\$$\(LIBDIR\)/&|g' \
|
|
-e "s|$(TGT_DIR)|\\$$\(TGT_DIR\)|g" \
|
|
-e "s|$(WIND_GNU_PATH)|\\$$\(WIND_GNU_PATH\)|g" \
|
|
-e "s|$(WIND_DIAB_PATH)|\\$$\(WIND_DIAB_PATH\)|g" \
|
|
-e "s|$(WIND_BASE)|\\$$\(WIND_BASE\)|g" $@ > $@.post; \
|
|
$(MV) $@.post $@; fi
|
|
|
|
PROCESS_DEP_PRECOMP = if [ -f $@.precomp ]; then \
|
|
$(SED) -e 's|^.*\.o|\$$\(PRECOMPDIR\)/&|g' \
|
|
-e "s|$(TGT_DIR)|\\$$\(TGT_DIR\)|g" \
|
|
-e "s|$(WIND_GNU_PATH)|\\$$\(WIND_GNU_PATH\)|g" \
|
|
-e "s|$(WIND_DIAB_PATH)|\\$$\(WIND_DIAB_PATH\)|g" \
|
|
-e "s|$(WIND_BASE)|\\$$\(WIND_BASE\)|g" $@.precomp >> $@; \
|
|
$(RM) $@.precomp; fi
|
|
|
|
BSP_PROCESS_DEP = if [ -f $@ ]; then \
|
|
$(SED) -e "s|$(CONFIG_ALL)|\\$$\(CONFIG_ALL\)|g" \
|
|
-e "s|$(TGT_DIR)|\\$$\(TGT_DIR\)|g" \
|
|
-e "s|$(WIND_GNU_PATH)|\\$$\(WIND_GNU_PATH\)|g" \
|
|
-e "s|$(WIND_DIAB_PATH)|\\$$\(WIND_DIAB_PATH\)|g" \
|
|
-e "s|$(WIND_BASE)|\\$$\(WIND_BASE\)|g" $@ > $@.post; \
|
|
$(MV) $@.post $@; fi
|
|
|
|
## DIRCHAR exists for compatibility reason. It should be removed
|
|
DIRCHAR = /
|
|
|
|
## We now rely on the path to get the right tcl exe.
|
|
TCL = tclsh
|
|
|
|
# REFGEN = $(WTXTCL) $(RESOURCE_DIR)/doctools/apigen.pl
|
|
HTMLLINK = $(WTXTCL) $(RESOURCE_DIR)/doctools/htmlLink.tcl
|
|
HTMLBOOK = $(WTXTCL) $(RESOURCE_DIR)/doctools/htmlBook.tcl
|
|
|
|
ifneq ($(NEW_RULES),TRUE)
|
|
## files
|
|
|
|
USRCONFIG = $(CONFIG_ALL)/usrConfig.c
|
|
USRENTRY = $(CONFIG_ALL)/usrEntry.c
|
|
BOOTCONFIG = $(CONFIG_ALL)/bootConfig.c
|
|
BOOTINIT = $(CONFIG_ALL)/bootInit.c
|
|
DATASEGPAD = $(CONFIG_ALL)/dataSegPad.c
|
|
CONFIG_ALL_H = $(CONFIG_ALL)/configAll.h
|
|
endif
|
|
|
|
## Miscellaneous
|
|
|
|
CMD_SEPARATOR = ;
|
|
NULL_DEVICE = /dev/null
|