Kbuild: Microkernel benchmark test main Makefiles.

The following commits adds the main Makefiles for the microkernel
benchmark test, using parameters to be used by the sanity check.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I7601df92006ca81b3680f6c2b4e25de076512e41
This commit is contained in:
Juan Manuel Cruz 2015-05-09 16:16:53 -05:00 committed by Anas Nashif
parent dd26bf9446
commit 0e1d6a037c
5 changed files with 50 additions and 215 deletions

View file

@ -1,52 +1,10 @@
# Makefile - app_kernel benchmarking Makefile for microkernel
TIMO_BASE = $(strip $(subst /samples/microkernel/benchmark/app_kernel,,$(shell pwd) ))
# 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
# Makefile for the AppKernel benchmark
PC8253_BSP_VARIANTS=generic_pc pentium4 minuteia
BSP ?= generic_pc
VPFILE = prj.vpf
KERNEL_TYPE = micro
CONF_OVERLAY = prj_console_float_$(if $(filter $(BSP),$(PC8253_BSP_VARIANTS)),pc8253,generic).conf
include $(subst \,/,${VXMICRO_BASE})/make/env/defs.base
PC8253_BSP_VARIANTS=generic_pc_pentium4 generic_pc_minuteia
PRJ_CONF_CONSOLE_FLOAT_8253 = prj_console_float_pc8253.conf
PRJ_CONF_CONSOLE_NOFLOAT_8253 = prj_console_nofloat_pc8253.conf
PRJ_CONF_CONSOLE_FLOAT_GEN = prj_console_float_generic.conf
PRJ_CONF_CONSOLE_NOFLOAT_GEN = prj_console_nofloat_generic.conf
PRJ_INCPATH = ${vHERE} $(subst \,/,${VXMICRO_BASE})/samples/microkernel/benchmark/latency_measure/src
PRJ_INCPATH += ${vBASE}/samples/include/
PRJ_CONF = $(PRJ_CONF_CONSOLE_$(if ${CONFIG_CPU_FLOAT_UNSUPPORTED},NOFLOAT,FLOAT)_$(if $(filter ${vBSP}_${vBSP_VARIANT},${PC8253_BSP_VARIANTS}),8253,GEN))
override EXTRA_CFLAGS += -I${vBASE}/kernel/microkernel/include/
include ${vMAKE}/target/make.ukernel
include ${TIMO_BASE}/Makefile.inc

View file

@ -1,40 +1,26 @@
# Makefile - Makefile to build boot_time
TIMO_BASE = $(strip $(subst /samples/microkernel/benchmark/boot_time,,$(shell pwd) ))
# 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/defs.base
# default BSP
BSP ?= generic_pc
# default, best, worst
BOOTTIME_QUALIFIER ?= default
CONF_generic_pc = generic_pc/prj_pentium4_${BOOTTIME_QUALIFIER}.conf
CONF_pentium4 = generic_pc/prj_pentium4_${BOOTTIME_QUALIFIER}.conf
CONF_minuteia = generic_pc/prj.conf
CONF_atom_n28xx = generic_pc/prj_expert_test.conf
CONF_quark_ = quark/prj.conf
PRJ_INCPATH += ${vBASE}/samples/include/
VPFILE = prj.vpf
KERNEL_TYPE = micro
CONF_OVERLAY = ${CONF_${BSP}}
include ./get_prj_conf.mk
include ${vMAKE}/target/make.ukernel
include ./check_prj_conf.mk
include ${TIMO_BASE}/Makefile.inc
$(if $(CONF_OVERLAY),,$(error no prj.conf file available))
$(if $(wildcard $(CONF_OVERLAY)),,$(error no $(CONF_OVERLAY) file available))
NO_QUALIFIED_PRJ_CONF_WARNING = $(strip \
no prj.conf for $(BOOTTIME_QUALIFIER) for $(BSP), using default prj.conf \
)
$(if $(filter $(BSP)/prj.conf,$(CONF_OVERLAY)),$(warning *** $(NO_QUALIFIED_PRJ_CONF_WARNING) ***),)
$(info using CONF_OVERLAY = $(CONF_OVERLAY))

View file

@ -1,53 +1,18 @@
# Makefile - build microkernel footprint project
# 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/defs.base
# default BSP
BSP ?= generic_pc
TIMO_BASE = $(strip $(subst /samples/microkernel/benchmark/footprint,,$(shell pwd) ))
# default configuration
TEST ?= min
PRJ_CONF = prj_${TEST}_${vARCH}.conf
BSP ?= generic_pc
VPFILE = micro_${TEST}.vpf
override EXTRA_CFLAGS += -DTEST_${TEST}
KERNEL_TYPE = micro
CONF_OVERLAY = prj_$(TEST)_$(ARCH).conf
CFLAGS += -DTEST_${TEST}
PRJ_INCPATH += ${vBASE}/samples/include/
include ${TIMO_BASE}/Makefile.inc
# uncomment this to get a per-arch, per-test output dir
# OUTPUT_DIR ?= ${vARCH}_${TEST}
include ${vMAKE}/target/make.ukernel
ifeq (${vARCH},ARM)
ifneq (${TEST},min)
ifeq ($(ARCH),ARM)
ifneq ($(TEST),min)
$(error 'reg' and 'max' test do not currently build for ARM)
endif
endif

View file

@ -1,47 +1,10 @@
# Makefile - latency benchmarking Makefile for microkernel
TIMO_BASE = $(strip $(subst /samples/microkernel/benchmark/latency_measure,,$(shell pwd) ))
# 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.
# DESCRIPTION
# Makefile for the test suite for various latencies benchmarking
PC8253_BSP_VARIANTS=generic_pc pentium4 minuteia
BSP ?= generic_pc
VPFILE = prj.vpf
KERNEL_TYPE = micro
CONF_OVERLAY = prj_$(if $(filter $(BSP),$(PC8253_BSP_VARIANTS)),pc8253,generic).conf
PC8253_BSP_VARIANTS=generic_pc_pentium4 generic_pc_minuteia
PRJ_CONF = $(if $(filter ${vBSP}_${vBSP_VARIANT},${PC8253_BSP_VARIANTS}),prj_pc8253.conf,prj_generic.conf)
include $(subst \,/,${VXMICRO_BASE})/make/env/defs.base
PRJ_SRCPATH = ${vBASE}/samples/microkernel/benchmark/latency_measure/src
PRJ_SRC += ${vBASE}/samples/microkernel/test/test_task_irq/src/raise_int.c
PRJ_INCPATH += ${vBASE}/samples/include/
include ${vMAKE}/target/make.ukernel
include ${TIMO_BASE}/Makefile.inc

View file

@ -1,48 +1,11 @@
# Makefile - sys_kernel benchmarking Makefile for microkernel
TIMO_BASE = $(strip $(subst /samples/microkernel/benchmark/sys_kernel,,$(shell pwd) ))
# 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
# Makefile for the SysKernel benchmark
PC8253_BSP_VARIANTS=generic_pc pentium4 minuteia
BSP ?= generic_pc
VPFILE = $(TIMO_BASE)/samples/microkernel/benchmark/sys_kernel/prj.vpf
KERNEL = micro
SNIPPET = prj_console_$(if $(filter $(BSP),$(PC8253_BSP_VARIANTS)),pc8253,generic).conf
PROJECT_BASE = $(TIMO_BASE)/samples/nanokernel/benchmark/sys_kernel
PC8253_BSP_VARIANTS=generic_pc_pentium4 generic_pc_minuteia
PRJ_CONF_8253 = prj_console_pc8253.conf
PRJ_CONF_GEN = prj_console_generic.conf
PRJ_SRCPATH = ${vBASE}/samples/nanokernel/benchmark/sys_kernel/src
PRJ_INCPATH = ${vHERE} $(subst \,/,${VXMICRO_BASE})/samples/microkernel/benchmark/latency_measure/src
PRJ_INCPATH += ${vBASE}/samples/include/
PRJ_CONF = $(PRJ_CONF_$(if $(filter ${vBSP}_${vBSP_VARIANT},${PC8253_BSP_VARIANTS}),8253,GEN))
include $(subst \,/,${VXMICRO_BASE})/make/env/defs.base
include ${vMAKE}/target/make.ukernel
include ${TIMO_BASE}/Makefile.inc