| # Copyright (c) 2016 Cisco Systems, Inc. |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at: |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| vppapitestplugins_LTLIBRARIES += dpdk_test_plugin.la |
| vppplugins_LTLIBRARIES += dpdk_plugin.la |
| |
| if ENABLE_DPDK_SHARED |
| dpdk_plugin_la_LDFLAGS = $(AM_LDFLAGS) -ldpdk |
| else |
| dpdk_plugin_la_LDFLAGS = $(AM_LDFLAGS) -Wl,--whole-archive,-l:libdpdk.a,--no-whole-archive |
| endif |
| if WITH_AESNI_MB_LIB |
| dpdk_plugin_la_LDFLAGS += -Wl,--exclude-libs,libIPSec_MB.a,-l:libIPSec_MB.a |
| endif |
| if WITH_ISA_L_CRYPTO_LIB |
| dpdk_plugin_la_LDFLAGS += -Wl,--exclude-libs,libisal_crypto.a,-l:libisal_crypto.a |
| endif |
| dpdk_plugin_la_CFLAGS = $(AM_CFLAGS) |
| dpdk_plugin_la_LDFLAGS += -Wl,-lnuma |
| |
| dpdk_plugin_la_LDFLAGS += -Wl,-lm,-ldl |
| dpdk_plugin_la_LIBADD = |
| |
| dpdk_plugin_la_SOURCES = \ |
| dpdk/main.c \ |
| dpdk/buffer.c \ |
| dpdk/thread.c \ |
| dpdk/api/dpdk_api.c \ |
| dpdk/device/cli.c \ |
| dpdk/device/common.c \ |
| dpdk/device/dpdk_priv.h \ |
| dpdk/device/device.c \ |
| dpdk/device/format.c \ |
| dpdk/device/init.c \ |
| dpdk/device/node.c \ |
| dpdk/hqos/hqos.c \ |
| dpdk/ipsec/esp_encrypt.c \ |
| dpdk/ipsec/esp_decrypt.c \ |
| dpdk/ipsec/crypto_node.c \ |
| dpdk/ipsec/cli.c \ |
| dpdk/ipsec/ipsec.c \ |
| dpdk/api/dpdk_plugin.api.h |
| |
| API_FILES += dpdk/api/dpdk.api |
| |
| if CPU_X86_64 |
| dpdk_multiversioning_files = \ |
| dpdk/buffer.c \ |
| dpdk/device/node.c \ |
| dpdk/device/device.c |
| |
| if CC_SUPPORTS_AVX2 |
| ############################################################### |
| # AVX2 |
| ############################################################### |
| libdpdk_plugin_avx2_la_SOURCES = $(dpdk_multiversioning_files) |
| libdpdk_plugin_avx2_la_CFLAGS = \ |
| $(AM_CFLAGS) @CPU_AVX2_FLAGS@ \ |
| -DCLIB_MULTIARCH_VARIANT=avx2 |
| noinst_LTLIBRARIES += libdpdk_plugin_avx2.la |
| dpdk_plugin_la_LIBADD += libdpdk_plugin_avx2.la |
| endif |
| |
| if CC_SUPPORTS_AVX512 |
| ############################################################### |
| # AVX512 |
| ############################################################### |
| libdpdk_plugin_avx512_la_SOURCES = $(dpdk_multiversioning_files) |
| libdpdk_plugin_avx512_la_CFLAGS = \ |
| $(AM_CFLAGS) @CPU_AVX512_FLAGS@ \ |
| -DCLIB_MULTIARCH_VARIANT=avx512 |
| noinst_LTLIBRARIES += libdpdk_plugin_avx512.la |
| dpdk_plugin_la_LIBADD += libdpdk_plugin_avx512.la |
| endif |
| endif |
| |
| nobase_include_HEADERS += \ |
| dpdk/device/dpdk.h \ |
| dpdk/api/dpdk_all_api_h.h \ |
| dpdk/ipsec/ipsec.h |
| |
| dpdk_test_plugin_la_SOURCES = \ |
| dpdk/api/dpdk_test.c dpdk/api/dpdk_plugin.api.h |
| |
| # vi:syntax=automake |