[oe] [meta-oe][PATCH 03/17] msgpack-c: Upgrade to 2.1.1

Khem Raj raj.khem at gmail.com
Mon Apr 24 05:20:44 UTC 2017


Fix build with gcc7

Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
 ...ntentional-fallthrough-in-case-statements.patch | 39 +++++++++++++++++++++
 .../304ff96d04599401172568d042723ff507e78cc3.patch | 40 ++++++++++++++++++++++
 .../{msgpack-c_2.0.0.bb => msgpack-c_2.1.1.bb}     | 15 +++++---
 3 files changed, 90 insertions(+), 4 deletions(-)
 create mode 100644 meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch
 create mode 100644 meta-oe/recipes-devtools/msgpack/msgpack-c/304ff96d04599401172568d042723ff507e78cc3.patch
 rename meta-oe/recipes-devtools/msgpack/{msgpack-c_2.0.0.bb => msgpack-c_2.1.1.bb} (62%)

diff --git a/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch b/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch
new file mode 100644
index 000000000..a388297a8
--- /dev/null
+++ b/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch
@@ -0,0 +1,39 @@
+From 15d8bb6792c9639d85a9ffe2ac81431f1b986c21 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem at gmail.com>
+Date: Sat, 22 Apr 2017 08:53:50 -0700
+Subject: [PATCH] Comment intentional fallthrough in case statements
+
+Fixes build with gcc7
+
+Signed-off-by: Khem Raj <raj.khem at gmail.com>
+---
+ include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp b/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
+index b35c21a7..4c463a90 100644
+--- a/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
++++ b/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
+@@ -105,6 +105,7 @@ struct define_array<A0, A1> {
+             switch(size) {
+             default:
+             case 2: ptr[1].convert(a1);
++            //fallthrough
+             case 1: ptr[0].convert(a0);
+             }
+         }
+@@ -193,8 +194,11 @@ struct define_array<A0, A1, A2, A3> {
+             switch(size) {
+             default:
+             case 4: ptr[3].convert(a3);
++            //fallthrough
+             case 3: ptr[2].convert(a2);
++            //fallthrough
+             case 2: ptr[1].convert(a1);
++            //fallthrough
+             case 1: ptr[0].convert(a0);
+             }
+         }
+-- 
+2.12.2
+
diff --git a/meta-oe/recipes-devtools/msgpack/msgpack-c/304ff96d04599401172568d042723ff507e78cc3.patch b/meta-oe/recipes-devtools/msgpack/msgpack-c/304ff96d04599401172568d042723ff507e78cc3.patch
new file mode 100644
index 000000000..b8b3d3187
--- /dev/null
+++ b/meta-oe/recipes-devtools/msgpack/msgpack-c/304ff96d04599401172568d042723ff507e78cc3.patch
@@ -0,0 +1,40 @@
+From 304ff96d04599401172568d042723ff507e78cc3 Mon Sep 17 00:00:00 2001
+From: James McCoy <jamessan at debian.org>
+Date: Thu, 13 Apr 2017 11:38:45 -0400
+Subject: [PATCH] Comment the intentional fallthrough to default from
+ _fixed_trail_again
+
+GCC 7 added a new diagnostic, -Wimplicit-fallthrough, which is enabled
+with -Wextra that warns about implicitly falling through a case
+statement.
+
+    [  4%] Building C object CMakeFiles/msgpackc-static.dir/src/unpack.c.o
+    /usr/lib/gcc-snapshot/bin/gcc   -I/home/jamessan/src/msgpack-c/. -I/home/jamessan/src/msgpack-c/include -I/home/jamessan/src/msgpack-c/build/include  -g -O2 -fdebug-prefix-map=/home/jamessan/src/msgpack-c=. -specs=/usr/share/dpkg/no-pie-compile.specs -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2   -Wall -Wextra -Werror -g -O3 -o CMakeFiles/msgpackc-static.dir/src/unpack.c.o   -c /home/jamessan/src/msgpack-c/src/unpack.c
+    In file included from /home/jamessan/src/msgpack-c/src/unpack.c:283:0:
+    /home/jamessan/src/msgpack-c/include/msgpack/unpack_template.h: In function 'template_execute':
+    /home/jamessan/src/msgpack-c/include/msgpack/unpack_template.h:238:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
+                     ++p;
+                     ^~~
+    /home/jamessan/src/msgpack-c/include/msgpack/unpack_template.h:240:13: note: here
+                 default:
+                 ^~~~~~~
+    cc1: all warnings being treated as errors
+
+Adding the comment makes it explicit that the fallthrough is
+intentional, so gcc doesn't complain.
+---
+ include/msgpack/unpack_template.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/msgpack/unpack_template.h b/include/msgpack/unpack_template.h
+index 8450442..e557bb6 100644
+--- a/include/msgpack/unpack_template.h
++++ b/include/msgpack/unpack_template.h
+@@ -236,6 +236,7 @@ msgpack_unpack_func(int, _execute)(msgpack_unpack_struct(_context)* ctx, const c
+ 
+             _fixed_trail_again:
+                 ++p;
++                // fallthrough
+ 
+             default:
+                 if((size_t)(pe - p) < trail) { goto _out; }
diff --git a/meta-oe/recipes-devtools/msgpack/msgpack-c_2.0.0.bb b/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb
similarity index 62%
rename from meta-oe/recipes-devtools/msgpack/msgpack-c_2.0.0.bb
rename to meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb
index 14e860d6a..7655d9469 100644
--- a/meta-oe/recipes-devtools/msgpack/msgpack-c_2.0.0.bb
+++ b/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb
@@ -6,10 +6,17 @@ LIC_FILES_CHKSUM = "file://NOTICE;md5=7a858c074723608e08614061dc044352 \
                     file://COPYING;md5=0639c4209b6f2abf1437c813b208f2d3 \
                     file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c \
                    "
-SRC_URI = "https://github.com/msgpack/msgpack-c/releases/download/cpp-${PV}/msgpack-${PV}.tar.gz"
-SRC_URI[md5sum] = "55148cd856c72f954a6eb9cc889a7d2a"
-SRC_URI[sha256sum] = "41de0989a3385061ab7307a1005655e780def6fc9c89af0ec942616aa787e136"
+
+PV .= "+git${SRCPV}"
+
+SRCREV = "20ef1f925b007f170ab1c257e4aa61fdd0927773"
+
+SRC_URI = "git://github.com/msgpack/msgpack-c \
+           file://0001-Comment-intentional-fallthrough-in-case-statements.patch \
+           "
 
 inherit cmake pkgconfig
 
-S = "${WORKDIR}/msgpack-${PV}"
+S = "${WORKDIR}/git"
+
+FILES_${PN}-dev += "${libdir}/cmake/msgpack/*.cmake"
-- 
2.12.2




More information about the Openembedded-devel mailing list