diff --git a/_service b/_service
new file mode 100644
index 0000000..c681c17
--- /dev/null
+++ b/_service
@@ -0,0 +1,14 @@
+
+
+ https://github.com/Tencent/rapidjson.git
+ git
+ enable
+ rapidjson
+ 1.1.0+git%cd.%h
+
+
+ *.tar
+ xz
+
+
+
diff --git a/fix_compilation_gcc7.patch b/fix_compilation_gcc7.patch
deleted file mode 100644
index 338abaf..0000000
--- a/fix_compilation_gcc7.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-commit fe19b7b6016d446722621fb407738209d1a911e8
-Author: Harry Wong
-Date: Thu May 4 10:08:48 2017 +0800
-
- Supress implicit fallthrough in GCC
-
-diff --git a/include/rapidjson/internal/regex.h b/include/rapidjson/internal/regex.h
-index 1369ea26..6d110bdb 100644
---- a/include/rapidjson/internal/regex.h
-+++ b/include/rapidjson/internal/regex.h
-@@ -29,6 +29,7 @@ RAPIDJSON_DIAG_OFF(implicit-fallthrough)
- #ifdef __GNUC__
- RAPIDJSON_DIAG_PUSH
- RAPIDJSON_DIAG_OFF(effc++)
-+RAPIDJSON_DIAG_OFF(implicit-fallthrough)
- #endif
-
- #ifdef _MSC_VER
-commit cba45fe9de6923b858edb0780e257b7257aa4f7b
-Author: Harry Wong
-Date: Thu May 4 10:32:45 2017 +0800
-
- Onley apply to GCC 7
-
-diff --git a/include/rapidjson/internal/regex.h b/include/rapidjson/internal/regex.h
-index 6d110bdb..e1a2faae 100644
---- a/include/rapidjson/internal/regex.h
-+++ b/include/rapidjson/internal/regex.h
-@@ -29,8 +29,10 @@ RAPIDJSON_DIAG_OFF(implicit-fallthrough)
- #ifdef __GNUC__
- RAPIDJSON_DIAG_PUSH
- RAPIDJSON_DIAG_OFF(effc++)
-+#if __GNUC__ >= 7
- RAPIDJSON_DIAG_OFF(implicit-fallthrough)
- #endif
-+#endif
-
- #ifdef _MSC_VER
- RAPIDJSON_DIAG_PUSH
diff --git a/fix_compilation_sle11sp4.patch b/fix_compilation_sle11sp4.patch
deleted file mode 100644
index 52655f9..0000000
--- a/fix_compilation_sle11sp4.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Author: Adam Majer
-Summary: Fix compilation with older GCC compiler
-PR: https://github.com/miloyip/rapidjson/pull/755
-
-include/rapidjson/reader.h:578: error: suggest a space before ';' or explicit braces around empty body in 'while' statement
-: warnings being treated as errors
-
-Index: rapidjson-1.1.0/include/rapidjson/reader.h
-===================================================================
---- rapidjson-1.1.0.orig/include/rapidjson/reader.h
-+++ rapidjson-1.1.0/include/rapidjson/reader.h
-@@ -575,7 +575,7 @@ private:
- }
- }
- else if (RAPIDJSON_LIKELY(Consume(is, '/')))
-- while (is.Peek() != '\0' && is.Take() != '\n');
-+ while (is.Peek() != '\0' && is.Take() != '\n') {}
- else
- RAPIDJSON_PARSE_ERROR(kParseErrorUnspecificSyntaxError, is.Tell());
-
diff --git a/fix_install_paths.patch b/fix_install_paths.patch
deleted file mode 100644
index 5f20b4e..0000000
--- a/fix_install_paths.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Author: Adam Majer
-Summary: Install data under data directory, not library prefix
-
-Index: rapidjson-1.1.0/CMakeLists.txt
-===================================================================
---- rapidjson-1.1.0.orig/CMakeLists.txt
-+++ rapidjson-1.1.0/CMakeLists.txt
-@@ -94,11 +94,11 @@ endif()
-
- #add extra search paths for libraries and includes
- SET(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The directory the headers are installed in")
--SET(LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE STRING "Directory where lib will install")
-+SET(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "Directory where shared data will install")
- SET(DOC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/doc/${PROJECT_NAME}" CACHE PATH "Path to the documentation")
-
- IF(UNIX OR CYGWIN)
-- SET(_CMAKE_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/${PROJECT_NAME}")
-+ SET(_CMAKE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/cmake/${PROJECT_NAME}")
- ELSEIF(WIN32)
- SET(_CMAKE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/cmake")
- ENDIF()
-@@ -133,7 +133,7 @@ IF (UNIX OR CYGWIN)
- ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc
- @ONLY)
- INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc
-- DESTINATION "${LIB_INSTALL_DIR}/pkgconfig"
-+ DESTINATION "${SHARE_INSTALL_PREFIX}/pkgconfig"
- COMPONENT pkgconfig)
- ENDIF()
-
diff --git a/ignore_gcc8_warnings.patch b/ignore_gcc8_warnings.patch
deleted file mode 100644
index 7874398..0000000
--- a/ignore_gcc8_warnings.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-commit 54dab1eebb0dea32d9ea49dad4fa9c98816c21ed
-Author: Romain Geissler
-Date: Mon Feb 19 12:52:16 2018 +0100
-
- Ignore GCC 8 warnings.
-
-diff --git a/include/rapidjson/document.h b/include/rapidjson/document.h
-index eb6d7dcb..69ac924b 100644
---- a/include/rapidjson/document.h
-+++ b/include/rapidjson/document.h
-@@ -2014,7 +2014,12 @@ private:
- if (count) {
- GenericValue* e = static_cast(allocator.Malloc(count * sizeof(GenericValue)));
- SetElementsPointer(e);
-+RAPIDJSON_DIAG_PUSH
-+#if defined(__GNUC__) && __GNUC__ >= 8
-+RAPIDJSON_DIAG_OFF(class-memaccess) // ignore complains from gcc that no trivial copy constructor exists.
-+#endif
- std::memcpy(e, values, count * sizeof(GenericValue));
-+RAPIDJSON_DIAG_POP
- }
- else
- SetElementsPointer(0);
-@@ -2027,7 +2032,12 @@ private:
- if (count) {
- Member* m = static_cast(allocator.Malloc(count * sizeof(Member)));
- SetMembersPointer(m);
-+RAPIDJSON_DIAG_PUSH
-+#if defined(__GNUC__) && __GNUC__ >= 8
-+RAPIDJSON_DIAG_OFF(class-memaccess) // ignore complains from gcc that no trivial copy constructor exists.
-+#endif
- std::memcpy(m, members, count * sizeof(Member));
-+RAPIDJSON_DIAG_POP
- }
- else
- SetMembersPointer(0);
diff --git a/rapidjson-1.1.0+git20190517.4b3d7c2f.tar.xz b/rapidjson-1.1.0+git20190517.4b3d7c2f.tar.xz
new file mode 100644
index 0000000..9a6b3a4
--- /dev/null
+++ b/rapidjson-1.1.0+git20190517.4b3d7c2f.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:251e0034b47160c897a3df3d98c530288d255fcf6393d333d79200de6e35cd7e
+size 1491008
diff --git a/rapidjson.changes b/rapidjson.changes
index b6d98fb..dbcd674 100644
--- a/rapidjson.changes
+++ b/rapidjson.changes
@@ -1,3 +1,22 @@
+-------------------------------------------------------------------
+Thu Jun 06 08:16:06 UTC 2019 - tchvatal@suse.com
+
+- Switch to _service as upstream didn't release since 2016 and we
+ would need to backport many more features to make ie python-rapidjson
+ working
+- Update to version 1.1.0+git20190517.4b3d7c2f:
+ * Add missing curly brackets in STDREGEX's CreatePattern().
+ * fix typo
+ * add missing header "ios"
+ * doc/tutorial.zh-cn: fixed some typos
+ * Update allocators.h
+- Remove pateches for the old version:
+ * fix_compilation_gcc7.patch
+ * fix_compilation_sle11sp4.patch
+ * fix_install_paths.patch
+ * ignore_gcc8_warnings.patch
+ * remove_arch_specific_flags.patch
+
-------------------------------------------------------------------
Wed Dec 12 09:43:25 UTC 2018 - Jan Engelhardt
diff --git a/rapidjson.spec b/rapidjson.spec
index 470db8c..59b391a 100644
--- a/rapidjson.spec
+++ b/rapidjson.spec
@@ -1,7 +1,7 @@
#
# spec file for package rapidjson
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,27 +12,23 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: rapidjson
-Version: 1.1.0
+Version: 1.1.0+git20190517.4b3d7c2f
Release: 0
Summary: JSON parser and generator for C++
License: MIT
Group: Development/Libraries/C and C++
URL: http://rapidjson.org/
-Source0: https://github.com/miloyip/rapidjson/archive/v%{version}.tar.gz
-Patch0: remove_arch_specific_flags.patch
-Patch1: fix_compilation_sle11sp4.patch
-Patch2: fix_compilation_gcc7.patch
-# PATCH-FIX-UPSTREAM -- ignore_gcc8_warnings.patch -- Ignore GCC 8 warnings.
-Patch3: ignore_gcc8_warnings.patch
-Patch10: fix_install_paths.patch
+Source0: %{name}-%{version}.tar.xz
BuildRequires: cmake
BuildRequires: gcc-c++
+BuildRequires: gtest
BuildRequires: pkgconfig
+BuildRequires: valgrind
%description
RapidJSON is a JSON parser and generator for C++. It was inspired by RapidXml.
@@ -55,9 +51,6 @@ RapidJSON is a JSON parser and generator for C++. It was inspired by RapidXml.
Summary: Header files for rapidjson, a JSON parser and generator for C++
Group: Development/Libraries/C and C++
Provides: %{name} = %{version}
-%if 0%{?suse_version} > 1200
-BuildArch: noarch
-%endif
%description devel
RapidJSON is a header-only JSON parser and generator for C++.
@@ -65,34 +58,28 @@ This package contains development headers and examples.
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch10 -p1
+sed -i -e 's:-Werror::g' CMakeLists.txt
%build
-%cmake -DDOC_INSTALL_DIR=%{_docdir}/%{name}
-make %{?_smp_mflags}
+%cmake \
+ -DDOC_INSTALL_DIR=%{_docdir}/%{name}-devel \
+ -DRAPIDJSON_BUILD_TESTS=ON \
+ -DRAPIDJSON_ENABLE_INSTRUMENTATION_OPT=OFF
+%cmake_build
%install
%cmake_install
-rm -f %{buildroot}%{_includedir}/%{name}/*.orig
+
+%check
+%ctest
%files devel
-%defattr(-,root,root)
-%if 0%{?suse_version} < 1500
-%doc license.txt
-%else
+%doc CHANGELOG.md readme.md
%license license.txt
-%endif
-# %license license.txt
-%dir %{_datadir}/cmake/RapidJSON
-%{_datadir}/cmake/RapidJSON/RapidJSONConfig.cmake
-%{_datadir}/cmake/RapidJSON/RapidJSONConfigVersion.cmake
-%{_datadir}/pkgconfig/RapidJSON.pc
-%{_includedir}/%{name}
-%dir %{_docdir}/%{name}
-%{_docdir}/%{name}/*
+%dir %{_docdir}/%{name}-devel
+%{_docdir}/%{name}-devel/*
+%{_includedir}/rapidjson/
+%{_libdir}/cmake/RapidJSON/
+%{_libdir}/pkgconfig/*.pc
%changelog
diff --git a/remove_arch_specific_flags.patch b/remove_arch_specific_flags.patch
deleted file mode 100644
index c008cab..0000000
--- a/remove_arch_specific_flags.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Author: Adam Majer
-Summary: Remove architecture specific compiler flags
-PR: https://github.com/miloyip/rapidjson/pull/756
-
-Index: rapidjson-1.1.0/CMakeLists.txt
-===================================================================
---- rapidjson-1.1.0.orig/CMakeLists.txt
-+++ rapidjson-1.1.0/CMakeLists.txt
-@@ -50,7 +50,7 @@ if(CCACHE_FOUND)
- endif(CCACHE_FOUND)
-
- if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -Wextra -Werror")
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror")
- if (RAPIDJSON_BUILD_CXX11)
- if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7.0")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
-@@ -73,7 +73,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL
- endif()
- endif()
- elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -Wall -Wextra -Werror -Wno-missing-field-initializers")
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror -Wno-missing-field-initializers")
- if (RAPIDJSON_BUILD_CXX11)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
- endif()
diff --git a/v1.1.0.tar.gz b/v1.1.0.tar.gz
deleted file mode 100644
index ab39102..0000000
--- a/v1.1.0.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e
-size 1019402