[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] netmap: support git-submodule build otption
From: |
Giuseppe Lettieri |
Subject: |
[PATCH] netmap: support git-submodule build otption |
Date: |
Fri, 4 Oct 2019 15:02:42 +0200 |
From: Giuseppe Lettieri <address@hidden>
With this patch, netmap support can be enabled with
the following options to the configure script:
--enable-netmap[=system]
Use the host system netmap installation.
Fail if not found.
--enable-netmap=git
clone the official netmap repository on
github (mostly useful for CI)
Signed-off-by: Giuseppe Lettieri <address@hidden>
---
.gitmodules | 3 +++
configure | 64 +++++++++++++++++++++++++++++++++++++++++++++--------
2 files changed, 58 insertions(+), 9 deletions(-)
diff --git a/.gitmodules b/.gitmodules
index c5c474169d..bf75dbc5e3 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -58,3 +58,6 @@
[submodule "roms/opensbi"]
path = roms/opensbi
url = https://git.qemu.org/git/opensbi.git
+[submodule "netmap"]
+ path = netmap
+ url = https://github.com/luigirizzo/netmap.git
diff --git a/configure b/configure
index 8f8446f52b..cb2c6c70d6 100755
--- a/configure
+++ b/configure
@@ -1132,6 +1132,10 @@ for opt do
;;
--enable-netmap) netmap="yes"
;;
+ --enable-netmap=git) netmap="git"
+ ;;
+ --enable-netmap=system) netmap="system"
+ ;;
--disable-xen) xen="no"
;;
--enable-xen) xen="yes"
@@ -3318,8 +3322,9 @@ fi
# a minor/major version number. Minor new features will be marked with values
up
# to 15, and if something happens that requires a change to the backend we will
# move above 15, submit the backend fixes and modify this two bounds.
-if test "$netmap" != "no" ; then
- cat > $TMPC << EOF
+case "$netmap" in
+ "" | yes | system)
+ cat > $TMPC << EOF
#include <inttypes.h>
#include <net/if.h>
#include <net/netmap.h>
@@ -3330,14 +3335,55 @@ if test "$netmap" != "no" ; then
int main(void) { return 0; }
EOF
if compile_prog "" "" ; then
- netmap=yes
+ netmap_system=yes
else
- if test "$netmap" = "yes" ; then
- feature_not_found "netmap"
- fi
- netmap=no
+ netmap_system=no
fi
-fi
+ ;;
+esac
+
+case "$netmap" in
+ "" | yes)
+ if test "$netmap_system" = "yes"; then
+ netmap=system
+ elif test -e "${source_path}/.git" && test $git_update = 'yes' ; then
+ netmap=git
+ elif test -e "${source_path}/netmap/configure" ; then
+ netmap=internal
+ elif test -z "$netmap" ; then
+ netmap=no
+ else
+ feature_not_found "netmap" "Install netmap or git submodule"
+ fi
+ ;;
+
+ system)
+ if test "$netmap_system" = "no"; then
+ feature_not_found "netmap" "Install netmap"
+ fi
+ ;;
+esac
+
+case "$netmap" in
+ git | internal)
+ if test "$netmap" = git; then
+ git_submodules="${git_submodules} netmap"
+ fi
+ mkdir -p netmap
+ QEMU_CFLAGS="$QEMU_CFLAGS -I\$(SRC_PATH)/netmap/sys"
+ ;;
+
+ system)
+ ;;
+
+ no)
+ ;;
+ *)
+ error_exit "Unknown state for netmap: $netmap"
+ ;;
+esac
+
+##########################################
##########################################
# libcap-ng library probe
@@ -6585,7 +6631,7 @@ if test "$vde" = "yes" ; then
echo "CONFIG_VDE=y" >> $config_host_mak
echo "VDE_LIBS=$vde_libs" >> $config_host_mak
fi
-if test "$netmap" = "yes" ; then
+if test "$netmap" != "no" ; then
echo "CONFIG_NETMAP=y" >> $config_host_mak
fi
if test "$l2tpv3" = "yes" ; then
--
2.21.0
- [PATCH] netmap: support git-submodule build otption,
Giuseppe Lettieri <=
- Re: [PATCH] netmap: support git-submodule build otption, Peter Maydell, 2019/10/04
- Re: [PATCH] netmap: support git-submodule build otption, Markus Armbruster, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Peter Maydell, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Markus Armbruster, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Peter Maydell, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Daniel P . Berrangé, 2019/10/08
- Re: [PATCH] netmap: support git-submodule build otption, Markus Armbruster, 2019/10/08
- Re: [PATCH] netmap: support git-submodule build otption, Thomas Huth, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Markus Armbruster, 2019/10/07
- Re: [PATCH] netmap: support git-submodule build otption, Markus Armbruster, 2019/10/07