remove make/ directory

Change-Id: I2a8732fc19743f8f7c4493946d942884c86b1dbb
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
Anas Nashif 2015-05-26 20:04:18 -04:00
parent 427fc58804
commit cb04620fbd
185 changed files with 0 additions and 10329 deletions

160
make/env/defs.base vendored
View File

@ -1,160 +0,0 @@
# defs.base - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#####
# this file initializes:
#
# - vBASE, the base VxMicro directory
# - vMAKE, the base make fragments directory
# - vBSP_BASE_DIR, the base BSP directory
# - vCONFIG_BASE_DIR, the configuration directory
# - build parallelism
# - verbosity levels
#####
# verify GNU make has the features used by the build system
$(if $(filter .FEATURES,${.VARIABLES}),,$(error GNU make v3.81+ required))
$(if $(filter second-expansion,${.FEATURES}),,$(error Your GNU make does not support .SECONDEXPANSION))
$(if $(filter order-only,${.FEATURES}),,$(error Your GNU make does not support order-only prerequesites))
$(if $(filter else-if,${.FEATURES}),,$(error Your GNU make does not support else-if conditionals))
#####
# $(file ...) has been introduced in GNU make 4.0, but sadly without a way of
# checking for its existence in the .FEATURES variable.
vFILE_SUPPORTED := $(if $(filter 4.%,${MAKE_VERSION}),y,n)
#####
$(if ${VXMICRO_BASE},,$(error VXMICRO_BASE must be set))
vBASE ?= $(strip $(subst ${vDRIVE_BASE},,$(subst \,/,${VXMICRO_BASE})))
vMAKE ?= ${vBASE}/make
vBSP_BASE_DIR ?= $(strip $(subst \,/,$(or ${VXMICRO_BSP_BASE},${vBASE}/arch/${vARCH})))
vCONFIG_BASE_DIR ?= $(strip $(subst \,/,${vBASE}/config))
#####
# quiet/verbose
# if V=1 from command line => verbose; else, if VERBOSE=1 is set anywhere => verbose; else => quiet
iCL_V_undefined =
iCL_V_1 = 1
iCL_V = $(or $(filter undefined,$(origin V)),$(if $(filter "command line","$(origin V)"),$V,))
iVERBOSE_1 = 1
vVERBOSE = $(filter 1,$(or ${iCL_V_${iCL_V}},${iVERBOSE_${VERBOSE}}))
# for recipe lines: $q = @ if not-verbose
q = $(if ${vVERBOSE},,@)
SHOW_INFORMATIVE_WARNINGS_ ?= 1
SHOW_INFORMATIVE_WARNINGS ?= $(SHOW_INFORMATIVE_WARNINGS_$q)
# invoke with $(eval ${q_include} <file>)
q_include = $(if ${vVERBOSE},,s)include
# invoke with $(call q_info,<string>)
q_info = $(if ${vVERBOSE},$(info $1),)
#####
# To keep things simple, do not allow multiple goals on the command line
# since some goals might require autoconf.mk to exist, and might trigger its
# rule but require prj.conf to exist, while some rules don't.
iONE_GOAL_1 = y
iONE_GOAL = ${iONE_GOAL_$(words ${MAKECMDGOALS})}
iDEFAULT_GOAL_0 = y
iDEFAULT_GOAL = ${iDEFAULT_GOAL_$(words ${MAKECMDGOALS})}
iUNIQUE_GOAL_y = y
iUNIQUE_GOAL_ = n
iUNIQUE_GOAL = ${iUNIQUE_GOAL_${iONE_GOAL}${iDEFAULT_GOAL}}
ifneq (${iUNIQUE_GOAL},y)
$(error Cannot invoke make with multiple goals on the command line)
endif
#####
# Find out if the goal is one that does necessitate some user-provided values.
# 'help', and the variants of 'clean' can be invoked without knowing about the
# BSP, ARCH, CPU, etc.
ifeq ($(strip $(findstring help,${MAKECMDGOALS})),help)
vGOAL_NEEDS_TARGET_SETUP = n
else ifneq ($(strip $(filter ${MAKECMDGOALS},wipe pristine clean)),)
vGOAL_NEEDS_TARGET_SETUP = n
else ifeq ($(strip $(findstring display_settings,${MAKECMDGOALS})),display_settings)
vGOAL_NEEDS_TARGET_SETUP = n
else ifeq ($(strip $(findstring display_variables,${MAKECMDGOALS})),display_variables)
vGOAL_NEEDS_TARGET_SETUP = n
else
vGOAL_NEEDS_TARGET_SETUP = y
endif
#####
# This variable is only to help when debugging the build system. A build
# system developer can set it to <nothing> so that some rules do not
# retrigger when the build system change, since this can be very time-
# consuming, especially on Windows. Care must be taken that the part of the
# build system being worked on do not necessitate these rules to retrigger.
iDEPEND_ON_MAKEFILES = ${MAKEFILE_LIST}
#####
# figure out which host type we're running on
include ${vMAKE}/env/defs.host
#####
# global rules
#
# These are really rules, and should be in a rules.<something> file, but
# they must be stated *prior* to rules that need them to be in-effect. To keep
# things simple, the only fragment that is required to be included *before*
# anything is the current file (it must be the first statement in the top-level
# makefile), so put those rules here.
.SECONDARY:
.SECONDEXPANSION:
.SUFFIXES:
#####
# obscure string manipulations
vCOMMA = ,
vEMPTY =
vSPACE = ${vEMPTY} ${vEMPTY}
include ${vMAKE}/env/rules.shared

48
make/env/defs.host vendored
View File

@ -1,48 +0,0 @@
# defs.host - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# abstraction to check which host is in use
sinclude ${vMAKE}/env/defs.check-host
vHOST_OS ?= linux2
include ${vMAKE}/env/defs.host.${vHOST_OS}
vHOST_ARCH ?= ${vHOST_ARCH_FIND}
$(if $(filter x86,${vHOST_ARCH}),,$(error The only supported host architecture is x86))
vHOST ?= ${vHOST_ARCH}-${vHOST_OS}
HOS_Bin = ${vBASE}/host/${vHOST}/bin
export VXMICRO_HOST_OS=${vHOST_OS}
export VXMICRO_HOST_ARCH=${vHOST_ARCH}
export VXMICRO_HOST=${vHOST}
include ${vMAKE}/env/defs.host.${vHOST}

View File

@ -1,45 +0,0 @@
# defs.host.linux2 - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vHOST_ARCH_x86_64 ?= x86
vHOST_ARCH_i386 ?= x86
vHOST_ARCH_i486 ?= x86
vHOST_ARCH_i586 ?= x86
vHOST_ARCH_i686 ?= x86
vHOST_ARCH_FIND ?= ${vHOST_ARCH_$(shell uname -m)}
# vDRIVE_xxx are only necessary for Windows systems.
# They are deliberately left empty for Linux systems.
vDRIVE_BASE :=
vDRIVE_HERE :=
vHERE := $(shell pwd -L)

View File

@ -1,92 +0,0 @@
# defs.host.x86-linux2 - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
HOS_SlashCnv =
HOS_exe =
# Not all host apps are supported under Linux so
# the Windows version is used with wine.
HOS_Win32Bin = ${vBASE}/host/x86-win32/bin
HOS_DeleteFiles = rm -f
HOS_CopyFile = cp -p --no-preserve=timestamps
HOS_Echo = echo
HOS_EchoBlankLine = echo
HOS_Cat = cat
HOS_Cat3Files = ${vBASE}/scripts/cat3files
HOS_MakeDir = mkdir -p
HOS_DelDir = rm -rf
HOS_FileList = ${vBASE}/scripts/filelist
HOS_DirList = ${vBASE}/scripts/dirlist
HOS_Shell = sh
HOS_Rename = mv
HOS_Move = mv
HOS_SysGen = ${vBASE}/scripts/sysgen.py
HOS_GenOffsetHeader = $(HOS_Bin)/genOffsetHeader
HOS_GenConfigAbssym = ${HOS_Bin}/gen_config_abssym
HOS_MultiCmd = ;
HOS_SubdirsList = find
HOS_SubdirsListMod = -type d
HOS_false = false
HOS_true = true
HOS_Touch = touch
HOS_DEC2HEX = $(HOS_Bin)/dec2hex
HOS_GenIdt = $(HOS_Bin)/genIdt
HOS_Link = ln -sf
HOS_Term = x-terminal-emulator -e
HOS_mkevents = ${HOS_Bin}/mkevents
HOS_Sleep = sleep
HOS_Percent = %
HOS_GenHash = ${vBASE}/scripts/gen_file_path_hash
# for weird rules where a copy is forced and thus the timestamps should not be
# updated if the source of the copy did not get re-generated
HOS_CopyFilePreserveTimestamps = cp -p
HOS_ccache_y = ccache
HOS_ccache = ${HOS_ccache_${VXMICRO_USE_CCACHE}}
$(if ${HOS_ccache},$(if $(shell which ccache),,$(error no ccache in path)))
MAKEFLAGS += -r
# wrsconfig must be called differently depending on the host OS,
# provide a wrapper as well
HOS__Wrsconfig = $(HOS_Bin)/wrsconfig
define HOS_Wrsconfig
$q(cd $(dir $(1)); $(HOS__Wrsconfig) $(2) $(notdir $(1)))
endef
# /dev/null, read/write
i_DEVNULL = /dev/null
HOS_DEVNULL_R = ${i_DEVNULL}
HOS_DEVNULL_W = ${i_DEVNULL}

88
make/env/defs.kver vendored
View File

@ -1,88 +0,0 @@
# defs.kver - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#####
# VxMicro kernel version information
#
# This make fragment sets the version variables which are to be built into
# the kernel.
#
# The kernel version has the form 'w.x.y.z', where each field is a single nibble.
# The nibble 'w' represents the generation release number,
# 'x' represents the major release number,
# 'y' represents the minor release number, and
# 'z' represents the revision release number.
#
# The prefix is required as this macro will be combined with two other
# macros (KERNEL_VERSION_FLAGS and KERNEL_VERSION_RESERVED) to create the
# complete 32-bit kernel version value.
#####
# XXX - get rid of these checks (useless)
ifdef KERNEL_VERSION_GENERATION
$(error KERNEL_VERSION_GENERATION defined by user: not allowed!)
else ifdef KERNEL_VERSION_MAJOR
$(error KERNEL_VERSION_MAJOR defined by user: not allowed!)
else ifdef KERNEL_VERSION_MINOR
$(error KERNEL_VERSION_MINOR defined by user: not allowed!)
else ifdef KERNEL_VERSION_REVISION
$(error KERNEL_VERSION_REVISION defined by user: not allowed!)
endif
# decimal values
vKVER_GEN = 2
vKVER_MAJ = 2
vKVER_MIN = 3
vKVER_REV = 0
# XXX - get rid of these
KERNEL_VERSION_GENERATION = ${vKVER_GEN}
KERNEL_VERSION_MAJOR = ${vKVER_MAJ}
KERNEL_VERSION_MINOR = ${vKVER_MIN}
KERNEL_VERSION_REVISION = ${vKVER_REV}
# string
vKVER_STR = "${vKVER_GEN}.${vKVER_MAJ}.${vKVER_MIN}.${vKVER_REV}"
ifndef vHOSTTOOLS
# Matching hexadecimal values
# NOTE: using ':=' since this is invoking the shell
vKVER_GEN_HEX := $(shell ${HOS_DEC2HEX} ${KERNEL_VERSION_GENERATION})
vKVER_MAJ_HEX := $(shell ${HOS_DEC2HEX} ${KERNEL_VERSION_MAJOR})
vKVER_MIN_HEX := $(shell ${HOS_DEC2HEX} ${KERNEL_VERSION_MINOR})
vKVER_REV_HEX := $(shell ${HOS_DEC2HEX} ${KERNEL_VERSION_REVISION})
vKVER_NUMBER = 0x$(vKVER_GEN_HEX)$(vKVER_MAJ_HEX)$(vKVER_MIN_HEX)$(vKVER_REV_HEX)
# XXX - get rid of this
KERNEL_VERSION_NUMBER = ${vKVER_NUMBER}
endif

36
make/env/rules.shared vendored
View File

@ -1,36 +0,0 @@
# rules.shared - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
.PRECIOUS: %/.dir
%/.dir:
$q${HOS_MakeDir} $(abspath $(dir $@))
$q${HOS_Touch} $@

View File

@ -1,43 +0,0 @@
# rules.wb-helper - workbench helper
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
define iDisplay_One_Var
@${HOS_Echo} $1 = ${$1}
endef
.PHONY: display_settings display_variables
display_variables:
$(foreach var,${iVARIABLES_TO_DISPLAY},$(call iDisplay_One_Var,${var}))
display_settings: display_variables

33
make/env/sanity_check vendored
View File

@ -1,33 +0,0 @@
# sanity_check - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
$(if ${vMAKE},,$(error 'include $$(subst \,/,$${VXMICRO_BASE})/make/env/defs.base' MUST be the first line in your makefile))

View File

@ -1,65 +0,0 @@
# Makefile - build a set of subdirectories
#
# Copyright (c) 2011-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# by using this fragment, users can set:
#
# DIRS: list of directories to build
#
# if not set, DIRS defaults to the list of all subdirectories
# that contain a file called [mM]akefile
#
.DEFAULT_GOAL = all
DIRS ?= $(subst /,,$(sort $(dir $(wildcard */[mM]akefile))))
ALL_CLEAN = $(foreach dir,${DIRS} ${DEPS},${dir}_clean)
ALL_VCLEAN = $(foreach dir,${DIRS} ${DEPS},${dir}_veryclean)
.PHONY: all clean veryclean pristine ${DIRS} ${DEPS} ${ALL_CLEAN} ${ALL_VCLEAN}
${DEPS}:
@${MAKE} -C $@
${DIRS}: ${DEPS}
@${MAKE} -C $@
${ALL_CLEAN}:
@${MAKE} -C $(subst _clean,,$@) clean
${ALL_VCLEAN}:
@${MAKE} -C $(subst _veryclean,,$@) veryclean
all: ${DIRS}
clean: ${ALL_CLEAN}
veryclean: ${ALL_VCLEAN}
pristine: veryclean

View File

@ -1,49 +0,0 @@
# exe.build - build a host program
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# by using this fragment, users must set this:
#
# EXE_NAME: name of program
#
# and can set this:
#
# LINKED_LIBS: list of libraries linked, defaults to 'vxmicro'
#
# other variables can be customized: see top of obj.rules
#
include ${VXMICRO_BASE}/make/env/defs.base
.DEFAULT_GOAL = all
include ${VXMICRO_BASE}/make/host/exe.defs
include ${VXMICRO_BASE}/make/host/exe.rules

View File

@ -1,66 +0,0 @@
# exe.defs - definitions for building a host program
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
$(if ${EXE_NAME},,$(error EXE_NAME is not set!))
### custom: set if not provided by user
LINKED_LIBS ?= vxmicro
HOST = linux2
#add in any extra hosts to build for
sinclude ${VXMICRO_BASE}/make/host/exe_extra.defs
### all that follows is automatic
# where the program will be generated
vBIN_DIR_linux2 = ${vDEST_linux2}/bin
# executable name
vEXE_NAME_linux2 = ${EXE_NAME}
# executable output path + filename
vEXE_linux2 = ${vBIN_DIR_linux2}/${EXE_NAME}
vEXE_ALL = $(foreach host,${HOST},${vEXE_$(if ${HOST_ONLY},$(findstring ${HOST_ONLY},${host}),${host})})
# Link options
vLNK_OPTS_linux2 =
# location of the libraries
vLIB_DIR_linux2 = ${vDEST_linux2}/lib/build_tools
vLINKED_LIBS = $(foreach lib,${LINKED_LIBS},-l${lib})
vDEPEND_LIBS_linux2 = $(foreach lib,${LINKED_LIBS},${vLIB_DIR_linux2}/lib${lib}.a)
include ${VXMICRO_BASE}/make/host/obj.defs

View File

@ -1,49 +0,0 @@
# exe.rules - rules for building a host program
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# programs (executables)
define generate_exe
${vEXE_$1}: ${vOBJS_$1} ${vDEPEND_LIBS_$1}
@${vCC_$1} ${CFLAGS_$1} -o ${vEXE_$1} ${vOBJS_$1} -L${vLIB_DIR_$1} ${vLINKED_LIBS} ${vLNK_OPTS_$1}
@printf "%-12s%s\n" "[Linking]" "$$(notdir $$@) (in $$(dir $$@))"
endef
$(foreach host, ${HOST}, $(eval $(call generate_exe,$(host))))
.PHONY: all
all: ${vEXE_ALL}
@true
include ${VXMICRO_BASE}/make/host/obj.rules
include ${VXMICRO_BASE}/make/host/top.rules

View File

@ -1,45 +0,0 @@
# lib.build - build a host library
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# by using this fragment, users must set this:
#
# LIB_NAME: name of library
#
# other variables can be customized: see top of obj.rules
#
include ${VXMICRO_BASE}/make/env/defs.base
.DEFAULT_GOAL = all
include ${VXMICRO_BASE}/make/host/lib.defs
include ${VXMICRO_BASE}/make/host/lib.rules

View File

@ -1,50 +0,0 @@
# lib.defs - definitions for building libraries
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
$(if ${LIB_NAME},,$(error LIB_NAME is not set!))
HOST = linux2
#add in any extra hosts to build for
sinclude ${VXMICRO_BASE}/make/host/lib_extra.defs
### all that follows is automatic
# where the library will be generated
vLIB_DIR_linux2 = ${vDEST_linux2}/lib/build_tools
# library output path + filename
vLIB_linux2 = ${vLIB_DIR_linux2}/lib${LIB_NAME}.a
vLIB_ALL = $(foreach host,${HOST},${vLIB_$(if ${HOST_ONLY},$(findstring ${HOST_ONLY},${host}),${host})})
include ${VXMICRO_BASE}/make/host/obj.defs

View File

@ -1,48 +0,0 @@
# lib.rules - rules for building libraries
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# libraries
define generate_lib
${vLIB_$1}: ${vOBJS_$1}
${vAR_$1} ${vARFLAGS} $$@ ${vOBJS_$1}
@printf "%-12s%s\n" "[Archiving]" "$$(notdir $$@) (in $$(dir $$@))"
endef
$(foreach host, ${HOST}, $(eval $(call generate_lib,$(host))))
all: ${vLIB_ALL}
@true
include ${VXMICRO_BASE}/make/host/obj.rules
include ${VXMICRO_BASE}/make/host/top.rules

View File

@ -1,66 +0,0 @@
# obj.defs - definitions for building object files
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# custom: set if not provided by user
CFLAGS_linux2 ?= ${vCFLAGS_COMMON} -DLINUX ${EXTRA_CFLAGS} ${EXTRA_CFLAGS_linux2}
SOURCES ?= $(wildcard *.c)
#add in any extra hosts to build for
sinclude ${VXMICRO_BASE}/make/host/obj_extra.defs
# all that follows is automatic
# kernel version
vHOSTTOOLS=y
include ${VXMICRO_BASE}/make/env/defs.kver
vKVER = ${vKVER_GEN}${vKVER_MAJ}${vKVER_MIN}${vKVER_REV}
vCFLAGS_COMMON = \
-I. -I${VXMICRO_BASE}/host/src/include \
-Wall -Werror \
-g -m32 \
-DKERNEL_VERSION=${vKVER}
# base destination directories
vDEST_linux2 = ${VXMICRO_BASE}/host/x86-linux2
vARFLAGS = cr
# object file output directories
vOBJDIR_DEP_linux2 = linux2/.dir
# lists of object files to generate
vOBJS_linux2 = $(patsubst %,linux2/%,$(SOURCES:.c=.o))
include ${VXMICRO_BASE}/make/host/toolchain.defs

View File

@ -1,89 +0,0 @@
# obj.rules - rules for building object files
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# user can set the following:
#
# EXTRA_CFLAGS: common CFLAGS appended to default CFLAGS_<host>
# EXTRA_CFLAGS_<host>: CFLAGS appended to default CFLAGS_<host>
# HOST_ONLY=<host>: build only for a specific host (i.e. linux2)
#
# and can override the following:
#
# CFLAGS_<host>: CFLAGS for a specific host (i.e. linux2)
# SOURCES: list of C files
#
# defaults:
#
# CFLAGS_<host>: -I. -Wall -Werror -g -m32 -D<host>
# SOURCES: all C files in current directory
# object code files
define generate_objs
$1/%.o: %.c ${vOBJDIR_DEP_$1}
@${vCC_$1} ${CFLAGS_$1} -o $$@ -c $$<
@printf "%-12s%-20s -> %s\n" "[Compiling] " "$$<" "$$@"
endef
# object code directory
define generate_dir
${vOBJDIR_DEP_$1}: ${MAKEFILE_LIST}
@mkdir -p $$(dir $$@)
@touch $$@
endef
# .d dependency files
define generate_deps
$1/%.d: %.c ${vOBJDIR_DEP_$1}
@${vCC_$1} ${CFLAGS_$1} -MM $$< -MF $$@d
@sed 's#$${<:.c=.o}#$${@:.d=.o}#' <$$@d >$$@
@rm -f $$@d
endef
$(foreach host, ${HOST}, $(eval $(call generate_objs,$(host))))
$(foreach host, ${HOST}, $(eval $(call generate_dir,$(host))))
$(foreach host, ${HOST}, $(eval $(call generate_deps,$(host))))
# only generate .d files if not cleaning
ifeq (${MAKECMDGOALS},pristine)
vIGNORE_DOT_D=y
endif
ifeq ($(findstring clean,${MAKECMDGOALS}),clean)
vIGNORE_DOT_D=y
endif
ifneq (${vIGNORE_DOT_D},y)
ALL_HOSTS = $(foreach host,${HOST},$(if ${HOST_ONLY},$(findstring ${HOST_ONLY},${host}),${host}))
-include $(foreach src,${SOURCES}, $(addsuffix /${src:.c=.d},${ALL_HOSTS}))
endif # vIGNORE_DOT_D

View File

@ -1,40 +0,0 @@
# toolchain.defs - definitions for toolchains
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# compilers
vCC_linux2 = gcc
# archivers
vAR_linux2 = ar
#add in any extra hosts to build for
sinclude ${VXMICRO_BASE}/make/host/toolchain_extra.defs

View File

@ -1,50 +0,0 @@
# top.rules - common top-level rules
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
define rm_exes
rm -f $(foreach host,${HOST},${vEXE_${host}} ${vLIB_${host}})
endef
define rm_objs
rm -rf $(foreach host,${HOST},${host} core ${vEXE_NAME_${host}})
endef
.PHONY: all clean veryclean pristine
clean:
$(call rm_objs)
veryclean: clean
$(call rm_exes)
pristine: veryclean

View File

@ -1,33 +0,0 @@
# defs.arch - build system
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# nothing arch-specific for ARC

View File

@ -1,33 +0,0 @@
# rules.arch - build system
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# nothing arch-specific for ARC

View File

@ -1,33 +0,0 @@
# defs.arch - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# nothing arch-specific for ARM

View File

@ -1,33 +0,0 @@
# rules.arch - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# nothing arch-specific for ARM

View File

@ -1,33 +0,0 @@
# defs.arch - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# nothing needed for x86

View File

@ -1,33 +0,0 @@
# rules.arch - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/arch/${vARCH}/rules.idt

View File

@ -1,69 +0,0 @@
# rules.idt - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/toolchain/${vTOOL}/arch/${vARCH}/rules.idt
################################################################################
# define steps to generate and include static IDT
#
# Set a physical address to the intList section
# Linker places intList to a separate program header in the elf
# file. Then intList gets marked as NOLOAD and then removed.
# This operation creates an empty program header, but the
# program header inherits it's addresses from it's last section --
# intList.
# Most of the bootloaders parse all program headers and first check
# the program header physical address, if it is zero, the virtual
# address is checked. Then a bootloader checks if the address can
# be mapped, even if the length is zero. Thus, the physical address
# of a program header can not be zero.
#
define idtInTxt
-@$(HOS_Echo) '[${vTOOL}] Creating [Static IDT]'
$q$(vOC) -I ${OC_TARGET} -O binary -j intList $@ ${vOUT_DIR}/isrList.bin
-$q$(HOS_Rename) $@ ${vOUT_DIR}/elf.old
$q$(HOS_GenIdt) -i ${vOUT_DIR}/isrList.bin -n ${CONFIG_IDT_NUM_VECTORS} -o ${vOUT_DIR}/staticIdt.bin
$q$(vOC) -I binary -B ${OC_ARCH} -O ${OC_TARGET} --rename-section .data=staticIdt ${vOUT_DIR}/staticIdt.bin ${vOUT_DIR}/staticIdt.o
-$q$(HOS_DeleteFiles) ${iFINAL_LINKER_CMD}
-@$(HOS_Echo) '[${vTOOL}] Relinking [$(notdir $@)]'
$q${vPP} -DFINAL_LINK ${iLINKER_CMD_OPT} ${iLINKER_CMD_INC} ${LINKER_CMD} -o ${iFINAL_LINKER_CMD}
$q${vLD} ${-T} ${iFINAL_LINKER_CMD} @$(filter %.${lnk},$^) $(filter %.$o,$^) ${vOUT_DIR}/staticIdt.$o -o $@
$(call i_noload_${vTOOL},$@,${vOUT_DIR}/elf.tmp)
$q$(vOC) -R intList ${vOUT_DIR}/elf.tmp $@
-@$(HOS_DeleteFiles) ${vOUT_DIR}/staticIdt.*
-@$(HOS_DeleteFiles) ${vOUT_DIR}/isrList.*
-@$(HOS_DeleteFiles) ${vOUT_DIR}/elf.old
-@$(HOS_DeleteFiles) ${vOUT_DIR}/elf.tmp
endef

View File

@ -1,39 +0,0 @@
# defs.ext - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# input file extensions
c ?= c
C ?= cpp
s ?= s
h ?= h
H ?= hpp
hs ?= h

View File

@ -1,43 +0,0 @@
# defs.target - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vARCH ?= $(strip ${ARCH})
vCPU ?= $(strip ${CPU})
vDEVICE ?= $(strip ${DEVICE})
vBSP_VARIANT ?= $(strip ${BSP_VARIANT})
vTOOL ?= $(strip ${VXMICRO_TOOL})
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
target_ERROR = The following must be defined: ARCH, CPU, TOOL
$(if $(and ${vARCH},${vCPU},${vTOOL}),,$(error ${target_ERROR}))
endif

View File

@ -1,42 +0,0 @@
# defs.autoconf.check - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# For rules that really do not need autoconf.mk, do not include it
# (config rule, help rules, and clean rules (including pristine)
ifeq ($(strip ${MAKECMDGOALS}),config)
iIGNORE_AUTOCONF_MK = y
else ifeq (${vGOAL_NEEDS_TARGET_SETUP},n)
iIGNORE_AUTOCONF_MK = y
else
iIGNORE_AUTOCONF_MK = n
endif

View File

@ -1,63 +0,0 @@
# defs.autoconf.kernel - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vAUTOCONF_DIR = ${vKLIB_DIR}/include
vAUTOCONF_H = ${vAUTOCONF_DIR}/autoconf.h
vAUTOCONF_MK = ${vAUTOCONF_DIR}/autoconf.mk
vDOT_AUTOCONF = ${vOUT_DIR}/.autoconf
include ${vMAKE}/target/headers/defs.autoconf.check
ifeq (${iIGNORE_AUTOCONF_MK},n)
include ${vAUTOCONF_MK}
endif
# use := since this is hitting the file system somewhat hard
iKCONF_FILES := $(strip \
$(wildcard ${vMAKE}/target/kconfig/*.kconf) \
$(wildcard ${vMAKE}/target/kconfig/modules/*.kconf) \
$(wildcard ${vMAKE}/target/kconfig/arch/${vARCH}/*.kconf) \
$(wildcard ${vCONFIG_BASE_DIR}/${vBSP}/${vKTYPE}/*.kconf) \
)
iKCONF_PRJ_DIR = ${vKLIB_DIR}/kconfig
iKCONF_TS = ${iKCONF_PRJ_DIR}/.timestamp
# needed by wrsconfig (XXX - all ?)
export WRSCONFIG_ANSWER_FILE = $(abspath ${iPRJ_CONF})
export WRSCONFIG_AUTOHEADER = $(abspath ${vAUTOCONF_H})
export WRSCONFIG_AUTOCONFIG = $(abspath ${vAUTOCONF_MK})
export WRSCONFIG_CONFIG = $(abspath ${vDOT_AUTOCONF})
export WRSCONFIG_ALLCONFIG = $(abspath ${vDOT_AUTOCONF})
# does not have to be provided if not needed
sinclude ${vMAKE}/target/headers/arch/defs.autoconf.${vARCH}

View File

@ -1,43 +0,0 @@
# defs.kver - build system
#
# Copyright (c) 2013-2015 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# Two-digit hexadecimal value with NO '0x' prefix.
vKVER_FLAGS ?= 00
# XXX - get rid of this
KERNEL_VERSION_FLAGS = ${vKVER_FLAGS}
# Two-digit hexadecimal value with NO '0x' prefix.
vKVER_RESERVED ?= 00
# XXX - get rid of this
KERNEL_VERSION_RESERVED ?= ${vKVER_RESERVED}
iKVER_HDR = ${vKLIB_DIR}/include/version.$h

View File

@ -1,64 +0,0 @@
# defs.offsets - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
iOFFSETS_DIR = ${vKLIB_DIR}/include
iOFFSETS_OBJ = ${vKLIB_DIR}/offsets.$o
iOFFSETS_D = $(patsubst %.$o,%.$d,${iOFFSETS_OBJ})
iOFFSETS_HDR = ${iOFFSETS_DIR}/offsets.$h
iOFFSETS_C = ${vBASE}/arch/${vARCH}/core/offsets/offsets.$c
#####
# XXX - delete this define along with the recipe when we're confident there are
# no offsets.h left over in the source tree
iOFFSETS_H_OBSOLETE = ${vBASE}/target/src/kernel/arch/${vARCH}/include/offsets.$h
iOFFSETS_H_RM_OBSOLETE = $(strip \
$q$(if $(wildcard ${iOFFSETS_H_OBSOLETE}),${HOS_DeleteFiles} ${iOFFSETS_H_OBSOLETE},) \
)
#####
iOFFSETS_INC = $(strip \
${vBASE}/include \
${vBASE}/include/microkernel \
${vBASE}/kernel/nanokernel/include \
${vBASE}/arch/${vARCH}/include \
${KERNEL_STDLIB_INCLUDE_DIR} \
${iOFFSETS_DIR} \
)
sinclude ${vMAKE}/target/headers/arch/defs.offsets.${vARCH}
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vMAKE}/target/toolchain/${vTOOL}/defs.offsets
iDOT_D += ${iOFFSETS_D}
endif

View File

@ -1,86 +0,0 @@
# rules.autoconf - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
iTOP_KCONF = ${iKCONF_PRJ_DIR}/bsp-${vKTYPE}${vBSP_VARIANT}.kconf
.PHONY: config
define generate_autoconf_h
-@$(HOS_Echo) '[vxmicro] Generating [autoconf]'
$(call HOS_Wrsconfig,${iTOP_KCONF},$(1))
endef
iBSP_KCONF_VARIANT_HYPHEN_ = -
iBSP_KCONF_VARIANT_HYPHEN_n =
iBSP_KCONF_VARIANT_NO_ = n
iBSP_KCONF_VARIANT_HYPHEN = ${iBSP_KCONF_VARIANT_HYPHEN_${iBSP_KCONF_VARIANT_NO_${vBSP_VARIANT}}}
iBSP_KCONF_VARIANT = ${iBSP_KCONF_VARIANT_HYPHEN}${vBSP_VARIANT}
iBSP_KCONF = ${iKCONF_PRJ_DIR}/bsp.kconf
${iBSP_KCONF}: ${vCONFIG_BASE_DIR}/${vBSP}/bsp${iBSP_KCONF_VARIANT}.kconf | ${iKCONF_PRJ_DIR}/.dir
$q${HOS_CopyFile} $< $@ > ${HOS_DEVNULL_W}
${iKCONF_TS}: ${iKCONF_FILES} | ${iKCONF_PRJ_DIR}/.dir
$q$(foreach file, $?, ${HOS_CopyFile} ${file} $(dir $@) > ${HOS_DEVNULL_W} ${HOS_MultiCmd})
@${HOS_Touch} $@
config: $(if ${iPRJ_CONF},${vDOT_AUTOCONF},) ${iBSP_KCONF} ${iKCONF_TS} | ${vOUT_DIR}/.dir ${vAUTOCONF_DIR}/.dir
$(call generate_autoconf_h,)
${vAUTOCONF_H}: ${vAUTOCONF_MK}
@$(HOS_true)
#####
# If the project does not provide a prj.conf file, autoconf.mk cannot be
# created automatically: the user MUST invoke 'make config'.
#
# If it does exist, if it updated by the user AFTER the autoconf files are
# created (autoconf.mk/autoconf.h/.autoconf), .autoconf must be updated by
# copying prj.conf over .autoconf, or else the changes to prj.conf would not
# be picked up, since .autoconf exists, and is the input file for custom
# defaults.
ifeq (${iPRJ_CONF},)
${vAUTOCONF_MK}:
@${HOS_Echo} "No prj.conf: you must run 'make config' first."
@${HOS_false}
else
${vDOT_AUTOCONF}: ${iPRJ_CONF} | $$(dir $$@).dir
@$(HOS_CopyFile) $< $@ > ${HOS_DEVNULL_W}
${vAUTOCONF_MK}: ${iBSP_KCONF} ${iKCONF_TS} ${vDOT_AUTOCONF} | ${vAUTOCONF_DIR}/.dir
$(call generate_autoconf_h,-S)
endif
#####

View File

@ -1,47 +0,0 @@
# rules.kver - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
iV1 = ${vBASE}/kernel/microkernel/include/v1.$h
iV2 = $(dir ${iKVER_HDR})v2.$h
iV3 = ${vBASE}/kernel/microkernel/include/v3.$h
${iKVER_HDR}: ${iDEPEND_ON_MAKEFILES} ${iV1} ${iV3} | $$(dir $$@).dir
-@$(HOS_Echo) '[kernel] Creating VxMicro kernel version file ... '
@$(HOS_Echo) '${vKVER_NUMBER}${vKVER_FLAGS}${vKVER_RESERVED}' > ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_NUMBER ${vKVER_NUMBER}' >> ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_GENERATION ${vKVER_GEN}' >> ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_MAJOR ${vKVER_MAJ}' >> ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_MINOR ${vKVER_MIN}' >> ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_REVISION ${vKVER_REV}' >> ${iV2}
@$(HOS_Echo) '#define KERNEL_VERSION_STRING ${vKVER_STR}' >> ${iV2}
@$(HOS_Cat3Files) ${iV1} ${iV2} ${iV3} $@ > ${HOS_DEVNULL_W}
-@$(HOS_DeleteFiles) ${iV2} > ${HOS_DEVNULL_W}

View File

@ -1,41 +0,0 @@
# rules.offsets - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
${iOFFSETS_HDR}: ${iOFFSETS_OBJ} | ${iOFFSETS_DIR}/.dir
@${HOS_Echo} '[${vTOOL}] Generating [$(notdir $@)]'
${iOFFSETS_H_RM_OBSOLETE}
$q${HOS_GenOffsetHeader} -i $< -o $@
${iOFFSETS_OBJ}: ${iOFFSETS_C}
@${HOS_Echo} '[${vTOOL}] Compiling [$(notdir $<)]'
$q${vCC} ${iOFFSETS_CFLAGS} ${iCC_DEP} $< ${iCC_DEP_TARGET}$@ ${iCC_DEP_FILE}${@:.o=.d} ${iQUIESCE_DOT_D}
$q${vCC} ${iOFFSETS_CFLAGS} $< -o $@

View File

@ -1,41 +0,0 @@
# ARC.kconf - ARC architecture options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
menu "ARC family options"
config ARC
bool
default y
help
This option signifies the use of an ARC system.
endmenu

View File

@ -1,44 +0,0 @@
# arc_em4.kconf - ARC EM4 options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "arc_v2.kconf"
menu "ARC EM4 processor options"
config CPU_ARCEM4
bool
default y
select CPU_ARCV2
help
This option signifies the use of an ARC EM4 CPU
endmenu

View File

@ -1,207 +0,0 @@
# arc_v2.kconf - ARCv2 family options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "arc.kconf"
menu "ARCv2 family options"
config CPU_ARCV2
bool
default y
select ARC
help
This option signifies the use of a CPU of the ARCv2 family.
config DATA_ENDIANNESS_LITTLE
bool
default y
help
This is driven by the processor implementation, since it is fixed in
hardware. The BSP should set this value to 'n' if the data is
implemented as big endian.
config NUM_IRQ_PRIO_LEVELS
int
prompt "Number of supported interrupt priority levels"
default 1
range 1 16
help
Interrupt priorities available will be 0 to NUM_IRQ_PRIO_LEVELS-1.
The minimum value is 1.
The BSP must provide a valid default for proper operation.
config NUM_REGULAR_IRQ_PRIO_LEVELS
int
prompt "Number of supported regular interrupt priority levels"
default 1
range 1 16
help
This represents the number of Regular Interrupt priorities, which
does NOT include the Fast (FIRQ) priority.
The Regular Interrupt priorities available will be
(NUM_IRQ_PRIO_LEVELS - NUM_REGULAR_IRQ_PRIO_LEVELS) to
(NUM_REGULAR_IRQ_PRIO_LEVELS - 1).
The maximum value is NUM_IRQ_PRIO_LEVELS.
The BSP must provide a valid default for proper operation.
config NUM_IRQS
int
prompt "Upper limit of interrupt numbers/IDs used"
default 1
range 1 256
help
Interrupts available will be 0 to NUM_IRQS-1.
The minimum value is 1.
The BSP must provide a valid default. This drives the size of the
vector table.
config FIRQ_STACK_SIZE
int
prompt "Size of stack for FIRQs (in bytes)"
depends on CPU_ARCV2
default 1024
help
FIRQs and regular IRQs have different stacks so that a FIRQ can start
running without doing stack switching in software.
config STACK_CHECKING
bool
prompt "ARC CPU stack checking is enabled/disabled."
depends on ENHANCED_SECURITY
default y
help
Enable or disable CPU stack checking.
config FAULT_DUMP
int
prompt "Fault dump level"
default 2
help
Different levels for display information when a fault occurs.
2: The default. Display specific and verbose information. Consumes
the most memory (long strings).
1: Display general and short information. Consumes less memory
(short strings).
0: Off.
config XIP
default n if NSIM
default y
config SW_ISR_TABLE
bool
prompt "Enable software interrupt handler table"
default y
help
Enable an interrupt handler table implemented in software. This
table, unlike ISRs connected directly in the vector table, allow
a parameter to be passed to the interrupt handlers. Also, invoking
the exeception/interrupt exit stub is automatically done.
This has to be enabled for dynamically connecting interrupt handlers
at runtime (SW_ISR_TABLE_DYNAMIC).
config SW_ISR_TABLE_DYNAMIC
bool
prompt "Allow installing interrupt handlers at runtime"
depends on SW_ISR_TABLE
default y
help
This option enables nanoCpuIntConnect(). It moves the ISR table to
SRAM so that it is writable. This has the side-effect of removing
write-protection on the ISR table.
config SW_ISR_TABLE_STATIC_CUSTOM
bool
prompt "Projects provide a custom static software ISR table"
depends on SW_ISR_TABLE && !SW_ISR_TABLE_DYNAMIC
default n
help
Projects, not the BSP, provide a software table of ISR and their
parameters. The table is static, and thus ISRs cannot be connected
at runtime.
config SW_ISR_TABLE_BSP
bool
# omit prompt to signify a "hidden" option
depends on SW_ISR_TABLE_DYNAMIC || (SW_ISR_TABLE && !SW_ISR_TABLE_STATIC_CUSTOM)
default y
help
Not user-selectable, helps build system logic.
config IRQ_VECTOR_TABLE_CUSTOM
bool
prompt "Projects provide a custom static IRQ part of vector table"
depends on !SW_ISR_TABLE
default n
help
Projects, not the BSP, provide the IRQ part of the vector table.
This is the table of interrupt handlers with the best potential
performance, but is the less flexible.
The ISRs are installed directly in the vector table, thus are
directly called by the CPU when an interrupt is taken. This adds
the least overhead when handling an interrupt.
Downsides:
- ISRs cannot have a parameter
- ISRs cannot be connected at runtime
- ISRs must notify the kernel manually by invoking _ExcExit() when
then are about to return.
config IRQ_VECTOR_TABLE_BSP
bool
# omit prompt to signify a "hidden" option
depends on SW_ISR_TABLE || !IRQ_VECTOR_TABLE_CUSTOM
default y
help
Not user-selectable, helps build system logic.
config ARCH_HAS_TASK_ABORT
bool
# omit prompt to signify a "hidden" option
default n
config ARCH_HAS_NANO_FIBER_ABORT
bool
# omit prompt to signify a "hidden" option
default n
endmenu

View File

@ -1,39 +0,0 @@
# build.kconf - ARC build-related configuration options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# compile and link features
#
menu "Compilation & Linkage Options"
source "build-base.kconf"
endmenu

View File

@ -1,79 +0,0 @@
# kernel-core.kconf - ARC fundamental kernel configuration options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# fundamental kernel features
#
# ARM systems are small in general, and the enhanced security adds significant
# footprint, so turn it off by default.
config ENHANCED_SECURITY
bool
default n
menu "Basic Kernel Options"
source "basic.kconf"
endmenu
menu "Security Options"
depends on ENHANCED_SECURITY
source "security_basic.kconf"
endmenu
menu "Advanced Power Management Options"
depends on MICROKERNEL
# Tickless idle requires wrapped ISR handlers to handle early wakeup from idle.
config TICKLESS_IDLE_UNSUPPORTED
# omit prompt to signify a "hidden" option
bool
default y if !SW_ISR_TABLE
default n
source "apm.kconf"
endmenu
menu "Input-Output Options"
source "io.kconf"
endmenu
menu "System Monitoring Options"
source "monitor.kconf"
endmenu
menu "Debugging Options"
source "debug.kconf"
endmenu
menu "Miscellaneous Kernel Options"
source "misc.kconf"
endmenu

View File

@ -1,134 +0,0 @@
# ARM.kconf - ARM architecture options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
menu "ARM family options"
config ARM
bool
default y
help
This option signifies the use of an ARM system.
config ISA_THUMB2
bool
# omit prompt to signify a "hidden" option
default y
help
From: http://www.arm.com/products/processors/technologies/instruction-set-architectures.php
Thumb-2 technology is the instruction set underlying the ARM Cortex
architecture which provides enhanced levels of performance, energy
efficiency, and code density for a wide range of embedded
applications.
Thumb-2 technology builds on the success of Thumb, the innovative
high code density instruction set for ARM microprocessor cores, to
increase the power of the ARM microprocessor core available to
developers of low cost, high performance systems.
The technology is backwards compatible with existing ARM and Thumb
solutions, while significantly extending the features available to
the Thumb instructions set. This allows more of the application to
benefit from the best in class code density of Thumb.
For performance optimised code Thumb-2 technology uses 31 percent
less memory to reduce system cost, while providing up to 38 percent
higher performance than existing high density code, which can be used
to prolong battery-life or to enrich the product feature set. Thumb-2
technology is featured in the processor, and in all ARMv7
architecture-based processors.
config ISA_ARM
bool
prompt "Build with the ARM instruction set" if !ISA_THUMB2
default y
depends on !ISA_THUMB2
help
From: http://www.arm.com/products/processors/technologies/instruction-set-architectures.php
The ARM 32-bit instruction set is the base 32-bit ISA used in the
ARMv4T, ARMv5TEJ and ARMv6 architectures. In these architectures it
is used in applications requiring high performance, or for handling
hardware exceptions such as interrupts and processor start-up.
The ARM 32-bit ISA is also supported in the Cortex-A and Cortex-R
profiles of the Cortex architecture for performance critical
applications, and for legacy code. Most of its functionality is
subsumed into the Thumb-2 instruction set, which also benefits from
improved code density.
ARM instructions are 32-bits wide, and are aligned on 4-byte
boundaries.
All ARM instructions can also be conditionalised to only execute when
previous instructions have set a particular condition code. This
means that instructions only have their normal effect on the
programmers model operation, memory and coprocessors if the N, Z, C
and V flags in the Application Program Status Register satisfy a
condition specified in the instruction. If the flags do not satisfy
this condition, the instruction acts as a NOP, that is, execution
advances to the next instruction as normal, including any relevant
checks for exceptions being taken, but has no other effect. This
conditionalisation of instructions allows small sections of if- and
while-statements to be encoded without the use of branch
instructions.
config ISA_THUMB
bool
prompt "Build with the THUMB instruction set" if !ISA_THUMB2
default n
depends on !ISA_ARM && !ISA_THUMB2
help
From: http://www.arm.com/products/processors/technologies/instruction-set-architectures.php
Thumb technology is an extension to the 32-bit ARM architecture. The
Thumb instruction set features a subset of the most commonly used
32-bit ARM instructions which have been compressed into 16-bit wide
opcodes. On execution, these 16-bit instructions are decompressed
transparently to full 32-bit ARM instructions in real time without
performance loss.
Designers can use both 16-bit Thumb and 32-bit ARM instructions sets
and therefore have the flexibility to emphasise performance or code
size on a sub-routine level as their applications require.
A Thumb-aware core is a standard ARM processor fitted with a Thumb
decompressor in the instruction pipeline. The designer therefore
gets all the underlying power of the 32-bit ARM architecture as well
as excellent code density from Thumb, all at 8-bit system cost.
Thumb has better code density than common 8 and 16-bit CISC/RISC
Controllers and is at a fraction of the code size of traditional
32-bit architectures. This means that program memory can be smaller
and hence cost reduced.
endmenu

View File

@ -1,44 +0,0 @@
# ARM_Cortex.kconf - ARM Cortex family options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "ARM.kconf"
menu "ARM Cortex family options"
config CPU_CORTEX
bool
default y
select ARM
help
This option signifies the use of a CPU of the Cortex family.
endmenu

View File

@ -1,128 +0,0 @@
# ARM_CortexM.kconf - ARM Cortex-M family options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "ARM_Cortex.kconf"
menu "ARM Cortex-M family options"
config CPU_CORTEXM
bool
default y
select CPU_CORTEX
select ISA_THUMB2
help
This option signifies the use of a CPU of the Cortex-M family.
config LDREX_STREX_AVAILABLE
bool
default y
config DATA_ENDIANNESS_LITTLE
bool
default y
help
This is driven by the processor implementation, since it is fixed in
hardware. The BSP should set this value to 'n' if the data is
implemented as big endian.
config STACK_ALIGN_DOUBLE_WORD
bool
prompt "Align stacks on double-words (8 octets)"
default y
help
This is needed to conform to AAPCS, the procedure call standard for
the ARM. It wastes stack space.
config NUM_IRQS
int
prompt "Upper limit of interrupt numbers/IDs used"
default 1
range 1 1000
help
Interrupts available will be 0 to NUM_IRQS-1.
The minimal value is 1.
The BSP must provide a valid default. This drives the size of the
vector table.
config STACK_GROWS_DOWN
bool
prompt "Stacks grow down"
default y
help
Stacks can grow either up or down. Down is the default. Don't change
this unless you have a very good reason to do so.
config NUM_IRQ_PRIO_BITS
int
# hidden option, implemented by BSP
help
Cortex-M chips can implement up to 8 bits of interrupt priorities,
for a maximum of 256 priorities. Most chips implement fewer than 8.
The BSP must define the correct value.
config RUNTIME_NMI
bool
prompt "Attach an NMI handler at runtime"
default n
help
VxMicro provides a simple NMI handler that simply hangs in a tight
loop if triggered. This fills the requirement that there must be an
NMI handler installed when the CPU boots. If a custom handler is
needed, enable this option and attach it via _NmiHandlerSet().
config ATOMIC_IDLE_WFI
bool
# hidden option, implemented by BSP
help
The BSP sets this if wfi instruction can be interrupted by an
already pending exception while primask is set.
config FAULT_DUMP
int
prompt "Fault dump level"
default 2
help
Different levels for display information when a fault occurs.
2: The default. Display specific and verbose information. Consumes
the most memory (long strings).
1: Display general and short information. Consumes less memory
(short strings).
0: Off.
config XIP
default y
endmenu

View File

@ -1,140 +0,0 @@
# ARM_CortexM3.kconf - ARM Cortex-M3+ options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "ARM_CortexM.kconf"
menu "ARM Cortex-M3 options"
config CPU_CORTEXM3
# omit prompt to signify a "hidden" option
bool
default y
select CPU_CORTEXM
help
This option signifies the use of a Cortex-M3+ CPU
config SW_ISR_TABLE
bool
prompt "Enable software interrupt handler table"
default y
help
Enable an interrupt handler table implemented in software. This
table, unlike ISRs connected directly in the vector table, allow
a parameter to be passed to the interrupt handlers. Also, invoking
the exeception/interrupt exit stub is automatically done.
This has to be enabled for dynamically connecting interrupt handlers
at runtime (SW_ISR_TABLE_DYNAMIC).
config SW_ISR_TABLE_DYNAMIC
bool
prompt "Allow installing interrupt handlers at runtime"
depends on SW_ISR_TABLE
default y
help
This option enables irq_connect(). It moves the ISR table to
SRAM so that it is writable. This has the side-effect of removing
write-protection on the ISR table.
config SW_ISR_TABLE_STATIC_CUSTOM
bool
prompt "Projects provide a custom static software ISR table"
depends on SW_ISR_TABLE && !SW_ISR_TABLE_DYNAMIC
default n
help
Projects, not the BSP, provide a software table of ISR and their
parameters. The table is static, and thus ISRs cannot be connected
at runtime.
config SW_ISR_TABLE_BSP
bool
# omit prompt to signify a "hidden" option
depends on SW_ISR_TABLE_DYNAMIC || (SW_ISR_TABLE && !SW_ISR_TABLE_STATIC_CUSTOM)
default y
help
Not user-selectable, helps build system logic.
config IRQ_VECTOR_TABLE_CUSTOM
bool
prompt "Projects provide a custom static IRQ part of vector table"
depends on !SW_ISR_TABLE
default n
help
Projects, not the BSP, provide the IRQ part of the vector table.
This is the table of interrupt handlers with the best potential
performance, but is the less flexible.
The ISRs are installed directly in the vector table, thus are
directly called by the CPU when an interrupt is taken. This adds
the least overhead when handling an interrupt.
Downsides:
- ISRs cannot have a parameter
- ISRs cannot be connected at runtime
- ISRs must notify the kernel manually by invoking _ExcExit() when
then are about to return.
config IRQ_VECTOR_TABLE_BSP
bool
# omit prompt to signify a "hidden" option
depends on SW_ISR_TABLE || !IRQ_VECTOR_TABLE_CUSTOM
default y
help
Not user-selectable, helps build system logic.
config ZERO_LATENCY_IRQS
bool
prompt "Enable zero-latency interrupts"
default n
help
Interrupt locking is done by setting exception masking to priority
one, thus allowing exception of priority zero to still come in. By
default, the kernel verifies, via __ASSERT() statements, that the
interrupt priority is not set to zero when either connecting them or
setting their priority. Enabling this option disables the check,
thus allowing setting the priority of interrupts to zero.
Note that this is a somewhat dangerous option: ISRs of priority zero
interrupts cannot use any kernel functionality.
config ARCH_HAS_TASK_ABORT
bool
# omit prompt to signify a "hidden" option
default y
config ARCH_HAS_NANO_FIBER_ABORT
bool
# omit prompt to signify a "hidden" option
default y
endmenu

View File

@ -1,67 +0,0 @@
# ARM_CortexM4.kconf - ARM Cortex-M4 options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
source "ARM_CortexM3.kconf"
menu "ARM Cortex-M4 options"
config CPU_CORTEXM4
# omit prompt to signify a "hidden" option
bool
default y
select CPU_CORTEXM3
help
This option signifies the use of a Cortex-M4 CPU
config FLOAT
bool
prompt "Support floating point instructions" if FLOAT_AVAILABLE
default n
help
This option enables the usage of floating point instructions and
registers.
BSP must set FLOAT_AVAILABLE to enable this option.
config AUTOMATIC_FP_ENABLING
bool
prompt "Automatic FP enabling upon first usage from a context"
depends on FLOAT
default n
help
This option adds automatic support for enabling floating point in
a context when said context first uses a floating point
instruction. This adds is a slight performance penalty (one load
instruction) in the main exception stub and a results in a slightly
larger overall code size.
endmenu

View File

@ -1,40 +0,0 @@
# build.kconf - ARM build-related configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# compile and link features
#
menu "Compilation & Linkage Options"
source "build-base.kconf"
endmenu

View File

@ -1,79 +0,0 @@
# kernel-core.kconf - ARM fundamental kernel configuration options
#
# Copyright (c) 2012-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# fundamental kernel features
#
# ARM systems are small in general, and the enhanced security adds significant
# footprint, so turn it off by default.
config ENHANCED_SECURITY
bool
default n
menu "Basic Kernel Options"
source "basic.kconf"
endmenu
menu "Security Options"
depends on ENHANCED_SECURITY
source "security_basic.kconf"
endmenu
menu "Advanced Power Mangement Options"
depends on MICROKERNEL
# Tickless idle requires wrapped ISR handlers to handle early wakeup from idle.
config TICKLESS_IDLE_UNSUPPORTED
# omit prompt to signify a "hidden" option
bool
default y if !SW_ISR_TABLE
default n
source "apm.kconf"
endmenu
menu "Input-Output Options"
source "io.kconf"
endmenu
menu "System Monitoring Options"
source "monitor.kconf"
endmenu
menu "Debugging Options"
source "debug.kconf"
endmenu
menu "Miscellaneous Kernel Options"
source "misc.kconf"
endmenu

View File

@ -1,469 +0,0 @@
# Intel-core.kconf - fundamental Intel architecture configuration options
#
# Copyright (c) 2011-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# Architecture-specific options
# - defines options that are specific to BSPs based on this architecture
# - provides defaults for many (but not all) options; BSP configuration
# files must specify default values for options that lack them and
# may override the defaults specified here if required
#
# CPU type options that are currently supported
# (BSP must choose one)
#
config CPU_MINUTEIA
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies the use of a CPU from the Minute IA family.
config CPU_PENTIUM4
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies the use of a CPU from the Pentium 4 family.
#
# options that are directly tied to a CPU type
# (BSP shouldn't need to override the default value of any of these)
#
config ISA_IA32
bool
# omit prompt to signify a "hidden" option
default y if CPU_MINUTEIA || CPU_PENTIUM4
default n
help
This option signifies the use of a CPU based on the Intel IA-32
instruction set architecture.
config GLOBAL_PAGE_MAPPING
bool
# omit prompt to signify a "hidden" option
default n if CPU_MINUTEIA
default y
help
This option enables the use of global page mapping, which is only
applicable to Intel CPUs that are Pentium II or later.
config HARDWARE_BP_SUPPORTED
bool
# omit prompt to signify a "hidden" option
default y if ISA_IA32
default n
help
This option signifies that the target supports hardware-based
instruction breakpoints and/or data watchpoints.
config INVLPG_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies the use of an Intel CPU that lacks support
for the INVLPG instruction (i.e. any CPU that predates the i486).
config CMOV_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default y if CPU_MINUTEIA
default n
help
This option signifies the use of an Intel CPU that lacks support
for the CMOV instruction.
config CPU_FLOAT_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default y if CPU_MINUTEIA
default n
select CPU_SSE_UNSUPPORTED
help
This option signifies the use of an Intel CPU that lacks support
for floating point operations.
config CPU_SSE_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies the use of an Intel CPU that lacks support
for SSEx instructions (i.e. those which pre-date Pentium III).
config CACHE_LINE_SIZE
int
# omit prompt to signify a "hidden" option
default 64 if CPU_PENTIUM4
default 0
help
Size in bytes of a CPU cache line.
#
# options that indicate if a target board supports certain capabilities or not
# (BSP must select those that apply to it)
#
config UNALIGNED_WRITE_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target may not properly decode the
IA-32 processor's byte enable (BE) lines, resulting in the inability
to read/write unaligned quantities.
config LOCK_INSTRUCTION_UNSUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target lacks support for the IA-32
LOCK prefix instruction. Code running on such targets cannot
use the LOCK prefix to perform read-modify-write operations in an
atomic manner; such targets must utilize other techniques to perform
atomic operations (such as locking interrupts).
# CLFLUSH was introduced with PENTIUM4 processors, but might not be
# available. The default QEMU implementation used by VxMicro (-cpu qemu32) does
# not support it.
config CPU_MIGHT_SUPPORT_CLFLUSH
bool
# omit prompt to signify a "hidden" option
default n
help
If a BSP uses a processor that possibly implements CLFLUSH, change
the default in that BSP's config file.
config CLFLUSH_INSTRUCTION_SUPPORTED
bool
prompt "CLFLUSH instruction supported" if CPU_MIGHT_SUPPORT_CLFLUSH
depends on CPU_MIGHT_SUPPORT_CLFLUSH
default n
help
Only enable this if the CLFLUSH instruction is supported, so that
an implementation of _SysCacheFlush() that uses CLFLUSH is made
available, instead of the one using WBINVD.
config BOI_HANDLER_SUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target has one or more devices whose
driver utilizes a "beginning of interrupt" handler that gets called
before VxMicro's standard interrupt handling code. This capability
can be used by the driver to suppress spurious interrupts generated
by the device (or for other purposes).
config EOI_HANDLER_SUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target has one or more devices whose
driver utilizes an "end of interrupt" handler that gets called
after VxMicro's standard interrupt handling code. This capability
can be used by the driver to tell the device that an interrupt
has been handled (or for other purposes).
config IOAPIC
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target has an IO-APIC device. This
capability allows IO-APIC-dependent code to be included.
config LOAPIC
bool
# omit prompt to signify a "hidden" option
default n
help
This option selects local APIC as the interrupt controller.
config PIC
bool
# omit prompt to signify a "hidden" option
default n
help
This option selects legacy i8259 as the interrupt controller.
config SHUTOFF_PIC
bool
# omit prompt to signify a "hidden" option
depends on !PIC
default n
help
This option disables all interrupts on the PIC
config HPET_TIMER
bool
# omit prompt to signify a "hidden" option
default n
help
This option selects High Precision Event Timer (HPET) as a
system timer.
config LOAPIC_TIMER
bool
# omit prompt to signify a "hidden" option
depends on LOAPIC
default n
help
This option selects LOAPIC timer as a system timer.
config LOAPIC_TIMER_FREQ
int
# omit prompt to signify a "hidden" option
depends on LOAPIC_TIMER
default 0
help
This option specifies LOAPIC timer frequency in HZ.
config PIT
bool
# omit prompt to signify a "hidden" option
default n
help
This option selects legacy i8253 timer as system timer.
config PCI
bool
# omit prompt to signify a "hidden" option
default n
help
This options enables support of PCI bus enumeration for device
drivers.
config EXTRA_SERIAL_PORT
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies the number of serial ports the target has.
config SERIAL_INTERRUPT_LEVEL
bool
# omit prompt to signify a "hidden" option
depends on IOAPIC && EXTRA_SERIAL_PORT
default y
help
Option signifies that the serial controller uses level interrupts
instead of edge
config SERIAL_INTERRUPT_LOW
bool
# omit prompt to signify a "hidden" option
depends on IOAPIC && EXTRA_SERIAL_PORT
default n
help
Option signifies that the serial controller uses low level interrupts
instead of high
config CUSTOM_RANDOM_GENERATOR
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target uses custom random number
generator.
# options that indicate if a specific capability is supported or not
# (BSP must select those that apply to it)
config DYNAMIC_INT_STUBS
bool
# omit prompt to signify a "hidden" option
default n
help
This option allows a BSP's drivers to install interrupt handlers
at run time, if desired. If not enabled, interrupt handlers can only
be installed statically when the VxMicro image is created.
config PROT_MODE_SWITCH_PROMPT
bool
# omit prompt to signify a "hidden" option
default n
help
This option allows users to select the value of the PROT_MODE_SWITCH
configuration option.
config ADVANCED_IDLE_SUPPORTED
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target supports the ADVANCED_IDLE
configuration option.
#
# boot sequence features
#
menu "Boot Sequence Options"
depends on PROT_MODE_SWITCH_PROMPT
config PROT_MODE_SWITCH
bool
prompt "Switch to 32-bit protected mode when booting"
default n
help
This option causes the kernel to transition from real mode (16-bit)
to protected mode (32-bit) during its initial booting sequence.
endmenu
config BOOT_A20_ENABLE
bool
# omit prompt to signify a "hidden" option
depends on PROT_MODE_SWITCH
default n
help
This option causes the A20 line to be enabled during the transition
from real mode (16-bit) to protected mode (32-bit) during its initial
booting sequence.
#
# memory layout features
#
menu "Memory Layout Options"
config IDT_NUM_VECTORS
int
prompt "Number of IDT vectors"
default 256
help
This option specifies the number of interrupt vector entries in the
Interrupt Descriptor Table (IDT). By default all 256 vectors are
supported in an IDT requiring 2048 bytes of memory.
config NUM_GDT_SPARE_ENTRIES
int
prompt "Number of spare GDT entries"
default 0
help
This option specifies the number of spare entries in the Global
Descriptor Table (GDT).
config PHYS_LOAD_ADDR
hex
# omit prompt to signify a "hidden" option
# default value must be supplied by BSP
help
This option specifies the physical address where the kernel is loaded.
endmenu
#
# floating point features
#
menu "Floating Point Options"
depends on !CPU_FLOAT_UNSUPPORTED
config FLOAT
bool
prompt "Floating point instructions"
default n
select FP_SHARING if ENHANCED_SECURITY
help
This option enables the use of x87 FPU and MMX instructions by
a task or fiber.
Disabling this option means that any task or fiber that uses a
floating point instruction will get a fatal exception.
config SSE
bool
prompt "SSEx instructions"
depends on FLOAT && !CPU_SSE_UNSUPPORTED
default n
help
This option enables the use of SSEx instructions by a task or fiber.
Disabling this option means that no task or fiber may use SSEx
instructions; any such use will result in undefined behavior.
config FP_SHARING
bool
prompt "Floating point resource sharing" if !ENHANCED_SECURITY
depends on FLOAT
default n
select AUTOMATIC_FP_ENABLING if ENHANCED_SECURITY
help
This option allows multiple tasks and fibers to safely utilize
floating point hardware resources. Every task or fiber that wishes
to use floating point instructions (i.e. x87 FPU, MMX, or SSEx) must
be created with such support already enabled, or must enable this
support via task_float_enable() or fiber_float_enable() before
executing these instructions.
Enabling this option adds 108 bytes to the stack size requirement
of each task or fiber that utilizes x87 FPU or MMX instructions,
and adds 464 bytes to the stack size requirement of each task or
fiber that utilizes SSEx instructions. (The stack size requirement
of tasks and fibers that do not utilize floating point instructions
remains unchanged.)
Disabling this option means that only a single task or fiber may
utilize x87 FPU, MMX, or SSEx instructions. (The stack size
requirement of all tasks and fibers remains unchanged.)
config AUTOMATIC_FP_ENABLING
bool
prompt "Automatically enable floating point resource sharing" \
if !ENHANCED_SECURITY
depends on FP_SHARING
default n
help
This option allows tasks and fibers to safely utilize floating
point hardware resources without requiring them to first indicate
their intention to do so. The system automatically detects when
a task or fiber that does not currently have floating point support
enabled uses a floating point instruction, and automatically executes
task_float_enable() or fiber_float_enable() on its behalf. The
task or fiber is enabled for using x87 FPU, MMX, or SSEx instructions
if SSE is configured, otherwise it is enabled for using x87 FPU or
MMX instructions only.
config XIP
default n
endmenu

View File

@ -1,58 +0,0 @@
# build.kconf - Intel build-related configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# compile and link features
#
menu "Compilation & Linkage Options"
source "build-base.kconf"
config SSE_FP_MATH
bool
prompt "Compiler-generated SSEx instructions" if FP_SHARING
depends on SSE && ISA_IA32
default n if FP_SHARING
default y if !FP_SHARING
help
This option allows the compiler to generate SSEx instructions for
performing floating point math. This can greatly improve performance
when exactly the same operations are to be performed on multiple
data objects; however, it can also significantly reduce performance
when pre-emptive task switches occur because of the larger register
set that must be saved and restored.
Disabling this option means that the compiler utilizes only the
x87 instruction set for floating point operations.
endmenu

View File

@ -1,84 +0,0 @@
# kernel-core.kconf - Intel fundamental kernel configuration options
#
# Copyright (c) 2012-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# fundamental kernel features
#
menu "Basic Kernel Options"
source "basic.kconf"
endmenu
menu "Security Options"
depends on ENHANCED_SECURITY
source "security_basic.kconf"
endmenu
menu "Advanced Power Mangement Options"
depends on MICROKERNEL
config TICKLESS_IDLE_UNSUPPORTED
# omit prompt to signify a "hidden" option
bool
default n
source "apm.kconf"
endmenu
menu "Input-Output Options"
source "io.kconf"
endmenu
menu "System Monitoring Options"
source "monitor.kconf"
config CPU_CLOCK_FREQ_MHZ
int
prompt "CPU CLock Frequency in MHz"
default 20
depends on BOOT_TIME_MEASUREMENT
help
This option specifies the CPU Clock Frequency in MHz in order to
convert Intel RDTSC timestamp to microseconds.
endmenu
menu "Debugging Options"
source "debug.kconf"
endmenu
menu "Miscellaneous Kernel Options"
source "misc.kconf"
endmenu

View File

@ -1,91 +0,0 @@
# apm.kconf - advanced power management configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# advanced power management features
#
config ADVANCED_POWER_MANAGEMENT
bool
prompt "Advanced power management"
default n
help
This option enables the BSP to implement extra power management
policies whenever the kernel becomes idle. The kernel informs the
BSP of the number of ticks until the next kernel timer expires by
calling the BSP function _sys_power_save_idle().
config TICKLESS_IDLE
bool
prompt "Tickless idle"
default y
depends on ADVANCED_POWER_MANAGEMENT && !TICKLESS_IDLE_UNSUPPORTED
help
This option suppresses periodic system clock interrupts whenever the
kernel becomes idle. This permits the system to remain in a power
saving state for extended periods without having to wake up to
service each tick as it occurs.
config TICKLESS_IDLE_THRESH
int
prompt "Tickless idle threshold"
default 3
depends on TICKLESS_IDLE
help
This option disables clock interrupt suppression when the kernel idles
for only a short period of time. It specifies the minimum number of
ticks that must occur before the next kernel timer expires in order
for suppression to happen.
config ADVANCED_IDLE
bool
prompt "Advanced idle state"
default n
depends on ADVANCED_POWER_MANAGEMENT && ADVANCED_IDLE_SUPPORTED
help
This option enables the kernel to interface to a custom advanced idle
power saving manager. This permits the system to enter a custom
power saving state when the kernel becomes idle for extended periods,
and then to restore the system to its previous state (rather than
booting up from scratch) when the kernel is re-activated.
config ADV_IDLE_STACK_SIZE
int
prompt "Advanced idle state stack size"
default 16
depends on ADVANCED_IDLE
help
This option defines the size of the separate stack used during the
system state check while the booting up. A separate stack is used
to avoid memory corruption on the system re-activation from power
down mode. The stack size must be large enough to hold the return
address (4 bytes) and the _AdvIdleCheckSleep() stack frame.

View File

@ -1,59 +0,0 @@
# basic.kconf - fundamental kernel configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# fundamental kernel features
#
config ENHANCED_SECURITY
bool
prompt "Enhanced security features"
default y
help
This option enables all security features supported by VxMicro,
including those that can have a significant impact on system
footprint or performance; it also prevents the use of certain kernel
features that have known security risks.
Users can customize these settings using the CUSTOM_SECURITY option
in the "Security Options" menu.
config XIP
bool
prompt "Execute in place"
help
This option allows the kernel to operate with its text and read-only
sections residing in ROM (or similar read-only memory). Not all BSPs
support this option so it must be used with care; you must also
supply a linker command file when building your image. Enabling this
option increases both the code and data footprint of the image.

View File

@ -1,152 +0,0 @@
# bluetooth.kconf - Bluetooth LE configuration options
#
# Copyright (c) 2015 Intel Corporation
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Intel Corporation nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# Bluetooth options
#
config BLUETOOTH
bool
prompt "Bluetooth LE support [EXPERIMENTAL]"
default n
help
This option enables Bluetooth Low Energy support.
config BLUETOOTH_MAX_CONN
int
prompt "Maximum number of simultaneous connections"
depends on BLUETOOTH
default 1
range 1 16
help
Maximum number of simultaneous Bluetooth connections
supported. The minimum (and default) number is 1.
config BLUETOOTH_MAX_PAIRED
int
prompt "Maximum number of paired devices"
depends on BLUETOOTH
default 1
range 1 32
help
Maximum number of paired Bluetooth devices. The minimum (and
default) number is 1.
config BLUETOOTH_DEBUG
bool
prompt "Bluetooth LE debug support"
depends on BLUETOOTH
select STDOUT_CONSOLE
default n
help
This option enables Bluetooth debug going to standard
serial console.
config BLUETOOTH_DEBUG_HCI_CORE
bool
prompt "Bluetooth HCI core debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth HCI
core
config BLUETOOTH_DEBUG_BUF
bool
prompt "Bluetooth buffers debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth buffers.
config BLUETOOTH_DEBUG_CONN
bool
prompt "Bluetooth connection debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth
connection handling.
config BLUETOOTH_DEBUG_L2CAP
bool
prompt "Bluetooth L2CAP debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for the Bluetooth
L2ACP layer.
config BLUETOOTH_DEBUG_SMP
bool
prompt "Bluetooth Security Manager Protocol (SMP) debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for the Bluetooth
Security Manager Protocol (SMP).
config BLUETOOTH_DEBUG_ATT
bool
prompt "Bluetooth Attribute Protocol (ATT) debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for the Bluetooth
Attribute Protocol (ATT).
config BLUETOOTH_DEBUG_GATT
bool
prompt "Bluetooth Generic Attribute Profile (GATT) debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for the Bluetooth
Generic Attribute Profile (GATT).
config BLUETOOTH_UART
bool
prompt "Bluetooth UART driver"
depends on BLUETOOTH
select UART_INTERRUPT_DRIVEN
default n
help
Enable Bluetooth UART driver.
config BLUETOOTH_DEBUG_UART
bool
prompt "Bluetooth UART driver debug"
depends on BLUETOOTH_UART && BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth UART
driver

View File

@ -1,54 +0,0 @@
# build-base.kconf - build-related configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# compile and link features
#
config COMPILER_OPT
string
prompt "Custom compiler options"
default ""
help
This option is a free-form string that is passed to the compiler.
The compiler options specified by this string supplement the
pre-defined set of compiler supplied by the VxMicro build system,
and can be used to change compiler optimization, warning and error
messages, and so on.
config BUILD_TIMESTAMP
bool
prompt "Build timestamp"
default n
help
This option embeds a string into the project image that indicates
the date and time the image was created.

View File

@ -1,78 +0,0 @@
# debug.kconf - debugging configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# debugging features
#
config ASSERT
bool
prompt "Enable __ASSERT() macro"
default n
help
This enables the __ASSERT() macro in the kernel code. If an assertion
fails, the calling thread is put on an infinite tight loop. Since
enabling this adds a significant footprint, it should only be enabled
in a non-production system.
config ASSERT_LEVEL
int
prompt "__ASSERT() level"
default 1
depends on ASSERT
help
This option specifies the assertion level used by the __ASSERT()
macro. It can be set to one of three possible values:
Level 0: off
Level 1: on + warning in every file that includes __assert.h
Level 2: on + no warning
config TASK_DEBUG
bool
prompt "Task debugging [EXPERIMENTAL]"
default n
help
This option allows execution of all tasks (with the exception of
essential system tasks) to be suspended so that debugging operations
can be performed.
config GDB_INFO
bool
prompt "OS-aware debugging with GDB [EXPERIMENTAL]"
default n
select CONTEXT_MONITOR
help
This option enables the kernel to support OS-aware debugging
using GDB by collecting additional information required by the
debugger. System behavior during interrupts, exceptions, and
context switches may be impacted by the collection of this data.

View File

@ -1,70 +0,0 @@
# io.kconf - I/O configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# system I/O features
#
config STDOUT_CONSOLE
bool
prompt "Send stdout to console"
default n
help
This option directs standard output (e.g. printf) to the console
device, rather than suppressing in entirely.
config PRINTK
bool
prompt "Send printk() to console"
default y
help
This option directs printk() debugging output to the console device,
rather than suppressing the generation of printk() output entirely.
Output is sent immediately, without any mutual exclusion or
buffering.
config UART_INTERRUPT_DRIVEN
bool
prompt "Interrupt driven UART support"
default n
help
This option enables interrupt support for UART allowing console
input and UART based drivers.
config CONSOLE_HANDLER
bool
prompt "Enable console input handler"
select UART_INTERRUPT_DRIVEN
default n
help
This option enables console input handler allowing to write simple
interaction between serial console and the OS.

View File

@ -1,204 +0,0 @@
# misc.kconf - miscellaneous configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# miscellaneous features & settings
#
config MAIN_STACK_SIZE
int
prompt "Background task stack size (in bytes)"
default 1024
help
This option specifies the size of the stack used by the kernel's
background task, whose entry point is main().
config ISR_STACK_SIZE
int
prompt "ISR and initialization stack size (in bytes)"
default 2048
help
This option specifies the size of the stack used by interrupt
service routines (ISRs), and during nanokernel initialization.
config MICROKERNEL_SERVER_STACK_SIZE
int
prompt "Microkernel server fiber (K_swapper) stack size"
default 1024
depends on MICROKERNEL
help
This option specifies the size of the stack used by the microkernel
server fiber, whose entry point is K_swapper(). This must be able
to handle the deepest call stack for internal handling of microkernel
objects used by a kernel's project.
config NUM_TASK_PRIORITIES
int
prompt "Number of task priorities"
default 16
range 1 256
depends on MICROKERNEL
help
This option specifies the number of task priorities supported by the
task scheduler. Specifying "N" provides support for task priorities
ranging from 0 (highest) through N-2; task priority N-1 (lowest) is
reserved for the kernel's idle task.
config NUM_COMMAND_PACKETS
int
prompt "Number of command packets"
default 16
depends on MICROKERNEL
help
This option specifies the number of packets in the command packet pool.
This pool needs to be large enough to accommodate all in-flight
asynchronous command requests as well as those internally issued by
the microkernel server fiber (K_swapper).
config COMMAND_STACK_SIZE
int
prompt "K_swapper command stack size (in packets)"
default 64
range 1 256
depends on MICROKERNEL
help
This option specifies the maximum number of command packets that
can be queued up for processing by the kernel's K_swapper fiber.
config SYS_CLOCK_TICKS_PER_SEC
int
prompt "System tick frequency" if !NO_ISRS
default 0 if NO_ISRS
default 100
help
This option specifies the frequency of the system clock in Hz.
Specifying a frequency of zero results in a "tickless kernel" that
provides no timer support. This capability has not been fully
implemented and should be treated as [EXPERIMENTAL].
config SYS_CLOCK_HW_CYCLES_PER_SEC
int
# omit prompt to signify a "hidden" option
# value is set by BSP
help
Frequency of the hardware timer used for the system clock
(in Hz).
config SYS_CLOCK_EXISTS
bool
# omit prompt to signify a "hidden" option
default n if (SYS_CLOCK_TICKS_PER_SEC = 0)
default y
help
This option specifies that system clock support is enabled.
config NUM_TIMER_PACKETS
int
prompt "Number of timer packets" if SYS_CLOCK_EXISTS
default 0 if !SYS_CLOCK_EXISTS
default 10
depends on MICROKERNEL
help
This option specifies the number of timer packets to create. Each
explicit and implicit timer usage consumes one timer packet.
config TIMESLICING
bool
prompt "Task time slicing"
default y
depends on MICROKERNEL && SYS_CLOCK_EXISTS
help
This option enables time slicing between tasks of equal priority.
config TIMESLICE_SIZE
int
prompt "Time slice size (in ticks)"
default 0
depends on TIMESLICING
help
This option specifies the maximum amount of time a task can execute
before other tasks of equal priority are given an opportunity to run.
A time slice size of zero means "no limit" (i.e. an infinitely large
time slice).
config TIMESLICE_PRIORITY
int
prompt "Time slicing task priority threshold"
default 0
depends on TIMESLICING
help
This option specifies the task priority level at which time slicing
takes effect; tasks having a higher priority than this threshold
are not subject to time slicing. A threshold level of zero means
that all tasks are potentially subject to time slicing.
config BOOTLOADER_UNKNOWN
bool
# omit prompt to signify a "hidden" option
default n
help
This option signifies that the target has an unknown bootloader
or that it supports multiple ways of booting and it isn't clear
at build time which method is to be used. When this option is enabled
the BSP may have to do extra work to ensure a propert startup.
config MAX_NUM_TASK_IRQS
int
prompt "Number of task IRQ objects"
default 0
depends on MICROKERNEL
help
This option specifies the maximum number of IRQs that may be
utilized by task level device drivers. A value of zero disables
this feature.
config TEST_RANDOM_GENERATOR
bool
prompt "Non-random number generator"
default n
depends on !CUSTOM_RANDOM_GENERATOR
help
This option signifies that the kernel's random number APIs are
permitted to return values that are not truly random.
This capability is provided for testing purposes, when a truly random
number generator is not available. The non-random number generator
should not be used in a production environment.
config CONTEXT_CUSTOM_DATA
bool
prompt "Task and fiber custom data"
default n
help
This option allows each task and fiber to store 32 bits of custom data,
which can be accessed using the context_custom_data_xxx() APIs.

View File

@ -1,137 +0,0 @@
# monitor.kconf - system monitoring configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# system monitoring features
#
config BOOT_BANNER
bool
prompt "Boot banner"
default n
select PRINTK
help
This option outputs a banner to the console device during boot up.
config WORKLOAD_MONITOR
bool
prompt "Workload monitoring [EXPERIMENTAL]"
default n
depends on MICROKERNEL
help
This option instructs the kernel to record the percentage of time
the system is doing useful work (i.e. is not idle).
config TASK_MONITOR
bool
prompt "Task monitoring [EXPERIMENTAL]"
default n
depends on MICROKERNEL
help
This option instructs the kernel to record significant task
activities. These can include: task switches, task state changes,
kernel service requests, and the signalling of events.
config TASK_MONITOR_CAPACITY
int
prompt "Trace buffer capacity (# of entries)"
default 300
depends on TASK_MONITOR
help
This option specifies the number of entries in the task monitor's
trace buffer. Each entry requires 12 bytes.
config TASK_MONITOR_MASK
int
prompt "Trace buffer mask"
default 15
depends on TASK_MONITOR
help
This option specifies which task execution activities are captured
in the task monitor's trace buffer. The following values can be
OR-ed together to form the mask:
1 (MON_TSWAP): task switch
2 (MON_STATE): task state change
4 (MON_KSERV): task execution of kernel APIs
8 (MON_EVENT): task event signalled
config OBJECT_MONITOR
bool
prompt "Kernel object monitoring [EXPERIMENTAL]"
default n
depends on MICROKERNEL
help
This option instructs the kernel to record statistics about
microkernel object usage.
config CONTEXT_MONITOR
bool
prompt "Task and fiber monitoring [EXPERIMENTAL]"
default n
help
This option instructs the kernel to maintain a list of all tasks
and fibers (excluding those that have not yet started or have
already terminated).
config INIT_STACKS
bool
prompt "Initialize stack areas"
default n
help
This option instructs the kernel to initialize stack areas with a
known value (0xaa) before they are first used, so that the high
water mark can be easily determined. This applies to the stack areas
for both tasks and fibers, as well as for the K_swapper's command
stack.
config INT_LATENCY_BENCHMARK
bool
prompt "Interrupt latency metrics [EXPERIMENTAL]"
default n
help
This option enables the tracking of interrupt latency metrics;
the exact set of metrics being tracked is BSP-dependent.
Tracking begins when int_latency_init() is invoked by an application.
The metrics are displayed (and a new sampling interval is started)
each time int_latency_show() is called thereafter.
config BOOT_TIME_MEASUREMENT
bool
prompt "Boot time measurements [EXPERIMENTAL]"
default n
help
This option enables the recording of timestamps during system start
up. The global variable __start_tsc records the time VxMicro begins
executing, while __main_tsc records when main() begins executing,
and __idle_tsc records when the CPU becomes idle. All values are
recorded in terms of CPU clock cycles since system reset.

View File

@ -1,62 +0,0 @@
# security_basic.kconf - basic security configuration options
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# basic security features
#
config CUSTOM_SECURITY
bool
prompt "Customized security"
default n
help
This option allow users to disable enhanced security features they do
not wish to use or enable the use of features with security exposures.
config STACK_CANARIES
bool
prompt "Compiler stack canaries" if CUSTOM_SECURITY
default y
help
This option enables compiler stack canaries support on most functions
in the kernel.
If stack canaries are supported by the compiler, it will emit
extra code that inserts a canary value into the stack frame when
a function is entered and validates this value upon exit.
Stack corruption (such as that caused by buffer overflow) results
in a fatal error condition for the running entity.
Enabling this option can result in a significant increase
in footprint and an associated decrease in performance.
If stack canaries are not supported by the compiler, enabling this
option has no effect.

View File

@ -1,63 +0,0 @@
# nkernel.kconf - nanokernel configuration options
#
# Copyright (c) 2012-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
config NANOKERNEL
bool
# omit prompt to signify a "hidden" option that can't be changed
default y
# This is a product-specific file.
source "product.kconf"
# This is an arch-specific file, under ${vMAKE}/target/kconfig/arch/${ARCH}.
source "kernel-core.kconf"
# This is provided by the BSP. The file parsed by wrsconfig is always
# named bsp.kconf.
#
# If the BSP has no variant, it provides one file called bsp.kconf.
#
# However, if a BSP has variants, it provides multiple files, called
# bsp-${BSP_VARIANT}.kconf. In that case, the build system renames the
# one used during a specific build to bsp.kconf in the build's output
# directory.
source "bsp.kconf"
# This is an arch-specific file, under ${vMAKE}/target/kconfig/arch/${ARCH}.
source "build.kconf"
# Include Bluetooth configuration
source "bluetooth.kconf"

View File

@ -1,37 +0,0 @@
# product.kconf - product configuration options
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# This file can be customized with product-specific configuration options.
#
# <none>

View File

@ -1,66 +0,0 @@
# ukernel.kconf - microkernel configuration options
#
# Copyright (c) 2012-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
config MICROKERNEL
bool
# omit prompt to signify a "hidden" option that can't be changed
default y
config MICROKERNEL_SERVER_PRIORITY
int
prompt "Priority of the kernel service fiber"
default 0
depends on MICROKERNEL
help
Priority of the microkernel server fiber that performs
kernel requests and task scheduling assignments.
config PRIORITY_CEILING
int
prompt "Maximum priority for priority inheritance algorithm"
default 0
depends on MICROKERNEL
help
The highest task priority for the mutex priority inheritance
algorithm.
A task of low priority holding a mutex will see its priority
bumped to the priority of a task trying to acquire the mutex.
This option puts an upper boundary to the priority a task may
get bumped to.
# see nkernel.kconf for a description of these files
source "product.kconf"
source "kernel-core.kconf"
source "bsp.kconf"
source "build.kconf"
source "bluetooth.kconf"

View File

@ -1,14 +0,0 @@
# defs.arch - build system
# Copyright (c) 2014 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.
# undefined symbols the linker must define
# Diab does not understand the EXTERN() linker language pseudo-function
vARCH_UNDEF_SYMS = $(strip \
_irq_vector_table \
)

View File

@ -1,47 +0,0 @@
# defs.arch - build system
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# undefined symbols the linker must define
# Some compilers do not understand the EXTERN() linker language pseudo-function
# link in _irq_vector_table_with_gdb_stub if CONFIG_GDB_INFO is enabled but
# CONFIG_SW_ISR_TABLE is *disabled*
iARCH_UNDEF_SYMS_GDB_INFO__y = y
iARCH_UNDEF_SYMS_SW_ISR_TABLE__ = n
iARCH_UNDEF_SYMS_GDB_INFO = ${iARCH_UNDEF_SYMS_GDB_INFO__${CONFIG_GDB_INFO}}
iARCH_UNDEF_SYMS_SW_ISR_TABLE = ${iARCH_UNDEF_SYMS_SW_ISR_TABLE__${CONFIG_SW_ISR_TABLE}}
iARCH_UNDEF_SYMS_GDB_STUBS_yn = _irq_vector_table_with_gdb_stub
vARCH_UNDEF_SYMS = $(strip \
_irq_vector_table \
${iARCH_UNDEF_SYMS_GDB_STUBS_${iARCH_UNDEF_SYMS_GDB_INFO}${iARCH_UNDEF_SYMS_SW_ISR_TABLE}} \
)

View File

@ -1,53 +0,0 @@
# check.kapp - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
ifneq (${KLIB_DIR},)
$(if ${iUSE_PRJ_CONF},\
$(error Project config file can not be used with KLIB_DIR),)
endif
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
ifeq (${MAKE_RESTARTS},)
ifneq (${KLIB_DIR},)
$(info Kernel project uses these external kernel libraries:)
$(info >>> ${vKLIB_DIR})
endif
$(call q_info,Base BSP directory: '${vBSP_BASE_DIR}')
$(call q_info,Building for '${vBSP}' BSP)
endif
endif
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
ifneq (${MAKECMDGOALS},config)
$(if $(strip ${iPRJ_SRC}),,$(error Kernel project with no source files!))
endif
endif

View File

@ -1,35 +0,0 @@
# check.klib - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
$(if ${BSP},,$(error No BSP specified! ('BSP' is not set)))
endif

View File

@ -1,34 +0,0 @@
# check.nkapp - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/kernel/check.nklib
include ${vMAKE}/target/kernel/check.kapp

View File

@ -1,33 +0,0 @@
# check.nklib - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/kernel/check.klib

View File

@ -1,36 +0,0 @@
# check.ukapp - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/kernel/check.uklib
include ${vMAKE}/target/kernel/check.kapp
$(if ${iVPF_BASE},,$(error VPF file '$(or $(strip ${VPFILE}),prj.vpf)' not found))

View File

@ -1,33 +0,0 @@
# check.uklib - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/target/kernel/check.klib

View File

@ -1,319 +0,0 @@
# defs.kbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vBSP = $(strip ${BSP})
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vCONFIG_BASE_DIR}/${vBSP}/defs.bsp
else ifneq (${vBSP},)
include ${vCONFIG_BASE_DIR}/${vBSP}/defs.bsp
endif
vOUT_DIR ?= $(abspath $(or $(strip $(subst \,/,${OUTPUT_DIR})),${vHERE}/outdir))
vKSRC_DIR ?= ${vBASE}/kernel
vKHDR_DIR ?= ${vBASE}/include
vKLIB_DIR ?= $(or $(strip $(subst \,/,${KLIB_DIR})),${vOUT_DIR}/klib)
vKAPP_DIR ?= $(or $(strip $(subst \,/,${KAPP_DIR})),${vOUT_DIR}/kapp)
LINKER_CMD ?= ${vBSP_BASE_DIR}/${vBSP}/linker.cmd
INCLUDE_AUTOCONF = ${vKLIB_DIR}/include/autoconf.h
# user can set PRJ_SRCPATH (be sure to extract drive letter if applicable)
iPRJ_PATH_FROM_SRCPATH = $(subst ${vDRIVE_BASE},,$(subst ${vDRIVE_HERE},,$(abspath ${PRJ_SRCPATH})))
iPRJ_PATH_AUTOMATIC = $(if $(strip ${PRJ_SRC}),,$(wildcard ${vHERE}/src))
iPRJ_SRCPATH = $(or ${iPRJ_PATH_FROM_SRCPATH},${iPRJ_PATH_AUTOMATIC})
iPRJ_SRCPATH += ${iKTYPE_kapp_SRCPATH}
iPRJ__SRCPATH = ${PRJ_INCPATH} ${iPRJ_SRCPATH}
iPRJ_INCPATH = $(subst \,/,$(strip ${iPRJ__SRCPATH})) ${iKTYPE_kapp_INCPATH}
# XXX - consider using ':=' since might be hitting the file system HARD
# in that case, toolchain definitions must precede this to get $c/$s
iPRJ_SRC_AUTO =
iPRJ_SRC_AUTO += $(foreach path,${iPRJ_SRCPATH},$(wildcard ${path}/*.$c))
iPRJ_SRC_AUTO += $(foreach path,${iPRJ_SRCPATH},$(wildcard ${path}/*.$s))
iPRJ_SRC = $(strip ${PRJ_SRC} ${iPRJ_SRC_AUTO} ${iKTYPE_kapp_SRC})
kapp_SRC = ${iPRJ_SRC}
# kapp_OBJ = $(sort $(subst .$s,.$o,$(subst .$c,.$o,${iPRJ_SRC})))
iKLIB_INC_DIR ?= $(strip \
${vBASE}/include \
${vKLIB_DIR}/include \
${KERNEL_STDLIB_INCLUDE_DIR} \
)
vKAPP_INC_DIR += $(strip \
${iPRJ_INCPATH} \
${vBASE}/include \
${vKLIB_DIR}/include \
${iKTYPE_kapp_INC} \
${KERNEL_STDLIB_INCLUDE_DIR} \
)
LIB_INCLUDE_DIR ?= $(strip \
${vKLIB_DIR} \
${vKAPP_DIR} \
${vOUT_DIR} \
${vTC_LIB_DIR} \
${KERNEL_STDLIB_OUTPUT_DIR} \
)
ALL_LIBS += ${ALIBS} ${KLIBS} ${vKLIBS_EXTRA}
ENTRY ?= __start
# If PRJ_CONF is specified or a default prj.conf file exists indicate that
# the build system will use a project config file.
iUSE_PRJ_CONF = $(or ${PRJ_CONF},$(wildcard prj.conf))
i_PRJ_CONF = $(if $(strip ${PRJ_CONF}),$(if $(wildcard ${PRJ_CONF}),$(strip \
$(subst \,/,${PRJ_CONF})),\
$(error invalid PRJ_CONF (${PRJ_CONF}))),$(wildcard prj.conf))
iPRJ_CONF = $(if ${i_PRJ_CONF},$(if $(findstring ./,$(dir ${i_PRJ_CONF})),\
${vHERE}/${i_PRJ_CONF},${i_PRJ_CONF}),)
#####
# ref_bsp
iCFG_ORIG_STEM = ${vCONFIG_BASE_DIR}/${vBSP}/${vKTYPE}/config${NUM_NODES}p
#####
# buildspec used by Host Tools
iBUILDSPEC = ${vOUT_DIR}/buildspec
#####
# always link against standard C and math libraries,
# and against auxiliary compiler libraries
vKLIBS_EXTRA += c m
vKLIBS_EXTRA += ${vTC_LIBS}
iKLIB_GEN_HDRS += $(strip \
${iOFFSETS_HDR} ${vAUTOCONF_H} \
${iKVER_HDR} \
${iKLIB_ARCH_GEN_HDRS} \
)
ALIBS ?= kapp
iKLIBS = $(foreach klib,${KLIBS},${vKLIB_DIR}/lib${klib}.$a)
iALIBS = $(foreach alib,${ALIBS},${vKAPP_DIR}/lib${alib}.$a)
iLIBS = ${iKLIBS} ${iALIBS}
iOUTDIR_EXISTS := $(wildcard ${vOUT_DIR})
iOUTDIR_IS_VALID := $(wildcard ${vOUT_DIR}/.dir)
#####
# clean rule
# Take a snapshot of the files and directories in ${vOUT_DIR}: they will
# get moved to ${iTRASHBIN}, which will be subsequently deleted. The files
# we are intereted in keeping are .autoconf, .autoconf.old and .dir, which
# are not listed in a $(wildcard *) call because they start with '.'. This
# behaviour is the same on Windows, which conflicts with the behaviour of
# 'dir *' on that platform.
iTRASHBIN = ${vOUT_DIR}/.trash
iFILES_TO_CLEAN := $(wildcard ${vOUT_DIR}/*)
#####
# target
include ${vMAKE}/target/env/defs.target
# stdlib defaults
vKERNEL_STDLIB ?= $(or $(strip ${KERNEL_STDLIB}),minimal)
vSTDLIB = ${vKERNEL_STDLIB}
include ${vMAKE}/target/stdlib/${vSTDLIB}/defs.stdlib
include ${vMAKE}/target/stdlib/${vSTDLIB}/defs.kernel.stdlib
# kernel headers
include ${vMAKE}/target/headers/defs.autoconf.kernel
include ${vMAKE}/target/headers/defs.offsets
include ${vMAKE}/env/defs.kver
include ${vMAKE}/target/headers/defs.kver
# arch-specific
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vMAKE}/target/arch/${vARCH}/defs.arch
sinclude ${vMAKE}/target/kernel/arch/${vARCH}/defs.arch
endif
#Add kernel indicator
iCTX_CFLAGS += -DKERNEL
#Disable use of autoconf.h for configs.c build
nkernel_configs_CFLAGS = ${-D}__AUTOCONF_DONT_USE_AUTOCONF
# toolchain
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vMAKE}/target/toolchain/${vTOOL}/defs.${vTOOL}
endif
# kernel libraries, including BSP
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vBSP_BASE_DIR}/${vBSP}/defs.objs
endif
include ${vKSRC_DIR}/defs.objs
# generate per-lib variables
# $1: library name
# $2: output directory
define objs_for_one_lib__defs
$1_C_SRC = $$(filter %.$c,$${$1_SRC})
$1_C_SRC_TO_OBJ = $$(patsubst %.$c,%.$o,$${$1_C_SRC})
$1_C_OBJ = $$(addprefix $2/obj.$1/,$$(notdir $${$1_C_SRC_TO_OBJ}))
$1_C_MODULES = $$(notdir $$(basename $${$1_C_SRC}))
$1_ASM_SRC = $$(filter %.$s,$${$1_SRC})
$1_ASM_SRC_TO_OBJ = $$(patsubst %.$s,%.$o,$${$1_ASM_SRC})
$1_ASM_OBJ = $$(addprefix $2/obj.$1/,$$(notdir $${$1_ASM_SRC_TO_OBJ}))
$1_ASM_MODULES = $$(notdir $$(basename $${$1_ASM_SRC}))
$1_OBJ = $${$1_C_OBJ} $${$1_ASM_OBJ}
endef
# generate: <library name>_<module name> = <module name> <output dir> <source file>
# $1: library name
# $2: full path of source file
# $3: output dir
define src_to_module__defs
$1_$$(notdir $$(basename $2)) = $$(notdir $$(basename $2)) $3/obj.$1 $2
endef
define vars_for_one_klib__rule
${vKLIB_DIR}/lib$1.$a: iINCLUDE_DIR=$${$1_INCLUDE_DIR} $${iKLIB_INC_DIR}
${vKLIB_DIR}/lib$1.$a: iLIB_NAME=$1
${vKLIB_DIR}/lib$1.$a: iOBJ=$${$1_OBJ}
endef
define vars_for_one_kapp__rule
${vKAPP_DIR}/lib$1.$a: iINCLUDE_DIR=$${$1_INCLUDE_DIR} $${vKAPP_INC_DIR}
${vKAPP_DIR}/lib$1.$a: iLIB_NAME=$1
${vKAPP_DIR}/lib$1.$a: iOBJ=$${$1_OBJ}
endef
define deps_for_one_klib__rule
${$1_C_OBJ} ${$1_ASM_OBJ}: $${iKLIB_GEN_HDRS}
endef
define deps_for_one_kapp__rule
${$1_OBJ}: $${iKLIB_GEN_HDRS} $${iKAPP_GEN_HDRS} $${iKTYPE_kapp_DEP}
endef
define src_from_paths
$1_SRC += \
$(strip\
$(foreach path,${$1_SRCPATH},$(wildcard ${path}/*.$c))\
$(foreach path,${$1_SRCPATH},$(wildcard ${path}/*.$s))\
)
endef
$(foreach lib,${KLIBS},$(eval $(call objs_for_one_lib__defs,${lib},${vKLIB_DIR})))
$(foreach lib,${ALIBS},$(eval $(call objs_for_one_lib__defs,${lib},${vKAPP_DIR})))
$(foreach lib,${KLIBS},$(eval $(call src_from_paths,${lib})))
# generate for all kernel libraries:
# <library name>_<module name> = <module name> <output dir> <source file>
$(foreach lib,${KLIBS},\
$(foreach src,${${lib}_C_SRC} ${${lib}_ASM_SRC},\
$(eval $(call src_to_module__defs,${lib},${src},${vKLIB_DIR}))\
)\
)
$(foreach lib,${ALIBS},\
$(foreach src,${${lib}_C_SRC} ${${lib}_ASM_SRC},\
$(eval $(call src_to_module__defs,${lib},${src},${vKAPP_DIR}))\
)\
)
# build complete line
define Build_complete_output
-@${HOS_EchoBlankLine}
-@${HOS_Echo} Build complete.
-@$(foreach image,$?,${HOS_Echo} Image location: ${image} ${HOS_MultiCmd})
endef
iDOT_D_KLIB = $(foreach klib,${KLIBS},$(foreach obj,${${klib}_OBJ},${obj:.o=.d}))
iDOT_D_KAPP = $(foreach alib,${ALIBS},$(foreach obj,${${alib}_OBJ},${obj:.o=.d}))
iDOT_D += ${iDOT_D_KLIB} ${iDOT_D_KAPP}
#####
# kernel standard C libraries
iKERNEL_STDLIB_RULE = kernel_stdlib
# tricky: if KERNEL_STDLIB_COMPILER_OPT is non-empty,
# iKERNEL_STDLIB_COMPILER_OPT_STR_${KERNEL_STDLIB_COMPILER_OPT}
# resolves to <empty>, but if KERNEL_STDLIB_COMPILER_OPT is empty,
# iKERNEL_STDLIB_COMPILER_OPT_STR_${KERNEL_STDLIB_COMPILER_OPT} resolves
# to ${vDEFAULT_COMPILER_OPT}
KERNEL_STDLIB_COMPILER_OPT ?= ${CONFIG_COMPILER_OPT}
iKERNEL_STDLIB_COMPILER_OPT_STR_ = ${vDEFAULT_COMPILER_OPT}
iKERNEL_STDLIB_COMPILER_OPT_STR = $(subst ${vSPACE},_,$(strip \
${KERNEL_STDLIB_COMPILER_OPT}${iKERNEL_STDLIB_COMPILER_OPT_STR_${KERNEL_STDLIB_COMPILER_OPT}} \
))
KERNEL_STDLIB_STACK_CANARIES ?= ${CONFIG_STACK_CANARIES}
iKERNEL_STDLIB_STACK_CANARIES_STR_y = -stack_canaries
iKERNEL_STDLIB_STACK_CANARIES_STR = ${iKERNEL_STDLIB_STACK_CANARIES_STR_${KERNEL_STDLIB_STACK_CANARIES}}
iKERNEL_STDLIB_MISC_STR = ${iKERNEL_STDLIB_STACK_CANARIES_STR}${iKERNEL_STDLIB_COMPILER_OPT_STR}
iKERNEL_STDLIB_DIR_NAME = ${vKERNEL_STDLIB}-kernel-${vARCH}-${vCPU}-${vTOOL}${iKERNEL_STDLIB_MISC_STR}
KERNEL_STDLIB_OUTPUT_DIR ?= ${vBASE}/samples/libc/${iKERNEL_STDLIB_DIR_NAME}
KERNEL_STDLIB_INCLUDE_DIR = ${vSTDLIB_HDR_PATH}
iKERNEL_STDLIB_CMDLINE = $(strip \
OUTPUT_DIR=${KERNEL_STDLIB_OUTPUT_DIR} \
ARCH=${vARCH} CPU=${vCPU} VXMICRO_TOOL=${vTOOL}\
OVERRIDE_COMPILER_OPT=${KERNEL_STDLIB_COMPILER_OPT} \
STACK_CANARIES=${KERNEL_STDLIB_STACK_CANARIES} \
STDLIB_TYPE=KERNEL \
)
vKERNEL_UNDEF_SYMS_TIMESTAMP_y = build_timestamp
vKERNEL_UNDEF_SYMS = $(strip \
${vKERNEL_UNDEF_SYMS_TIMESTAMP_${CONFIG_BUILD_TIMESTAMP}} \
${vARCH_UNDEF_SYMS} \
)

View File

@ -1,44 +0,0 @@
# defs.nkbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vKTYPE = nkernel
# override values, nanokernel is not VSP-capable
override NUM_NODES = 1
override NODES = 1
include ${vMAKE}/target/kernel/defs.kbuild
#####
# for help:
iHELP_EXEC_NAMES = nanokernel

View File

@ -1,96 +0,0 @@
# defs.ukbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vKTYPE = ukernel
NODES ?= 1
NUM_NODES ?= 1
# only NODE1 has a boot file
iBOOT_FILE_1 = ${BOOT_FILE}
#####
# ref_bsp
iCFG_ORIG_VPF = ${iCFG_ORIG_STEM}.vpf
#####
# sysgen
iSYSGEN_OUT = ${vOUT_DIR}/sysgen
iVXMICRO_H = ${iSYSGEN_OUT}/vxmicro.$h
iKERNEL_MAIN_C = ${iSYSGEN_OUT}/kernel_main.$c
#####
# extra generated headers
#
iKTYPE_kapp_INC += $(strip \
${iSYSGEN_OUT} \
)
iKTYPE_kapp_SRC += ${iKERNEL_MAIN_C}
define iPerNodeDep
iKTYPE_kapp_DEP += ${iVXMICRO_H} ${iKERNEL_MAIN_C}
endef
include ${vMAKE}/target/kernel/defs.kbuild
#####
# VPF file
# must be after defs.kbuild so we get vHERE and the error does not trigger
iVPF_BASE = $(wildcard $(or $(strip ${VPFILE}),prj.vpf))
iVPF = ${vHERE}/${iVPF_BASE}
#####
# this is located after including defs.kbuild since vOUT_DIR is needed to
# construct the variable names and thus the toolchain definitions must have
# been included first
$(foreach node,${NODES},$(eval $(call iPerNodeDep,${node})))
#####
# this is located after including defs.kbuild since ${elf}/${bin} are needed to
# construct the variable names and thus the toolchain definitions must have
# been included first
iALL_${elf}_TARGETS = ${vOUT_DIR}/microkernel.${elf}
iALL_${bin}_TARGETS = ${vOUT_DIR}/microkernel.${bin}
iALL_${strip}_TARGETS = ${vOUT_DIR}/microkernel.${strip}
define iPerNodeRules
${vOUT_DIR}/microkernel.${elf}:$${iBOOT_FILE_$1} ${vOUT_DIR}/microkernel.${lnk} ${iLIBS} ${iKERNEL_STDLIB_RULE}
endef
#####
# for help:
iHELP_EXEC_NAMES = microkernel

View File

@ -1,122 +0,0 @@
# rules.kbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
.PHONY: klibs alibs
alibs: ${iALIBS}
#####
# KLIB_DIR is set by the kernel designer if the kernel is to be built with
# libraries built externally from the project. In that case, prevent building
# libraries in the kernel project itself.
ifeq (${KLIB_DIR},)
klibs: ${iKLIBS}
else
klibs:
-@$(HOS_Echo) [klibs] KLIB_DIR is set, cannot build kernel libraries
@$(HOS_false)
endif
# all rules
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vMAKE}/target/arch/${vARCH}/rules.arch
endif
include ${vMAKE}/target/headers/rules.autoconf
include ${vMAKE}/target/headers/rules.offsets
include ${vMAKE}/target/headers/rules.kver
ifeq (${vGOAL_NEEDS_TARGET_SETUP},y)
include ${vMAKE}/target/toolchain/${vTOOL}/rules.${vTOOL}
include ${vMAKE}/target/toolchain/${vTOOL}/rules.kernel-bin
endif
${vKLIB_DIR}/configs.c: ${vAUTOCONF_H} | $$(dir $$@).dir
$q${HOS_GenConfigAbssym} -i $< -o $@
# generate a custom .c/.s -> .o rule for each source file
iSRC_TYPES = C ASM
$(foreach type,${iSRC_TYPES},\
$(foreach lib,${KLIBS} ${ALIBS},\
$(foreach module,${${lib}_${type}_MODULES},\
$(eval $(call one_${type}_obj_file__rule,${${lib}_${module}}))\
)\
)\
)
$(foreach klib,${KLIBS},$(eval $(call vars_for_one_klib__rule,${klib})))
$(foreach alib,${ALIBS},$(eval $(call vars_for_one_kapp__rule,${alib})))
$(foreach klib,${KLIBS},$(eval $(call deps_for_one_klib__rule,${klib})))
$(foreach alib,${ALIBS},$(eval $(call deps_for_one_kapp__rule,${alib})))
.PHONY: kernel_stdlib clean_kernel_stdlib
kernel_stdlib:
${MAKE} -C ${vBASE}/lib/libc/${vKERNEL_STDLIB} ${iKERNEL_STDLIB_CMDLINE}
clean_kernel_stdlib:
${MAKE} -C ${vBASE}/lib/libc/${vKERNEL_STDLIB} ${iKERNEL_STDLIB_CMDLINE} pristine
${iBUILDSPEC}: | $$(dir $$@).dir
$q${HOS_Echo} "BSP =" ${vBSP} > $@
$q${HOS_Echo} "BSP_VARIANT =" $(or ${vBSP_VARIANT},"N/A") >> $@
$q${HOS_Echo} "ARCH =" ${vARCH} >> $@
$q${HOS_Echo} "CPU =" ${vCPU} >> $@
$q${HOS_Echo} "VXMICRO_TOOL =" ${vTOOL} >> $@
$q${HOS_Echo} "QEMU_MACHINE =" $(or ${QEMU_MACHINE},"N/A") >> $@
$q${HOS_Echo} "QEMU_CPU =" $(or ${vQEMU_CPU},"N/A") >> $@
#####
# help
.PHONY: help_kbuild help_klibs help_clean
help_kbuild:
@${HOS_EchoBlankLine}
@${HOS_Echo} " Build"
@${HOS_Echo} " [default] bin: build project's bin files"
@${HOS_Echo} " elf: build project's ELF files"
@${HOS_Echo} " strip: generate a stripped ELF file"
@${HOS_Echo} " from an ELF image"
help_klibs:
@${HOS_EchoBlankLine}
@${HOS_Echo} " Build"
@${HOS_Echo} " klibs - build project"
help_clean:
@${HOS_EchoBlankLine}
@${HOS_Echo} " Clean-up"
@${HOS_Echo} " clean: clean all but keep configuration"
@${HOS_Echo} " pristine: clean all and remove configuration"
@${HOS_Echo} " wipe: alias for pristine"
sinclude ${iDOT_D}

View File

@ -1,77 +0,0 @@
# rules.kclean - build system
#
# Copyright (c) 2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#####
# cleanup rules
#
# clean: everything but .autoconf files, to keep the configuration
# wipe: EVERYTHING
# pristine: alias for wipe
.PHONY: clean wipe pristine
ifneq (${iOUTDIR_EXISTS},)
ifneq (${iOUTDIR_IS_VALID},)
ifneq (${iFILES_TO_CLEAN},)
clean:
$q${HOS_MakeDir} ${iTRASHBIN}
$q${HOS_Move} ${iFILES_TO_CLEAN} ${iTRASHBIN}
$q${HOS_DelDir} ${iTRASHBIN}
else
clean:
@${HOS_true}
endif
wipe:
$q${HOS_DelDir} ${vOUT_DIR}
else
clean:
@${HOS_Echo} "Cannot clean: '${vOUT_DIR}' is not a valid output directory"
@${HOS_false}
wipe: clean
endif
else
clean:
@${HOS_true}
wipe: clean
endif
pristine: wipe

View File

@ -1,48 +0,0 @@
# rules.nkbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
.PHONY: ${bin} ${elf}
${bin}: ${vOUT_DIR}/nanokernel.${bin}
$(call Build_complete_output)
${elf}: ${vOUT_DIR}/nanokernel.${elf}
$(call Build_complete_output)
${strip}: ${vOUT_DIR}/nanokernel.${strip}
$(call Build_complete_output)
${vOUT_DIR}/nanokernel.${bin}: ${vOUT_DIR}/nanokernel.${elf}
${vOUT_DIR}/nanokernel.${elf}: ${iLIBS} ${iKLIB_DEP} ${iKERNEL_STDLIB_RULE}
include ${vMAKE}/target/kernel/rules.kbuild

View File

@ -1,59 +0,0 @@
# rules.ukbuild - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
.PHONY: ${elf} ${bin}
${bin}: ${iALL_${bin}_TARGETS}
$(call Build_complete_output)
${elf}: ${iALL_${elf}_TARGETS} ${PRJ_REQ}
$(call Build_complete_output)
${strip}: ${iALL_${strip}_TARGETS}
$(call Build_complete_output)
$(foreach node,${NODES},$(eval $(call iPerNodeRules,${node})))
${iKERNEL_MAIN_C}: ${iVXMICRO_H}
@${HOS_true}
${iVXMICRO_H}: ${iSYSGEN_OUT}/${iVPF_BASE} ${HOS_SysGen} | $$(dir $$@).dir
$q${HOS_DeleteFiles} $@
-@${HOS_Echo} '[sysgen] Generating $(notdir $@) from $(notdir $<)'
-@${HOS_Echo} '[sysgen] Check for sysgen error messages if $(notdir $@) not found'
$q${HOS_SysGen} $< $(dir $@)
${iSYSGEN_OUT}/microkernel.${elf}: ${vOUT_DIR}/microkernel.${elf} | $$(dir $$@).dir
$q${HOS_CopyFile} $< $(dir $@)
include ${vMAKE}/target/kernel/rules.vpfgen
include ${vMAKE}/target/kernel/rules.kbuild

View File

@ -1,58 +0,0 @@
# rules.vpfgen - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
${iSYSGEN_OUT}/${iVPF_BASE}: ${iVPF} | $$(dir $$@).dir
-@${HOS_Echo} '[vxmicro] Generating [${iVPF_BASE}]'
$q${HOS_Echo} '${HOS_Percent} WARNING. THIS FILE IS AUTOGENERATED. DO NOT MODIFY!' > $@
$q${HOS_EchoBlankLine} >> $@
$q${HOS_Echo} '${HOS_Percent} CONFIG NUM_COMMAND_PACKETS NUM_TIMER_PACKETS NUM_TASK_PRIORITIES' >> $@
$q${HOS_Echo} '${HOS_Percent} =============================================================' >> $@
$q${HOS_Echo} ' CONFIG ${CONFIG_NUM_COMMAND_PACKETS} ${CONFIG_NUM_TIMER_PACKETS} ${CONFIG_NUM_TASK_PRIORITIES}' >> $@
$q${HOS_EchoBlankLine} >> $@
$q${HOS_Echo} '${HOS_Percent} TASKGROUP NAME' >> $@
$q${HOS_Echo} '${HOS_Percent} ==============' >> $@
$q${HOS_Echo} ' TASKGROUP EXE' >> $@
$q${HOS_Echo} ' TASKGROUP SYS' >> $@
$q${HOS_Echo} ' TASKGROUP FPU' >> $@
$q${HOS_Echo} ' TASKGROUP SSE' >> $@
$q${HOS_EchoBlankLine} >> $@
ifneq (${CONFIG_MAX_NUM_TASK_IRQS},0)
-@${HOS_Echo} '[vxmicro] Adding [task device objects -> ${iVPF_BASE}]'
$q${HOS_EchoBlankLine} >> $@
$q${HOS_Echo} '${HOS_Percent} Task IRQ objects'>> $@
$q${HOS_Echo} '${HOS_Percent} EVENT NAME HANDLER'>> $@
$q${HOS_Echo} '${HOS_Percent} =============================='>> $@
$q${HOS_mkevents} ${CONFIG_MAX_NUM_TASK_IRQS} >> $@
endif
$q${HOS_EchoBlankLine} >> $@
$q${HOS_Cat} ${iCFG_ORIG_VPF} >> $@
$q${HOS_Cat} $< >> $@

View File

@ -1,94 +0,0 @@
# defs.library - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
OUTPUT_DIR ?= outdir
#####
# user may set these variables
#
# COMPILER_OPT with a compiler opt flag (toolchain-specific)
# STACK_CANARIES with y or n
#
vOUT_DIR = $(strip ${OUTPUT_DIR})
iOUT_DIR_OBJ = ${vOUT_DIR}/obj.${LIB_NAME}
iLIB_NAME = $(strip ${LIB_NAME})
iSRC_FROM_PATH = $(strip \
$(foreach path,${${LIB_NAME}_SRCPATH},$(wildcard ${path}/*.$c)) \
$(foreach path,${${LIB_NAME}_SRCPATH},$(wildcard ${path}/*.$s)) \
)
iSRC_IN_CURDIR = $(strip \
$(wildcard *.$c) \
$(wildcard *.$s) \
)
iSRC_EXPLICIT = $(strip ${${LIB_NAME}_SRC} ${iSRC_FROM_PATH})
iSRC = $(or ${iSRC_EXPLICIT},${iSRC_IN_CURDIR})
iSRC_C = $(filter %.$c,${iSRC})
iSRC_ASM = $(filter %.$s,${iSRC})
include ${vMAKE}/target/library/defs.objects
${LIB_NAME}_OBJ = ${iOBJ}
iINCLUDE_DIR = ${${LIB_NAME}_INCLUDE_DIR}
include ${vMAKE}/target/env/defs.target
$(if ${vCPU},,$(error CPU is not set!))
$(if ${vARCH},,$(error ARCH is not set!))
#####
# preempt the variables from the tools
iHAS_COMPILER_OPT = $(lastword ${OVERRIDE_COMPILER_OPT})
OVERRIDE_COMPILER_OPT = ${COMPILER_OPT}
#####
# STDLIB will be set by the library's Makefile if it requires any stdlib
# header files to build. If set, include the defs.stdlib for the desired set
# of standard libraries.
vSTDLIB = $(strip ${STDLIB})
sinclude ${vMAKE}/target/stdlib/${vSTDLIB}/defs.stdlib
#####
sinclude ${vMAKE}/target/toolchain/${vTOOL}/defs.flags.library
include ${vMAKE}/target/toolchain/${vTOOL}/defs.${vTOOL}
$(foreach src,${iSRC_C} ${iSRC_ASM},\
$(eval $(call src_to_module__defs,${LIB_NAME},${src},${iOUT_DIR_OBJ}))\
)

View File

@ -1,52 +0,0 @@
# defs.objects - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
iSRC_TO_OBJ_C = $(patsubst %.$c,%.$o,${iSRC_C})
iOBJ_C = $(addprefix ${iOUT_DIR_OBJ}/,$(notdir ${iSRC_TO_OBJ_C}))
iMODULES_C = $(notdir $(basename ${iSRC_C}))
iSRC_TO_OBJ_ASM = $(patsubst %.$s,%.$o,${iSRC_ASM})
iOBJ_ASM = $(addprefix ${iOUT_DIR_OBJ}/,$(notdir ${iSRC_TO_OBJ_ASM}))
iMODULES_ASM = $(notdir $(basename ${iSRC_ASM}))
iOBJ = ${iOBJ_C} ${iOBJ_ASM}
# generate: <library name>_<module name> = <module name> <output dir> <source file>
# $1: library name
# $2: full path of source file
# $3: output dir
define src_to_module__defs
$1_$$(notdir $$(basename $2)) = $$(notdir $$(basename $2)) $3 $2
endef
iDOT_D += ${iOBJ:.$o=.$d}

View File

@ -1,57 +0,0 @@
# rules.library - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
.PHONY: lib clean pristine
lib: ${vOUT_DIR}/lib${LIB_NAME}.$a
iOUTDIR_EXISTS = $(wildcard ${vOUT_DIR})
iOUTDIR_IS_VALID = $(wildcard ${vOUT_DIR}/.dir)
iLIB_DIR_CLEAN_ERR = Cannot remove '${vOUT_DIR}': not a valid output directory
clean:
@$(if ${iOUTDIR_IS_VALID},${HOS_DelDir} ${vOUT_DIR},$(if ${iOUTDIR_EXISTS},$(error ${iLIB_DIR_CLEAN_ERR}),))
pristine: clean
ifeq ($(filter ${MAKECMDGOALS},clean pristine wipe),)
include ${vMAKE}/target/toolchain/${vTOOL}/rules.${vTOOL}
# generate a custom .c/.s -> .o rule for each source file
iSRC_TYPES = C ASM
$(foreach type,${iSRC_TYPES},\
$(foreach module,${iMODULES_${type}},\
$(eval $(call one_${type}_obj_file__rule,${${LIB_NAME}_${module}}))\
)\
)
include ${vOUT_DIR}/.dir
sinclude ${iDOT_D}
endif

View File

@ -1,41 +0,0 @@
# make.library - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include ${vMAKE}/env/sanity_check
include ${vMAKE}/target/library/defs.library
include ${vMAKE}/target/library/rules.library
$(if ${iLIB_NAME},,$(error LIB_NAME is not set!))
sinclude ${vMAKE}/target/wb-helper/defs.library
include ${vMAKE}/env/rules.wb-helper

View File

@ -1,51 +0,0 @@
# make.nkernel - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include $(subst \,/,${VXMICRO_BASE})/make/env/sanity_check
include ${vMAKE}/target/kernel/defs.nkbuild
ifeq ($(strip $(filter ${MAKECMDGOALS},wipe pristine clean)),)
include ${vMAKE}/target/run/defs.emulation
include ${vMAKE}/target/kernel/rules.nkbuild
include ${vMAKE}/target/run/rules.emulation
endif
include ${vMAKE}/target/kernel/rules.kclean
include ${vMAKE}/target/kernel/check.nkapp
.PHONY: help
help: help_kbuild $(foreach run,${RUN},help_${run}) help_clean
@${HOS_EchoBlankLine}
sinclude ${vMAKE}/target/wb-helper/defs.nkernel
include ${vMAKE}/env/rules.wb-helper

View File

@ -1,51 +0,0 @@
# make.nklib - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include $(subst \,/,${VXMICRO_BASE})/make/env/sanity_check
.DEFAULT_GOAL = klibs
include ${vMAKE}/target/kernel/defs.nkbuild
ifeq ($(strip $(filter ${MAKECMDGOALS},wipe pristine clean)),)
include ${vMAKE}/target/kernel/rules.nkbuild
endif
include ${vMAKE}/target/kernel/rules.kclean
include ${vMAKE}/target/kernel/check.nklib
.PHONY: help
help: help_klibs help_clean
@${HOS_EchoBlankLine}
sinclude ${vMAKE}/target/wb-helper/defs.nklib
include ${vMAKE}/env/rules.wb-helper

View File

@ -1,51 +0,0 @@
# make.ukernel - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include $(subst \,/,${VXMICRO_BASE})/make/env/sanity_check
include ${vMAKE}/target/kernel/defs.ukbuild
ifeq ($(strip $(filter ${MAKECMDGOALS},wipe pristine clean)),)
include ${vMAKE}/target/run/defs.emulation
include ${vMAKE}/target/kernel/rules.ukbuild
include ${vMAKE}/target/run/rules.emulation
endif
include ${vMAKE}/target/kernel/rules.kclean
include ${vMAKE}/target/kernel/check.ukapp
.PHONY: help
help: help_kbuild $(foreach run,${RUN},help_${run}) help_clean
@${HOS_EchoBlankLine}
sinclude ${vMAKE}/target/wb-helper/defs.ukernel
include ${vMAKE}/env/rules.wb-helper

View File

@ -1,51 +0,0 @@
# make.uklib - build system
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
include $(subst \,/,${VXMICRO_BASE})/make/env/sanity_check
.DEFAULT_GOAL = klibs
include ${vMAKE}/target/kernel/defs.ukbuild
ifeq ($(strip $(filter ${MAKECMDGOALS},wipe pristine clean)),)
include ${vMAKE}/target/kernel/rules.ukbuild
endif
include ${vMAKE}/target/kernel/rules.kclean
include ${vMAKE}/target/kernel/check.uklib
.PHONY: help
help: help_klibs help_clean
@${HOS_EchoBlankLine}
sinclude ${vMAKE}/target/wb-helper/defs.uklib
include ${vMAKE}/env/rules.wb-helper

View File

@ -1 +0,0 @@
# empty, build system expects a defs.qemu.${vARCH} file for no good reason.

View File

@ -1,47 +0,0 @@
# defs.qemu.arm - ARM-specific QEMU definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# DESCRIPTION
# File defines:
# vQEMU_CPU - the target cpu
# vQEMU_FLAGS - flags for the QEMU
# vQEMU_TOOLS_INT - flags indicating that QEMU is integrated with host tools
iQEMU_CPU_CortexM3 = cortex-m3
vQEMU_CPU = ${iQEMU_CPU_${vCPU}}
vQEMU_FLAGS ?= -cpu ${vQEMU_CPU} -machine ${QEMU_MACHINE} -nographic
vQEMU_TOOLS_INT ?= off
vQEMU_BIN_ARCH = arm

View File

@ -1,56 +0,0 @@
# defs.qemu.x86 - Intel-specific QEMU definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# DESCRIPTION
# File defines:
# vQEMU_CPU - the target cpu
# vQEMU_FLAGS - flags for the QEMU
# vQEMU_TOOLS_INT - flags indicating that QEMU is integrated with host tools
iQEMU_CPU_pentium4 = qemu32
iQEMU_CPU_minuteia = pentium
vQEMU_CPU = ${iQEMU_CPU_${vCPU}}
QEMU_BIOS ?= /usr/share/qemu
vQEMU_FLAGS ?= $(strip \
-m 32 -cpu ${vQEMU_CPU} -no-reboot -nographic -display none \
-net none -clock dynticks -no-acpi -balloon none -no-hpet \
-L ${QEMU_BIOS} -bios bios.bin \
-machine type=pc-0.14 \
)
vQEMU_TOOLS_INT ?= off
vQEMU_BIN_ARCH = i386
vQEMU_FLAGS += -nodefaults

View File

@ -1,38 +0,0 @@
# defs.emulation - emulation definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# Linux specific definitions
include ${vMAKE}/target/run/defs.emulation.${vHOST}
# definitions for QEMU
include ${vMAKE}/target/run/defs.qemu
# definitions for other emulations
sinclude ${vMAKE}/target/run/defs.extra

View File

@ -1,34 +0,0 @@
# defs.emulation.x86-linux2 - common emulator Linux specific definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# DESCRIPTION
# currently empty

View File

@ -1,39 +0,0 @@
# defs.qemu - platform independent QEMU definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
sinclude ${vMAKE}/target/run/defs.qemu.custom.${VXMICRO_QEMU}
include ${vMAKE}/target/run/defs.qemu.default
include ${vMAKE}/target/run/arch/defs.qemu.${vARCH}
# The platform specific defines go afterwards and append
# platform specific values to environment variables
include ${vMAKE}/target/run/defs.qemu.${vHOST}

View File

@ -1 +0,0 @@
../../../make/vxmicro/make/target/run/defs.qemu.custom.vqemu

View File

@ -1,37 +0,0 @@
# defs.qemu.custom.yocto - QEMU definitions for Yocto toolchain
#
# Copyright (c) 2015 Intel Corporation
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Intel Corporation nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
QEMU_BIN_PATH = ${YOCTO_SDK_INSTALL_DIR}/sysroots/i686-pokysdk-linux/usr/bin
QEMU_BIOS = ${YOCTO_SDK_INSTALL_DIR}/sysroots/i686-pokysdk-linux/usr/share/qemu

View File

@ -1,38 +0,0 @@
# defs.qemu.default - default QEMU definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# set up system to use VQEMU & associated libraries
vQEMU_NAME ?= qemu-system-${vQEMU_BIN_ARCH}${HOS_exe}
QEMU_BIN_PATH ?= /usr/bin
vQEMU_BIN ?= ${QEMU_BIN_PATH}/${vQEMU_NAME}
QEMU_BIOS ?= /usr/share/qemu/bios.bin

View File

@ -1,53 +0,0 @@
# defs.qemu.x86-linux2 - QEMU Linux specific definitions
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# DESCRIPTION
# File defines:
# vQEMU_NAME - name of QEMU executable
# vQEMU_BIN - fully qualified path to QEMU executable
# iQEMU_BANNER - banner to be printed on QEMU start
# iQEMU_CONSOLE - QEMU stdout console
vQEMU_BIN ?= qemu-system-${vQEMU_BIN_ARCH}
iQEMU_BANNER = "To exit from QEMU enter: 'CTRL+a, x'"
iQEMU_CONSOLE = mon:stdio
sinclude ${vMAKE}/target/run/arch/defs.qemu.x86-linux2.${vARCH}
# stop QEMU simulation
define Qemu_stop
@-if [ -r ${vOUT_DIR}/qemu.pid ]; then \
kill -9 $$(<${vOUT_DIR}/qemu.pid); \
rm -f ${vOUT_DIR}/qemu.pid; \
fi
endef

View File

@ -1,44 +0,0 @@
# rules.emulation - emulation rules
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# Define empty rules for the files "defs.*" and "rules.*". This is done to
# resolve a clash between file names (such as "defs.qemu" and "rules.qemu")
# and rules (such as "%.qemu"). Without these two empty rules, "make" would
# try to rebuild those build files when it encounters rules of the same name.
defs.%: ;
rules.%: ;
# rules for QEMU
include $(if ${vQEMU_BIN},${vMAKE}/target/run/rules.qemu,)
# definitions for other emulations
sinclude ${vMAKE}/target/run/rules.extra

View File

@ -1,53 +0,0 @@
# rules.qemu - rules for running on QEMU target
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
ifeq (${vQEMU_BIN},)
$(error defs.qemu must be included before this makefile fragment)
endif
include ${vMAKE}/target/run/rules.qemu.${vHOST}
# run the target
%.qemu: ${vOUT_DIR}/%.${elf}
$q${HOS_Echo} [rules.qemu] Booting $<
$q${HOS_Echo} [${vQEMU_BIN} ${vQEMU_FLAGS}]
$q${HOS_Echo} ${iQEMU_BANNER}
$q${vQEMU_BIN} ${vQEMU_FLAGS} -pidfile ${vOUT_DIR}/qemu.pid -kernel $< -serial ${iQEMU_CONSOLE} ${QEMU_EXTRA_FLAGS}
.PHONY: help_qemu
iQEMU_RUN_STR = $(foreach exec,${iHELP_EXEC_NAMES},${exec}.qemu): run
iQEMU_GDB_STR = $(foreach exec,${iHELP_EXEC_NAMES},${exec}.qemu.gdb): debug with GDB
help_qemu:
@${HOS_EchoBlankLine}
@${HOS_Echo} " QEMU"
@${HOS_Echo} " ${iQEMU_RUN_STR}"
@${HOS_Echo} " ${iQEMU_GDB_STR}"

View File

@ -1,71 +0,0 @@
# rules.qemu.x86-linux2 - Linux specific rules for running on QEMU target
#
# Copyright (c) 2013-2014 Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# depend on hidden timestamp since otherwise Makefile traverses link
# to determine the timestamp and $(HOME)/.socatPipeB doesnt exist yet
# this should update symbolic links to the virtual serial line in
# case they are changed
serialLink: ${iSIM_SERIAL_DEVICE}
# create host communication serial link
# - destroy existing .socatPipe<X> files
# - link host's end of host communication link to .socatPipeB
# (which doesn't yet exist)
#
# note:
# - VxMicro's end of the host link will be .socatPipeA
# - both .socatPipeA and .socatPipeB get created when "socat" is invoked
#
${iSIM_SERIAL_DEVICE}:
$q${HOS_DeleteFiles} $(HOME)/.socatPipe*
$q${HOS_Link} $(HOME)/.socatPipeB $@
$q${HOS_Touch} $@
.gdbinit:
$q${HOS_Echo} target remote localhost:1234 >.gdbinit
$q${HOS_Echo} dir $(VXMICRO_BASE_UNIX)/target/src/kernel >>.gdbinit
# run the target with GDB
define Qemu_debug
$(Qemu_stop)
@setsid ${HOS_Term} ${vQEMU_BIN} ${vQEMU_FLAGS} -kernel $1 -s -S -serial ${iQEMU_CONSOLE} &
$q${HOS_Sleep} 1
endef
%.qemu.gdb %.gdb: ${vOUT_DIR}/%.${elf} .gdbinit
$(call Qemu_debug,$<)
$q${vGDB} -tui $<
%.qemu.ddd %.ddd: ${vOUT_DIR}/%.${elf} .gdbinit
$(call Qemu_debug,$<)
ddd --gdb --debugger "${vGDB} $<" &

View File

@ -1,33 +0,0 @@
# defs.kernel.stdlib - build system
#
# Copyright (c) 2014, Wind River Systems, Inc.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Wind River Systems nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
vSTDLIB_HDR_PATH ?= ${vBASE}/lib/libc/${vSTDLIB}/include

Some files were not shown because too many files have changed in this diff Show More