aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools
diff options
context:
space:
mode:
authorAndre McCurdy <armccurdy@gmail.com>2016-12-19 08:56:33 -0800
committerMartin Jansa <Martin.Jansa@gmail.com>2016-12-26 08:24:52 +0100
commit45de4a60c63a1e73a3a058c218398c116ef922fb (patch)
treea5a067e962a1ee799dc69460f55e87808861f0b6 /meta-oe/recipes-devtools
parenta2e1a14961b9fe9aede61fa91a29272bd70071f6 (diff)
downloadmeta-openembedded-contrib-45de4a60c63a1e73a3a058c218398c116ef922fb.tar.gz
rapidjson: add initial recipe
A fast JSON parser/generator for C++ with both SAX/DOM style API. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-devtools')
-rw-r--r--meta-oe/recipes-devtools/rapidjson/rapidjson/Fix-gcc-strict-overflow-warning.patch30
-rw-r--r--meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch33
-rw-r--r--meta-oe/recipes-devtools/rapidjson/rapidjson_1.0.2.bb24
3 files changed, 87 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/rapidjson/rapidjson/Fix-gcc-strict-overflow-warning.patch b/meta-oe/recipes-devtools/rapidjson/rapidjson/Fix-gcc-strict-overflow-warning.patch
new file mode 100644
index 0000000000..6ce3933cea
--- /dev/null
+++ b/meta-oe/recipes-devtools/rapidjson/rapidjson/Fix-gcc-strict-overflow-warning.patch
@@ -0,0 +1,30 @@
+From f5560d9557ee48fb79810180ddfd3ec386e2a7b5 Mon Sep 17 00:00:00 2001
+From: Milo Yip <miloyip@gmail.com>
+Date: Wed, 2 Mar 2016 01:01:17 +0800
+Subject: [PATCH] Fix gcc strict-overflow warning
+
+Fix #566 #568
+
+Upstream-Status: Backport [Partial merge of upstream commit 928caf92e]
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ include/rapidjson/internal/dtoa.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/rapidjson/internal/dtoa.h b/include/rapidjson/internal/dtoa.h
+index 2d8d2e4..15571e1 100644
+--- a/include/rapidjson/internal/dtoa.h
++++ b/include/rapidjson/internal/dtoa.h
+@@ -148,7 +148,7 @@ inline char* WriteExponent(int K, char* buffer) {
+ inline char* Prettify(char* buffer, int length, int k) {
+ const int kk = length + k; // 10^(kk-1) <= v < 10^kk
+
+- if (length <= kk && kk <= 21) {
++ if (0 <= k && kk <= 21) {
+ // 1234e7 -> 12340000000
+ for (int i = length; i < kk; i++)
+ buffer[i] = '0';
+--
+1.9.1
+
diff --git a/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch b/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch
new file mode 100644
index 0000000000..17164283ce
--- /dev/null
+++ b/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch
@@ -0,0 +1,33 @@
+From 827155e5e659b2a5065b00d701bc59b57feab2bf Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Mon, 19 Dec 2016 01:37:11 -0800
+Subject: [PATCH] remove -march=native from CMAKE_CXX_FLAGS
+
+Not appropriate when cross compiling.
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 68139ba..cae7c9b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -26,9 +26,9 @@ if(RAPIDJSON_HAS_STDSTRING)
+ endif()
+
+ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -Wextra")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
+ elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -Wextra")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
+ elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS=1)
+ endif()
+--
+1.9.1
+
diff --git a/meta-oe/recipes-devtools/rapidjson/rapidjson_1.0.2.bb b/meta-oe/recipes-devtools/rapidjson/rapidjson_1.0.2.bb
new file mode 100644
index 0000000000..1a9abc8bc6
--- /dev/null
+++ b/meta-oe/recipes-devtools/rapidjson/rapidjson_1.0.2.bb
@@ -0,0 +1,24 @@
+SUMMARY = "A fast JSON parser/generator for C++ with both SAX/DOM style API"
+HOMEPAGE = "http://rapidjson.org/"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://license.txt;md5=cff54e417a17b4b77465198254970cd2"
+
+SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1 \
+ file://remove-march-native-from-CMAKE_CXX_FLAGS.patch \
+ file://Fix-gcc-strict-overflow-warning.patch \
+"
+
+SRCREV = "3d5848a7cd3367c5cb451c6493165b7745948308"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF"
+
+# RapidJSON is a header-only C++ library, so the main package will be empty.
+
+FILES_${PN}-dev += "${libdir}/cmake"
+
+BBCLASSEXTEND = "native nativesdk"