blob: 5aafdd76f40de157b94221ce7a31aede0a103fa8 [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
Damjan Marion1664f9b2017-04-24 20:48:53 +020019ifeq ($(MACHINE),$(filter $(MACHINE),x86_64 i686))
Damjan Marion1c80e832016-05-11 23:07:18 +020020vpp_march = corei7 # Nehalem Instruction set
21vpp_mtune = corei7-avx # Optimize for Sandy Bridge
Damjan Marion1664f9b2017-04-24 20:48:53 +020022else ifeq ($(MACHINE),aarch64)
Marco6ebca6c2017-01-10 13:53:31 +010023ifeq ($(TARGET_PLATFORM),thunderx)
24vpp_march = armv8-a+crc
25vpp_mtune = thunderx
Marco6ebca6c2017-01-10 13:53:31 +010026vpp_dpdk_target = arm64-thunderx-linuxapp-gcc
Damjan Marion154d4452016-06-28 19:10:41 +020027else
28vpp_march = native
29vpp_mtune = generic
Damjan Marion154d4452016-06-28 19:10:41 +020030endif
Marco6ebca6c2017-01-10 13:53:31 +010031endif
Damjan Marion29b6af92015-12-13 21:17:07 +010032vpp_native_tools = vppapigen
Ed Warnickecb9cada2015-12-08 15:45:58 -070033
Damjan Marione936bbe2016-02-25 23:17:38 +010034vpp_uses_dpdk = yes
35
Damjan Marionc47e9792016-04-11 13:34:36 +020036# Uncoment to enable building unit tests
37# vpp_enable_tests = yes
38
Damjan Marioncb034b92016-12-28 18:38:59 +010039vpp_root_packages = vpp gmod
Ed Warnickecb9cada2015-12-08 15:45:58 -070040
Damjan Marion28e3db92016-04-01 12:35:17 +020041# DPDK configuration parameters
Sergio Gonzalez Monroyd04b60b2017-01-20 15:35:23 +000042# vpp_uses_dpdk_cryptodev_sw = yes
Damjan Marion696f1ad2016-12-23 22:42:41 +010043# vpp_uses_dpdk_mlx5_pmd = yes
Damjan Marion28e3db92016-04-01 12:35:17 +020044# vpp_uses_external_dpdk = yes
45# vpp_dpdk_inc_dir = /usr/include/dpdk
46# vpp_dpdk_lib_dir = /usr/lib
47# vpp_dpdk_shared_lib = yes
Ed Warnickecb9cada2015-12-08 15:45:58 -070048
49vpp_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
Dave Barach20abdd92016-02-10 09:13:23 -050050 -fstack-protector-all -fPIC -Werror
Ed Warnickecb9cada2015-12-08 15:45:58 -070051vpp_debug_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
Dave Barach20abdd92016-02-10 09:13:23 -050052 -fstack-protector-all -fPIC -Werror
Ed Warnickecb9cada2015-12-08 15:45:58 -070053
Damjan Marion1c80e832016-05-11 23:07:18 +020054vpp_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
Dave Barach20abdd92016-02-10 09:13:23 -050055 -fstack-protector -fPIC -Werror
Damjan Marion1c80e832016-05-11 23:07:18 +020056vpp_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
Dave Barach20abdd92016-02-10 09:13:23 -050057 -fstack-protector -fPIC -Werror
Dave Barachec177ab2016-04-18 17:10:18 -040058
Damjan Marione30872e2016-11-12 01:23:55 +010059vpp_clang_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
60 -fstack-protector -fPIC -Werror
61vpp_clang_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
62 -fstack-protector -fPIC -Werror
63
Dave Barachec177ab2016-04-18 17:10:18 -040064vpp_gcov_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
65 -fPIC -Werror -fprofile-arcs -ftest-coverage
66vpp_gcov_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
67 -fPIC -Werror -coverage
Dave Barach3ad77042017-01-04 17:24:32 -050068
69vpp_coverity_TAG_CFLAGS = -g -O2 -march=$(MARCH) -mtune=$(MTUNE) \
70 -fPIC -Werror -D__COVERITY__
71vpp_coverity_TAG_LDFLAGS = -g -O2 -march=$(MARCH) -mtune=$(MTUNE) \
72 -fPIC -Werror -D__COVERITY__
73