tools/cmake: fix compile on Alpine Linux
authorJohn Crispin <john@openwrt.org>
Thu, 10 Mar 2016 19:12:15 +0000 (19:12 +0000)
committerJohn Crispin <john@openwrt.org>
Thu, 10 Mar 2016 19:12:15 +0000 (19:12 +0000)
internal jsoncpp include order leads to multiple build
errors on Alpine Linux which uses musl libc

use include order from upstream jsoncpp

first error was:
In file included from /usr/include/c++/5.3.0/stdexcept:38:0,
                 from /home/..../openwrt/build_dir/host/cmake-3.4.3/Utilities/cmjsoncpp/include/json/assertions.h:16,
                 from /home/..../openwrt/build_dir/host/cmake-3.4.3/Utilities/cmjsoncpp/src/lib_json/json_reader.cpp:7:
/usr/include/c++/5.3.0/exception:35:9: error: '#pragma' is not allowed here
 #pragma GCC visibility push(default)

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
SVN-Revision: 48995

tools/cmake/patches/120-alpine_musl-compat.patch [new file with mode: 0644]

diff --git a/tools/cmake/patches/120-alpine_musl-compat.patch b/tools/cmake/patches/120-alpine_musl-compat.patch
new file mode 100644 (file)
index 0000000..ae93201
--- /dev/null
@@ -0,0 +1,17 @@
+--- a/Utilities/cmjsoncpp/include/json/assertions.h
++++ b/Utilities/cmjsoncpp/include/json/assertions.h
+@@ -6,12 +6,12 @@
+ #ifndef CPPTL_JSON_ASSERTIONS_H_INCLUDED
+ #define CPPTL_JSON_ASSERTIONS_H_INCLUDED
++#include <stdlib.h>
++
+ #if !defined(JSON_IS_AMALGAMATION)
+ #include "config.h"
+ #endif // if !defined(JSON_IS_AMALGAMATION)
+-#include <stdlib.h>
+-
+ #if JSON_USE_EXCEPTION
+ #include <stdexcept>
+ #define JSON_ASSERT(condition)                                                 \