X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fconfigure.ac;h=2a54cd29d4224ef16d9692d94d3754c3a53aeaf0;hb=164e5f8c63652028ecb9c3570e1ea8618b163071;hp=d2fd5814619d8687890317a6500dedca36b86cdb;hpb=2d506675d1e0464545d28754618bc4829428a984;p=vpp.git diff --git a/src/configure.ac b/src/configure.ac index d2fd5814619..2a54cd29d42 100644 --- a/src/configure.ac +++ b/src/configure.ac @@ -1,17 +1,15 @@ -AC_INIT([vpp], [18.04], [vpp-dev@fd.io]) +AC_INIT([vpp], [18.07], [vpp-dev@fd.io]) LT_INIT AC_CONFIG_AUX_DIR([.]) AM_INIT_AUTOMAKE([subdir-objects]) AM_SILENT_RULES([yes]) -AC_CONFIG_FILES([Makefile plugins/Makefile vpp-api/python/Makefile vpp-api/java/Makefile vpp-api/vapi/Makefile vpp-api/vom/Makefile]) +AC_CONFIG_FILES([Makefile plugins/Makefile vpp-api/python/Makefile vpp-api/java/Makefile vpp-api/vapi/Makefile]) AC_CONFIG_MACRO_DIR([m4]) AC_PROG_CC -AC_PROG_CXX AC_PROG_CPP AM_PROG_AS AM_PROG_LIBTOOL -AC_PROG_YACC AM_PATH_PYTHON AM_CONDITIONAL([CROSSCOMPILE], [test "$cross_compiling" == "yes"]) @@ -130,13 +128,13 @@ DISABLE_ARG(vlib, [Disable vlib and dependant libs and binaries]) DISABLE_ARG(svm, [Disable svm and dependant libs and binaries]) DISABLE_ARG(papi, [Disable Python API bindings]) DISABLE_ARG(japi, [Disable Java API bindings]) -DISABLE_ARG(vom, [Disable VPP object model bindings]) # --with-X # --without-X WITHOUT_ARG(libssl, [Disable libssl]) WITHOUT_ARG(apicli, [Disable binary api CLI]) +WITHOUT_ARG(mbedtls, [Disable mbedtls]) AC_ARG_WITH(unix, AC_HELP_STRING([--with-unix],[Compile unix version of clib]), @@ -187,6 +185,14 @@ AC_SUBST([CPU_AVX512_FLAGS],"-march=skylake-avx512 -mtune=skylake-avx512") AM_CONDITIONAL([CPU_X86_64], [test "$build_cpu" = "x86_64"]) AM_CONDITIONAL([CPU_AARCH64], [test "$build_cpu" = "aarch64"]) +############################################################################### +# misc compiler flags +############################################################################### + +CC_CHECK_FLAG("-Wno-address-of-packed-member") +AS_IF([test "$cc_flag_check" = yes], + [CFLAGS="${CFLAGS} -Wno-address-of-packed-member"], []) + ############################################################################### # Substitutions and defines ############################################################################### @@ -196,6 +202,7 @@ AC_SUBST(APICLI, [-DVPP_API_TEST_BUILTIN=${n_with_apicli}]) AC_DEFINE_UNQUOTED(DPDK_SHARED_LIB, [${n_enable_dpdk_shared}]) AC_DEFINE_UNQUOTED(WITH_LIBSSL, [${n_with_libssl}]) +AC_DEFINE_UNQUOTED(WITH_MBEDTLS, [${n_with_mbedtls}]) # Silence following noise: @@ -208,25 +215,37 @@ AC_SUBST(AR_FLAGS) ############################################################################### # Please keep alphabetical order +PLUGIN_ENABLED(abf) PLUGIN_ENABLED(acl) +PLUGIN_ENABLED(avf) +PLUGIN_ENABLED(cdp) PLUGIN_ENABLED(dpdk) PLUGIN_ENABLED(flowprobe) +PLUGIN_ENABLED(gbp) PLUGIN_ENABLED(gtpu) +PLUGIN_ENABLED(igmp) PLUGIN_ENABLED(ila) PLUGIN_ENABLED(ioam) PLUGIN_ENABLED(ixge) PLUGIN_ENABLED(kubeproxy) +PLUGIN_ENABLED(l2e) +PLUGIN_ENABLED(lacp) PLUGIN_ENABLED(lb) +PLUGIN_ENABLED(marvell) PLUGIN_ENABLED(memif) PLUGIN_ENABLED(pppoe) -PLUGIN_ENABLED(sixrd) PLUGIN_ENABLED(nat) +PLUGIN_ENABLED(srv6ad) +PLUGIN_ENABLED(srv6am) +PLUGIN_ENABLED(srv6as) PLUGIN_ENABLED(stn) -PLUGIN_ENABLED(l2e) +PLUGIN_ENABLED(tlsmbedtls) +PLUGIN_ENABLED(tlsopenssl) ############################################################################### # Dependency checks ############################################################################### +AC_CHECK_FUNC([memfd_create], [AC_DEFINE([HAVE_MEMFD_CREATE], [1], [Define if memfd exists])]) AM_COND_IF([ENABLE_DPDK_SHARED], [ @@ -264,46 +283,45 @@ AM_CONDITIONAL(WITH_AESNI_MB_LIB, test "$with_aesni_mb_lib" = "yes") m4_append([list_of_with], [isa_l_crypto_lib], [, ]) AM_CONDITIONAL(WITH_ISA_L_CRYPTO_LIB, test "$with_isa_l_crypto_lib" = "yes") - -with_ibverbs_lib=no -DPDK_IS_PMD_ENABLED(LIBRTE_MLX4_PMD, dpdk_mlx4_pmd) -AM_COND_IF([WITH_DPDK_MLX4_PMD], +AM_COND_IF([ENABLE_G2], [ - AC_CHECK_LIB([ibverbs], [ibv_fork_init], - [with_ibverbs_lib=yes], - [AC_MSG_ERROR([ibverbs library not found])]) + PKG_CHECK_MODULES(g2, gtk+-2.0) ]) -DPDK_IS_PMD_ENABLED(LIBRTE_MLX5_PMD, dpdk_mlx5_pmd) -AM_COND_IF([WITH_DPDK_MLX5_PMD], +AM_COND_IF([ENABLE_MARVELL_PLUGIN], [ - AC_CHECK_LIB([ibverbs], [ibv_fork_init], - [with_ibverbs_lib=yes], - [AC_MSG_ERROR([ibverbs library not found])]) + AC_CHECK_LIB( [musdk], [pp2_init], + [], + [ + AC_MSG_WARN([Marvell MUSDK library with PP2 support not found. Plugin disabled.]) + enable_marvell_plugin=no + AM_CONDITIONAL(ENABLE_MARVELL_PLUGIN, false) + ]) ]) -m4_append([list_of_with], [ibverbs_lib], [, ]) -AM_CONDITIONAL(WITH_IBVERBS_LIB, test "$with_ibverbs_lib" = "yes") - - -AM_COND_IF([ENABLE_G2], +AM_COND_IF([WITH_MBEDTLS], [], [ - PKG_CHECK_MODULES(g2, gtk+-2.0) + AC_MSG_WARN([mbedtls not enabled. Disabling tlsmbedtls plugin]) + enable_tlsmbedtls_plugin=no + AM_CONDITIONAL(ENABLE_TLSMBEDTLS_PLUGIN, false) ]) -# If cross-compiling, we need external vppapigen and we cannot continue without it -# For native builds, we just set dependency on vpppaigen binary in top_builddir -AM_COND_IF([CROSSCOMPILE], +AM_COND_IF([ENABLE_TLSMBEDTLS_PLUGIN], [ - AC_PATH_PROG([VPPAPIGEN], [vppapigen], [no]) - if test "$VPPAPIGEN" = "no"; then - AC_MSG_ERROR([Externaly built vppapigen is needed when cross-compiling...]) - fi -],[ - VPPAPIGEN=\$\(top_builddir\)/vppapigen + AC_CHECK_HEADERS([mbedtls/ssl.h], [], + [ + AC_MSG_WARN([mbedtls headers not found. TLS engine implementation disabled]) + enable_tlsmbedtls_plugin=no + AM_CONDITIONAL(ENABLE_TLSMBEDTLS_PLUGIN, false) + ], []) ]) -AC_SUBST([VPPAPIGEN]) +AM_COND_IF([WITH_LIBSSL], [], +[ + AC_MSG_WARN([openssl not enabled. Disabling tlsopenssl plugin]) + enable_tlsopenssl_plugin=no + AM_CONDITIONAL(ENABLE_TLSOPENSSL_PLUGIN, false) +]) ############################################################################### # JAVA