[ovs-dev] [PATCH 1/2] acinclude.m4: Restore --whole-archive option for DPDK.

Daniele Di Proietto diproiettod at vmware.com
Fri Mar 20 13:02:13 UTC 2015


The --whole-archive option is required to link vswitchd with DPDK,
otherwise the PMD drivers are not going to be included.  Omitting the
option is not going to cause build failures, but OVS won't be able to
use most physical NICs.

Signed-off-by: Daniele Di Proietto <diproiettod at vmware.com>
---
 acinclude.m4 | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/acinclude.m4 b/acinclude.m4
index a56d160..d4a3133 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -170,7 +170,8 @@ AC_DEFUN([OVS_CHECK_DPDK], [
 
     DPDK_INCLUDE=$RTE_SDK/include
     DPDK_LIB_DIR=$RTE_SDK/lib
-    DPDK_LIB="-lintel_dpdk -lfuse "
+    DPDK_LIB="-lintel_dpdk"
+    DPDK_EXTRA_LIB="-lfuse"
 
     ovs_save_CFLAGS="$CFLAGS"
     ovs_save_LDFLAGS="$LDFLAGS"
@@ -187,7 +188,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [
     found=false
     save_LIBS=$LIBS
     for extras in "" "-ldl"; do
-        LIBS="$DPDK_LIB $extras $save_LIBS"
+        LIBS="$DPDK_LIB $extras $save_LIBS $DPDK_EXTRA_LIB"
         AC_LINK_IFELSE(
            [AC_LANG_PROGRAM([#include <rte_config.h>
                              #include <rte_eal.h>],
@@ -214,7 +215,7 @@ AC_DEFUN([OVS_CHECK_DPDK], [
     #
     # These options are specified inside a single -Wl directive to prevent
     # autotools from reordering them.
-    DPDK_vswitchd_LDFLAGS=-Wl,$DPDK_LIB
+    DPDK_vswitchd_LDFLAGS=-Wl,--whole-archive,$DPDK_LIB,--no-whole-archive
     AC_SUBST([DPDK_vswitchd_LDFLAGS])
     AC_DEFINE([DPDK_NETDEV], [1], [System uses the DPDK module.])
   else
-- 
2.1.4




More information about the dev mailing list