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)
29 dpdk_plugin_la_LDFLAGS += -Wl,-lnuma
31 dpdk_plugin_la_LDFLAGS += -Wl,-lm,-ldl
32 dpdk_plugin_la_LIBADD =
34 dpdk_plugin_la_SOURCES = \
40 dpdk/device/common.c \
42 dpdk/device/dpdk_priv.h \
43 dpdk/device/device.c \
44 dpdk/device/format.c \
48 dpdk/ipsec/esp_encrypt.c \
49 dpdk/ipsec/esp_decrypt.c \
50 dpdk/ipsec/crypto_node.c \
53 dpdk/api/dpdk_plugin.api.h
55 API_FILES += dpdk/api/dpdk.api
58 dpdk_multiversioning_files = \
64 ###############################################################
66 ###############################################################
67 libdpdk_plugin_avx2_la_SOURCES = $(dpdk_multiversioning_files)
68 libdpdk_plugin_avx2_la_CFLAGS = \
69 $(AM_CFLAGS) @CPU_AVX2_FLAGS@ \
70 -DCLIB_MULTIARCH_VARIANT=avx2
71 noinst_LTLIBRARIES += libdpdk_plugin_avx2.la
72 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx2.la
76 ###############################################################
78 ###############################################################
79 libdpdk_plugin_avx512_la_SOURCES = $(dpdk_multiversioning_files)
80 libdpdk_plugin_avx512_la_CFLAGS = \
81 $(AM_CFLAGS) @CPU_AVX512_FLAGS@ \
82 -DCLIB_MULTIARCH_VARIANT=avx512
83 noinst_LTLIBRARIES += libdpdk_plugin_avx512.la
84 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx512.la
88 nobase_include_HEADERS += \
90 dpdk/api/dpdk_all_api_h.h \
93 dpdk_test_plugin_la_SOURCES = \
94 dpdk/api/dpdk_test.c dpdk/api/dpdk_plugin.api.h