1 # Copyright (c) 2016 Cisco Systems, Inc.
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 vppapitestplugins_LTLIBRARIES += dpdk_test_plugin.la
15 vppplugins_LTLIBRARIES += dpdk_plugin.la
18 dpdk_plugin_la_LDFLAGS = $(AM_LDFLAGS) -ldpdk
20 dpdk_plugin_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--whole-archive,-l:libdpdk.a,--no-whole-archive
23 dpdk_plugin_la_LDFLAGS += -Wl,--exclude-libs,libIPSec_MB.a,-l:libIPSec_MB.a
25 if WITH_ISA_L_CRYPTO_LIB
26 dpdk_plugin_la_LDFLAGS += -Wl,--exclude-libs,libisal_crypto.a,-l:libisal_crypto.a
28 dpdk_plugin_la_CFLAGS = $(AM_CFLAGS)
30 dpdk_plugin_la_LDFLAGS += -Wl,-lnuma
34 dpdk_plugin_la_LDFLAGS += -Wl,-lm,-ldl,-lmnl
36 dpdk_plugin_la_LDFLAGS += -Wl,-lm,-ldl
38 dpdk_plugin_la_LIBADD =
40 dpdk_plugin_la_SOURCES = \
46 dpdk/device/common.c \
48 dpdk/device/dpdk_priv.h \
49 dpdk/device/device.c \
50 dpdk/device/format.c \
54 dpdk/ipsec/esp_encrypt.c \
55 dpdk/ipsec/esp_decrypt.c \
56 dpdk/ipsec/crypto_node.c \
59 dpdk/api/dpdk_plugin.api.h
61 API_FILES += dpdk/api/dpdk.api
64 dpdk_multiversioning_sources = \
70 ###############################################################
72 ###############################################################
73 libdpdk_plugin_avx2_la_SOURCES = $(dpdk_multiversioning_sources)
74 libdpdk_plugin_avx2_la_CFLAGS = \
75 $(AM_CFLAGS) @CPU_AVX2_FLAGS@ \
76 -DCLIB_MARCH_VARIANT=avx2
77 noinst_LTLIBRARIES += libdpdk_plugin_avx2.la
78 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx2.la
82 ###############################################################
84 ###############################################################
85 libdpdk_plugin_avx512_la_SOURCES = $(dpdk_multiversioning_sources)
86 libdpdk_plugin_avx512_la_CFLAGS = \
87 $(AM_CFLAGS) @CPU_AVX512_FLAGS@ \
88 -DCLIB_MARCH_VARIANT=avx512
89 noinst_LTLIBRARIES += libdpdk_plugin_avx512.la
90 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx512.la
94 nobase_include_HEADERS += \
96 dpdk/api/dpdk_all_api_h.h \
99 dpdk_test_plugin_la_SOURCES = \
100 dpdk/api/dpdk_test.c dpdk/api/dpdk_plugin.api.h