cmake: cache line size detection
[vpp.git] / src / plugins / memif.am
index d3a3171..e7deb7d 100644 (file)
 # limitations under the License.
 
 vppplugins_LTLIBRARIES += memif_plugin.la
+vppapitestplugins_LTLIBRARIES += memif_test_plugin.la
 
+memif_plugin_la_LIBADD =
 memif_plugin_la_SOURCES = memif/memif.c   \
        memif/memif_api.c                 \
        memif/cli.c                       \
        memif/node.c                      \
        memif/device.c                    \
+       memif/socket.c                    \
        memif/memif_plugin.api.h
 
+memif_test_plugin_la_SOURCES = \
+  memif/memif_test.c memif/memif_plugin.api.h
+
 noinst_HEADERS += memif/memif.h
 
 nobase_apiinclude_HEADERS +=              \
@@ -29,4 +35,34 @@ nobase_apiinclude_HEADERS +=              \
 
 API_FILES += memif/memif.api
 
+if CPU_X86_64
+memif_multiversioning_sources =                                        \
+       memif/node.c                                            \
+       memif/device.c
+
+if CC_SUPPORTS_AVX2
+###############################################################
+# AVX2
+###############################################################
+memif_plugin_avx2_la_SOURCES = $(memif_multiversioning_sources)
+memif_plugin_avx2_la_CFLAGS =                                  \
+       $(AM_CFLAGS)  @CPU_AVX2_FLAGS@                          \
+       -DCLIB_MARCH_VARIANT=avx2
+noinst_LTLIBRARIES += memif_plugin_avx2.la
+memif_plugin_la_LIBADD += memif_plugin_avx2.la
+endif
+
+if CC_SUPPORTS_AVX512
+###############################################################
+# AVX512
+###############################################################
+memif_plugin_avx512_la_SOURCES = $(memif_multiversioning_sources)
+memif_plugin_avx512_la_CFLAGS =                                        \
+       $(AM_CFLAGS) @CPU_AVX512_FLAGS@                         \
+       -DCLIB_MARCH_VARIANT=avx512
+noinst_LTLIBRARIES += memif_plugin_avx512.la
+memif_plugin_la_LIBADD += memif_plugin_avx512.la
+endif
+endif
+
 # vi:syntax=automake