package/jsoncpp: add patch to fix musl build issue on x86

This patch is replaces two previous sumbissions, the first by Bernd Kuhls [1],
the second by me [2].

The posix_memalign declaration is incompatible with musl for C++ on x86, because
of the exception specification [2]. Note, the referenced patch is part of a
patch series to "Add musl support to GCC".

However, this build issue only happens if compilation is done with the GCC
compiler option '-pedantic' [3] which is done so in jsoncpp.

Fortunately, upstream accepted a patch to opt-out '-pedantic' [4]. We backport
this patch to fix autobuild errors.

Fixes:
http://autobuild.buildroot.net/results/588/5885d33b8d9f17878f565f3ae5371017dc89aede/
http://autobuild.buildroot.net/results/0d9/0d90c7c13ae1640b07709c4c686e0237ada1324d/
http://autobuild.buildroot.net/results/30b/30b98ac7362c27254218a6e521d29971070f8c3c/
http://autobuild.buildroot.net/results/292/29289c125166630aeaf884ccc006bcf12c8aa0f6/

and many more.

[1] https://patchwork.ozlabs.org/patch/505425/
[2] https://patchwork.ozlabs.org/patch/533169/
[3] https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01425.html
[4] 48bfe91062

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Jörg Krause
2015-10-30 08:06:07 +01:00
committed by Thomas Petazzoni
parent 922b67d89c
commit 6b462ac8bd
2 changed files with 70 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ JSONCPP_INSTALL_STAGING = YES
JSONCPP_CONF_OPTS += \
-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF \
-DJSONCPP_WITH_TESTS=OFF
-DJSONCPP_WITH_TESTS=OFF \
-DJSONCPP_WITH_STRICT_ISO=OFF
$(eval $(cmake-package))