[oe] [meta-networking][PATCH] netmap: fix multiple build issues.

Armin Kuster akuster808 at gmail.com
Tue Sep 8 18:54:06 UTC 2015


From: Armin Kuster <akuster at mvista.com>

updated to latest version to get kernel 4.1 support

update makefile patch
fixed printf type issue
Fixed manual config options
Readme checksum changed, don't know why. must got it wrong to begin with.

Signed-off-by: Armin Kuster <akuster at mvista.com>
---
 ...1-testmmap-fix-compile-issue-with-gcc-5.x.patch | 33 +++++++++++++++++++++
 .../netmap/files/makefile_fixup.patch              | 34 +++++++++++++++++-----
 .../recipes-kernel/netmap/netmap-modules_git.bb    |  8 ++++-
 meta-networking/recipes-kernel/netmap/netmap.inc   |  4 +--
 .../recipes-kernel/netmap/netmap_git.bb            |  1 +
 5 files changed, 69 insertions(+), 11 deletions(-)
 create mode 100644 meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch

diff --git a/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch b/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch
new file mode 100644
index 0000000..00bbb3c
--- /dev/null
+++ b/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch
@@ -0,0 +1,33 @@
+upstream Status: pending
+
+From c81bf54d6eb870286662a11d3b4a994717c47696 Mon Sep 17 00:00:00 2001
+From: Armin Kuster <akuster808 at gmail.com>
+Date: Tue, 8 Sep 2015 05:36:27 -0700
+Subject: [PATCH] testmmap: fix compile issue with gcc 5.x
+
+this fixes:
+examples/testmmap.c:540:10: error: format '%ld' expects argument of type 'long int', but argument 3 has type 'ssize_t {aka const int}' [-Werror=format=]
+|    printf("ring_ofs[%d] %ld\n", i, nifp->ring_ofs[i]);
+|           ^
+
+Signed-off-by: Armin Kuster <akuster808 at gmail.com>
+---
+ examples/testmmap.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/examples/testmmap.c b/examples/testmmap.c
+index d7f6acc..934489a 100644
+--- a/examples/testmmap.c
++++ b/examples/testmmap.c
+@@ -537,7 +537,7 @@ do_if()
+ 	for (i = 0; i < 5; i++)
+ 		printf("spare1[%d]  %u\n", i, nifp->ni_spare1[i]);
+ 	for (i = 0; i < (nifp->ni_tx_rings + nifp->ni_rx_rings + 2); i++)
+-		printf("ring_ofs[%d] %ld\n", i, nifp->ring_ofs[i]);
++		printf("ring_ofs[%d] %zd\n", i, nifp->ring_ofs[i]);
+ }
+ 
+ struct netmap_ring *
+-- 
+2.3.5
+
diff --git a/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch b/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch
index e838653..b050bf0 100644
--- a/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch
+++ b/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch
@@ -10,24 +10,24 @@ Index: LINUX/netmap.mak.in
 ===================================================================
 --- a/LINUX/netmap.mak.in
 +++ b/LINUX/netmap.mak.in
-@@ -12,10 +12,8 @@ SRCDIR:=@SRCDIR@
+@@ -12,10 +12,9 @@ SRCDIR:=@SRCDIR@
  # The following commands are needed to build the modules as out-of-tree,
  # in fact the kernel sources path must be specified.
  
 -PWD ?= $(CURDIR)
--
+ 
  # Additional compile flags (e.g. header location)
 -EXTRA_CFLAGS := -I$(PWD) -I$(SRCDIR) -I$(SRCDIR)/../sys -I$(SRCDIR)/../sys/dev -DCONFIG_NETMAP
 +EXTRA_CFLAGS := -I$(SRCDIR) -I$(SRCDIR)/../sys -I$(SRCDIR)/../sys/dev -DCONFIG_NETMAP
  EXTRA_CFLAGS += -Wno-unused-but-set-variable
- EXTRA_CFLAGS += $(foreach s,$(SUBSYS),-DCONFIG_NETMAP_$(shell echo $s|tr a-z A-Z))
+ EXTRA_CFLAGS += $(foreach s,$(SUBSYS),-DCONFIG_NETMAP_$(shell echo $s|tr a-z- A-Z_))
  
 Index: LINUX/configure
 ===================================================================
 --- a/LINUX/configure
 +++ b/LINUX/configure
-@@ -311,34 +311,6 @@ reset_tests() {
- 	NEXTTEST=1
+@@ -349,52 +349,6 @@ reset_tests() {
+ 	EOF
  }
  
 -# run_tests: run all accumulated tests and exec the pertinent
@@ -48,28 +48,46 @@ Index: LINUX/configure
 -		cat >> $TMPDIR/Makefile <<-EOF
 -			get-$d:
 -			$t	[ -z "\$($d-src)" ] || cp -Rp \$($d-src) \$(if \$($d-dst),\$($d-dst),.)
+-			$t	touch get-$d
 -		EOF
 -	done
 -	echo endif >> $TMPDIR/Makefile
+-	{
+-		cat <<-EOF
+-##############################################################################
+-## BEGIN RUNNING TESTS: $(date)
+-##############################################################################
+-## Makefile:
+-		EOF
+-		cat $TMPDIR/Makefile
+-		cat <<-EOF
+-##############################################################################
+-		EOF
+-	} >> config.log
 -	(
 -		cd $TMPDIR
 -		make -k -j $(grep -c processor /proc/cpuinfo)
 -	) >> config.log
 -	eval "$TESTPOSTPROC"
+-	cat >> config.log <<-EOF
+-##############################################################################
+-## END RUNNING TESTS: $(date)
+-##############################################################################
+-	EOF
 -}
 -
  configh=netmap_linux_config.h
  # succes/failure actions are expected to write some macros
  # in netma_linux_config.h. The following functions can be
-@@ -555,7 +527,6 @@ configuration. Please check 'config.log'
- 
+@@ -619,7 +573,6 @@ configuration. Please check 'config.log'
  reset_tests
+ rm -f drivers.mak
  add_test true broken_buildsystem < /dev/null
 -run_tests
  
  drvname2config() {
  	local name=$1
-@@ -1087,7 +1058,6 @@ cat > $configh <<-EOF
+@@ -1280,7 +1233,6 @@ cat > $configh <<-EOF
  EOF
  
  # the TESTPOSTPROC script will add macros to $configh
diff --git a/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb b/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb
index 00d334f..bb0db9d 100644
--- a/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb
+++ b/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb
@@ -36,7 +36,13 @@ do_configure_append () {
 #define NETMAP_LINUX_HAVE_TX_SKB_SHARING
 #define NETMAP_LINUX_HAVE_UNLOCKED_IOCTL
 #define NETMAP_LINUX_HAVE_PERNET_OPS_ID
-#define NETMAP_LINUX_TIMER_RTYPE static enum hrtimer_restart
+#define NETMAP_LINUX_VIRTIO_FUNCTIONS
+#define NETMAP_LINUX_VIRTIO_FREE_PAGES
+#define NETMAP_LINUX_VIRTIO_GET_VRSIZE
+#define NETMAP_LINUX_TIMER_RTYPE enum hrtimer_restart
+#define NETMAP_LINUX_VIRTIO_MULTI_QUEUE
+#define NETMAP_LINUX_HAVE_E1000E_EXT_RXDESC
+#define NETMAP_LINUX_HAVE_E1000E_DOWN2
 EOF
 }
 
diff --git a/meta-networking/recipes-kernel/netmap/netmap.inc b/meta-networking/recipes-kernel/netmap/netmap.inc
index 9083c69..ab33e76 100644
--- a/meta-networking/recipes-kernel/netmap/netmap.inc
+++ b/meta-networking/recipes-kernel/netmap/netmap.inc
@@ -4,9 +4,9 @@ SECTION = "networking"
 HOMEPAGE = "http://code.google.com/p/netmap/"
 LICENSE = "GPLv2+"
 
-LIC_FILES_CHKSUM = "file://README;beginline=13;endline=14;md5=f64f2b172fe6903ff7b6272c6edde588"
+LIC_FILES_CHKSUM = "file://README;beginline=13;endline=14;md5=56ae0b9c7ba0476ab9098de94c2714d6"
 
-SRCREV = "a14a35b839fe7ab6855f25f1e86e306ee7ad8123"
+SRCREV = "da9e19e69b84e4f6f8ae125f8d01b42a4abade6a"
 PV = "master+git${SRCPV}"
 
 SRC_URI = "git://github.com/luigirizzo/netmap.git"
diff --git a/meta-networking/recipes-kernel/netmap/netmap_git.bb b/meta-networking/recipes-kernel/netmap/netmap_git.bb
index 0ee19d4..f15a626 100644
--- a/meta-networking/recipes-kernel/netmap/netmap_git.bb
+++ b/meta-networking/recipes-kernel/netmap/netmap_git.bb
@@ -11,6 +11,7 @@ EXTRA_OECONF = "--kernel-dir=${STAGING_KERNEL_BUILDDIR} \
                 --cc='${CC}' \
                 --ld='${LD}' \
                 "
+SRC_URI += "file://0001-testmmap-fix-compile-issue-with-gcc-5.x.patch"
 
 do_fetch[depends] += "netmap-modules:do_fetch"
 
-- 
2.3.5




More information about the Openembedded-devel mailing list