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
33 dpdk_plugin_la_LDFLAGS += -Wl,-lm,-ldl
34 dpdk_plugin_la_LIBADD =
36 dpdk_plugin_la_SOURCES = \
42 dpdk/device/common.c \
44 dpdk/device/dpdk_priv.h \
45 dpdk/device/device.c \
46 dpdk/device/format.c \
50 dpdk/ipsec/esp_encrypt.c \
51 dpdk/ipsec/esp_decrypt.c \
52 dpdk/ipsec/crypto_node.c \
55 dpdk/api/dpdk_plugin.api.h
57 API_FILES += dpdk/api/dpdk.api
60 dpdk_multiversioning_sources = \
66 ###############################################################
68 ###############################################################
69 libdpdk_plugin_avx2_la_SOURCES = $(dpdk_multiversioning_sources)
70 libdpdk_plugin_avx2_la_CFLAGS = \
71 $(AM_CFLAGS) @CPU_AVX2_FLAGS@ \
72 -DCLIB_MARCH_VARIANT=avx2
73 noinst_LTLIBRARIES += libdpdk_plugin_avx2.la
74 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx2.la
78 ###############################################################
80 ###############################################################
81 libdpdk_plugin_avx512_la_SOURCES = $(dpdk_multiversioning_sources)
82 libdpdk_plugin_avx512_la_CFLAGS = \
83 $(AM_CFLAGS) @CPU_AVX512_FLAGS@ \
84 -DCLIB_MARCH_VARIANT=avx512
85 noinst_LTLIBRARIES += libdpdk_plugin_avx512.la
86 dpdk_plugin_la_LIBADD += libdpdk_plugin_avx512.la
90 nobase_include_HEADERS += \
92 dpdk/api/dpdk_all_api_h.h \
95 dpdk_test_plugin_la_SOURCES = \
96 dpdk/api/dpdk_test.c dpdk/api/dpdk_plugin.api.h