Add support for multiple microarchitectures in single binary
[vpp.git] / build-data / platforms / vpp.mk
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:
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
15 vpp_arch = native
16 vpp_march = corei7                      # Nehalem Instruction set
17 vpp_mtune = corei7-avx                  # Optimize for Sandy Bridge
18 vpp_dpdk_arch = corei7
19 vpp_native_tools = vppapigen
20
21 vpp_uses_dpdk = yes
22
23 # Uncoment to enable building unit tests
24 # vpp_enable_tests = yes
25
26 vpp_root_packages = vpp vlib vlib-api vnet svm vpp-api-test \
27         vpp-api gmod
28
29 vpp_configure_args_vpp = --with-dpdk
30 vnet_configure_args_vpp = --with-dpdk
31
32 # Set these parameters carefully. The vlib_buffer_t is 128 bytes, i.e.
33 vlib_configure_args_vpp = --with-pre-data=128
34
35 # DPDK configuration parameters
36 # vpp_uses_external_dpdk = yes
37 # vpp_dpdk_inc_dir = /usr/include/dpdk
38 # vpp_dpdk_lib_dir = /usr/lib
39 # vpp_dpdk_shared_lib = yes
40
41 vpp_debug_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
42         -fstack-protector-all -fPIC -Werror
43 vpp_debug_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -DFORTIFY_SOURCE=2 -march=$(MARCH) \
44         -fstack-protector-all -fPIC -Werror
45
46 vpp_TAG_CFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
47         -fstack-protector -fPIC -Werror
48 vpp_TAG_LDFLAGS = -g -O2 -DFORTIFY_SOURCE=2 -march=$(MARCH) -mtune=$(MTUNE) \
49         -fstack-protector -fPIC -Werror
50
51 vpp_gcov_TAG_CFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
52         -fPIC -Werror -fprofile-arcs -ftest-coverage
53 vpp_gcov_TAG_LDFLAGS = -g -O0 -DCLIB_DEBUG -march=$(MARCH) \
54         -fPIC -Werror -coverage