221 lines
5.9 KiB
Plaintext
221 lines
5.9 KiB
Plaintext
# defs.option - makefile definitions related to option builds
|
|
#
|
|
# Copyright (c) 1984-2006 Wind River Systems, Inc.
|
|
#
|
|
# The right to copy, distribute, modify or otherwise make use
|
|
# of this software may be licensed only pursuant to the terms
|
|
# of an applicable Wind River license agreement.
|
|
#
|
|
#
|
|
# modification history
|
|
# --------------------
|
|
# 01z,15sep10,xhs support IPLITE
|
|
# 01y,05feb10,mry Add ipmacsec lib
|
|
# 01x,11jun09,dwb Adding vxdot1x
|
|
# 01w,16dec08,mry Add wps lib
|
|
# 01v,25mar09,pee WIND00160969
|
|
# 01u,11feb09,ggz Move coreip and bridge into CVS
|
|
# 01u,03dec08,f_g Added ipsctp to IP_LIB_BASE_NAMES.
|
|
# 01t,25aug08,pee adding to the list.
|
|
# 01t,25aug08,pee adding files to inet6 list.
|
|
# 01s,30jun08,mze allow -inet6only as a OPT and removed the -fr variations
|
|
# 01r,30may08,dlk Added vxmux to IP_LIB_BASE_NAMES.
|
|
# 01q,29oct07,mry Merging ipsupp/ipeap changes
|
|
# 01p,10sep07,mry Add 8021x lib
|
|
# 01o,05oct07,pee adding INET / INET6 definition and caching. Moved from
|
|
# ipcom.
|
|
# 01n,20sep07,pee WIND00105231
|
|
# 01m,01jun06,tkf Add netcommon, netapps, and netwrap to IP_LIB_BASE_NAMES.
|
|
# 01l,26dec06,tkf Define IPBASIC for bootrom* targets (as workaround for
|
|
# CQ84418).
|
|
# 01k,14dec06,tkf Define IPBASIC if OPT==-basic.
|
|
# 01j,13dec06,tkf Added OPT=-basic option.
|
|
# 01k,17oct06,kch Removed unsupported directories from IP_LIB_BASE_NAMES.
|
|
# Also added ipradius to IP_LIB_BASE_NAMES.
|
|
# 01j,22sep06,dlk Add interpeak stack support. Remove virtual stack OPTS.
|
|
# 01i,09jan06,kch Include firewall to the -inet6 build option for MSP.
|
|
# 01h,15apr05,kch Changed 'inet6_fr' to '-inet6_fr' and 'inet6_vs_fr'
|
|
# to '-inet6_vs_fr'.
|
|
# 01g,14apr05,kch Fixed SUPPORTED_OPTIONS such that virtual stack build
|
|
# options will be supported for MSP only. Added ROUTER_STACK
|
|
# setting to virtual stack option builds.
|
|
# 01f,31mar05,kch Added the -vs, -vs_fr, -inet6_vs and inet6_vs_fr build
|
|
# options for virtual stack.
|
|
# 01e,23sep04,dlk Use OPT_DEFINE instead of EXTRA_DEFINE. Using
|
|
# EXTRA_DEFINE requires 'override', which breaks later
|
|
# additions to EXTRA_DEFINE (e.g. in some BSPs) which
|
|
# don't use 'override'.
|
|
# 01d,02sep04,dlk Remove dsi from -inet6 builds. Tighten check
|
|
# on OPT validity. Add aim to free build libraries.
|
|
# Do not modify ADDED_CFLAGS.
|
|
# 01c,04may04,dlk Added the -inet6_fr build option. Remove references
|
|
# to the fpio library.
|
|
# 01b,20apr04,dlk Added -inet6 build option.
|
|
# 01a,04feb04,dlk written.
|
|
#
|
|
# DESCRIPTION
|
|
#
|
|
# This file is included in Makefiles to establish information related
|
|
# to option builds, in particular the lists of libraries which support
|
|
# particular option builds.
|
|
#
|
|
|
|
# Protect against multiple inclusion.
|
|
ifeq ($(DEFS_OPTION),)
|
|
DEFS_OPTION = TRUE
|
|
|
|
# For GPP build, the environment variable $FEATURE_SET is either set to "gpp"
|
|
# or simply not defined at all. Here it is assumed that the top-level Feature
|
|
# Set Makefile (if exist) has verified the setting of the $FEATURE_SET
|
|
# variable (if defined).
|
|
|
|
ifeq ($(FEATURE_SET),)
|
|
_GPP_BUILD = TRUE
|
|
else
|
|
ifeq ($(FEATURE_SET),gpp)
|
|
_GPP_BUILD = TRUE
|
|
endif
|
|
endif
|
|
|
|
# Supported build options for all products
|
|
|
|
ifeq ($(WIND_IPLITE),true)
|
|
SUPPORTED_OPTIONS = -inet6 -basic
|
|
else
|
|
SUPPORTED_OPTIONS = -inet6only -inet6 -basic
|
|
endif
|
|
|
|
# Supported build options for MSP platform products.
|
|
ifeq ($(_GPP_BUILD),)
|
|
SUPPORTED_OPTIONS +=
|
|
endif
|
|
|
|
# Check that OPT is valid. If not, fail.
|
|
|
|
_empty_ =
|
|
_space_ = $(_empty_) $(_empty_)
|
|
|
|
ifneq ($(OPT),)
|
|
ifneq ($(findstring $(_space_),$(OPT)),)
|
|
$(error OPT may not contain spaces: "$(OPT)")
|
|
endif
|
|
ifeq ($(filter $(OPT), $(SUPPORTED_OPTIONS)),)
|
|
$(error OPT="$(OPT)" is unsupported. Allowed: $(SUPPORTED_OPTIONS))
|
|
endif
|
|
endif
|
|
|
|
# It's ugly to have to list these explicitly here, but not _too_ ugly.
|
|
# Note that these are IPPROD values, which are sometimes different from
|
|
# the top level directory names; in some cases, several IPPROD values fall
|
|
# under the same top level directory.
|
|
#
|
|
# Several of these won't be used or built for VxWorks.
|
|
# Please keep in alphabetical order.
|
|
|
|
IP_LIB_BASE_NAMES := \
|
|
agent \
|
|
coex \
|
|
devkit \
|
|
engine \
|
|
ipappl \
|
|
ipcci \
|
|
ipcom \
|
|
ipcom_vxworks \
|
|
ipdhcpc6 \
|
|
ipdhcpr \
|
|
ipdhcps \
|
|
ipdhcps6 \
|
|
ipeap \
|
|
ip8021x \
|
|
ipwps \
|
|
ipfirewall \
|
|
iphwcrypto \
|
|
ipike \
|
|
ipipsec2 \
|
|
ipmcp \
|
|
ipmcrypto \
|
|
ipmip6 \
|
|
ipmip6mn \
|
|
ipmipfa \
|
|
ipmipha \
|
|
ipmipmn \
|
|
ipmpls \
|
|
ipnet \
|
|
ipnet_krn \
|
|
ipppp \
|
|
iprip \
|
|
ipripng \
|
|
ipradius \
|
|
ipsctp \
|
|
ipsntp \
|
|
ipssh \
|
|
iptcp \
|
|
mibtable \
|
|
snmp_agt \
|
|
snmpv3 \
|
|
vxcompat \
|
|
vxmux \
|
|
vxbridge \
|
|
vxcoreip \
|
|
wrsnmp \
|
|
vxdot1x \
|
|
ipmacsec
|
|
|
|
IP_COMPONENT_LIB_BASE_NAMES = ipcrypto ipcrypto_apps ipdiameter ipmip4 ipmip iprohc ipssl ipwlan
|
|
|
|
ifeq ($(OPT),-inet6)
|
|
export _INET6_BUILD := 1
|
|
OPT_DEFINE += -DINET6
|
|
endif
|
|
|
|
LIB_BASE_NAMES-inet6 := netcommon netapps netwrap $(IP_LIB_BASE_NAMES) $(IP_COMPONENT_LIB_BASE_NAMES)
|
|
ifeq ($(_GPP_BUILD),)
|
|
LIB_BASE_NAMES-inet6 +=
|
|
endif
|
|
|
|
ifeq ($(OPT),-basic)
|
|
OPT_DEFINE += -DIPBASIC
|
|
endif
|
|
|
|
# Workaround for CQ84418
|
|
bootrom bootrom_uncmp bootrom_res bootrom_res_high: OPT_DEFINE += -DIPBASIC
|
|
|
|
LIB_BASE_NAMES-basic := netcommon netapps netwrap $(IP_LIB_BASE_NAMES)
|
|
|
|
###
|
|
# The following section is added to support IPv6-Only build. The macro INET
|
|
# is always defined by default unless the INET6_ONLY macro is defined
|
|
#
|
|
# This code fragment is not to be use during vxWorks image build since
|
|
# the macros INET6_ONLY, INET6 are not guranteed to be defined.
|
|
#
|
|
ifeq ($(BSP_NAME),)
|
|
|
|
ifeq ($(findstring -inet6only,$(OPT)),-inet6only)
|
|
_INET6_ONLY_BUILD = 1
|
|
else
|
|
ifeq ($(findstring -inet6,$(OPT)),-inet6)
|
|
_INET6_BUILD = 1
|
|
endif
|
|
|
|
endif
|
|
|
|
ifneq ($(_INET6_ONLY_BUILD),)
|
|
ifeq ($(filter -DINET6,$(EXTRA_DEFINE)),)
|
|
EXTRA_DEFINE += -DINET6
|
|
endif
|
|
else
|
|
ifeq ($(filter -DINET,$(EXTRA_DEFINE)),)
|
|
EXTRA_DEFINE += -DINET
|
|
endif
|
|
ifneq ($(_INET6_BUILD),)
|
|
ifeq ($(filter -DINET6,$(EXTRA_DEFINE)),)
|
|
EXTRA_DEFINE += -DINET6
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
endif
|
|
|
|
endif # ifeq ($(DEFS_OPTION),)
|