blob: 9f01a656e0bea233c14834963b66e6b4ab9929ed [file] [log] [blame]
Ed Warnickecb9cada2015-12-08 15:45:58 -07001# Copyright (c) 2015 Cisco and/or its affiliates.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at:
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14# vector packet processor
Damjan Marion1664f9b2017-04-24 20:48:53 +020015
16MACHINE=$(shell uname -m)
17
Ed Warnickecb9cada2015-12-08 15:45:58 -070018vpp_arch = native
Marco6ebca6c2017-01-10 13:53:31 +010019ifeq ($(TARGET_PLATFORM),thunderx)
Marco6ebca6c2017-01-10 13:53:31 +010020vpp_dpdk_target = arm64-thunderx-linuxapp-gcc
Marco6ebca6c2017-01-10 13:53:31 +010021endif
Damjan Marion29b6af92015-12-13 21:17:07 +010022vpp_native_tools = vppapigen
Ed Warnickecb9cada2015-12-08 15:45:58 -070023
Damjan Marione936bbe2016-02-25 23:17:38 +010024vpp_uses_dpdk = yes
25
Damjan Marionc47e9792016-04-11 13:34:36 +020026# Uncoment to enable building unit tests
27# vpp_enable_tests = yes
28
Dave Wallaced756b352017-07-03 13:11:38 -040029vpp_root_packages = vpp
Ed Warnickecb9cada2015-12-08 15:45:58 -070030
Damjan Marion28e3db92016-04-01 12:35:17 +020031# DPDK configuration parameters
Damjan Marion696f1ad2016-12-23 22:42:41 +010032# vpp_uses_dpdk_mlx5_pmd = yes
Damjan Marion28e3db92016-04-01 12:35:17 +020033# vpp_uses_external_dpdk = yes
34# vpp_dpdk_inc_dir = /usr/include/dpdk
35# vpp_dpdk_lib_dir = /usr/lib
36# vpp_dpdk_shared_lib = yes
Ed Warnickecb9cada2015-12-08 15:45:58 -070037
Dave Barach7b0c6732017-11-06 16:06:05 -050038vpp_configure_args_vpp =
39
Damjan Marion7bee80c2017-04-26 15:32:12 +020040# load balancer plugin is not portable on 32 bit platform
41ifeq ($(MACHINE),i686)
Dave Barach7b0c6732017-11-06 16:06:05 -050042vpp_configure_args_vpp += --disable-lb-plugin
Damjan Marion7bee80c2017-04-26 15:32:12 +020043endif
44
Dave Barach7b0c6732017-11-06 16:06:05 -050045# To disable the VPP object model build - and save about half the build time -
46# uncomment the following...
47# vpp_configure_args_vpp += --disable-vom
48
Damjan Marionba3c7732017-11-10 20:26:50 +010049vpp_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 \
Dave Barach20abdd92016-02-10 09:13:23 -050050 -fstack-protector-all -fPIC -Werror
Damjan Marionba3c7732017-11-10 20:26:50 +010051vpp_debug_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 \
Dave Barach20abdd92016-02-10 09:13:23 -050052 -fstack-protector-all -fPIC -Werror
Ed Warnickecb9cada2015-12-08 15:45:58 -070053
Damjan Marionba3c7732017-11-10 20:26:50 +010054vpp_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -fstack-protector -fPIC -Werror
55vpp_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -fstack-protector -fPIC -Werror
Dave Barachec177ab2016-04-18 17:10:18 -040056
Damjan Marionba3c7732017-11-10 20:26:50 +010057vpp_clang_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -fstack-protector -fPIC -Werror
58vpp_clang_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -fstack-protector -fPIC -Werror
Damjan Marione30872e2016-11-12 01:23:55 +010059
Damjan Marionba3c7732017-11-10 20:26:50 +010060vpp_gcov_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -fPIC -Werror -fprofile-arcs -ftest-coverage
61vpp_gcov_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -fPIC -Werror -coverage
Dave Barach3ad77042017-01-04 17:24:32 -050062
Damjan Marionba3c7732017-11-10 20:26:50 +010063vpp_coverity_TAG_CFLAGS = -g -O2 -fPIC -Werror -D__COVERITY__
64vpp_coverity_TAG_LDFLAGS = -g -O2 -fPIC -Werror -D__COVERITY__
Dave Barach3ad77042017-01-04 17:24:32 -050065