1 # 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:
6 # http://www.apache.org/licenses/LICENSE-2.0
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.
14 # vector packet processor
16 MACHINE=$(shell uname -m)
19 ifeq ($(MACHINE),$(filter $(MACHINE),x86_64 i686))
20 vpp_march = corei7 # Nehalem Instruction set
21 vpp_mtune = corei7-avx # Optimize for Sandy Bridge
22 else ifeq ($(MACHINE),aarch64)
23 ifeq ($(TARGET_PLATFORM),thunderx)
24 vpp_march = armv8-a+crc
26 vpp_dpdk_target = arm64-thunderx-linuxapp-gcc
32 vpp_native_tools = vppapigen
36 # Uncoment to enable building unit tests
37 # vpp_enable_tests = yes
39 vpp_root_packages = vpp
41 # DPDK configuration parameters
42 # vpp_uses_dpdk_mlx5_pmd = yes
43 # vpp_uses_external_dpdk = yes
44 # vpp_dpdk_inc_dir = /usr/include/dpdk
45 # vpp_dpdk_lib_dir = /usr/lib
46 # vpp_dpdk_shared_lib = yes
48 # load balancer plugin is not portable on 32 bit platform
49 ifeq ($(MACHINE),i686)
50 vpp_configure_args_vpp = --disable-lb-plugin
53 vpp_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
54 -fstack-protector-all -fPIC -Werror
55 vpp_debug_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
56 -fstack-protector-all -fPIC -Werror
58 vpp_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
59 -fstack-protector -fPIC -Werror
60 vpp_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
61 -fstack-protector -fPIC -Werror
63 vpp_clang_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
64 -fstack-protector -fPIC -Werror
65 vpp_clang_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
66 -fstack-protector -fPIC -Werror
68 vpp_gcov_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
69 -fPIC -Werror -fprofile-arcs -ftest-coverage
70 vpp_gcov_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
71 -fPIC -Werror -coverage
73 vpp_coverity_TAG_CFLAGS = -g -O2 -march=$(MARCH) -mtune=$(MTUNE) \
74 -fPIC -Werror -D__COVERITY__
75 vpp_coverity_TAG_LDFLAGS = -g -O2 -march=$(MARCH) -mtune=$(MTUNE) \
76 -fPIC -Werror -D__COVERITY__