Gentoo Archives: gentoo-commits

From: Craig Andrews <candrews@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/rapidjson/files/, dev-libs/rapidjson/
Date: Mon, 28 Dec 2020 16:44:05
Message-Id: 1609173836.cf938e7183d49f0da60052ddc884bc99643a49cc.candrews@gentoo
1 commit: cf938e7183d49f0da60052ddc884bc99643a49cc
2 Author: Craig Andrews <candrews <AT> gentoo <DOT> org>
3 AuthorDate: Mon Dec 28 16:43:33 2020 +0000
4 Commit: Craig Andrews <candrews <AT> gentoo <DOT> org>
5 CommitDate: Mon Dec 28 16:43:56 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf938e71
7
8 dev-libs/rapidjson: Drop dependency on valgrind; remove -march=native
9
10 Closes: https://bugs.gentoo.org/760881
11 Package-Manager: Portage-3.0.12, Repoman-3.0.2
12 Signed-off-by: Craig Andrews <candrews <AT> gentoo.org>
13
14 .../files/rapidjson-1.1.0-system_gtest.patch | 44 ++++++++++++++++++++++
15 .../files/rapidjson-1.1.0-valgrind_optional.patch | 21 +++++++++++
16 .../files/rapidjson-1.1.1-valgrind_optional.patch | 21 +++++++++++
17 ...djson-9999.ebuild => rapidjson-1.1.0-r3.ebuild} | 19 ++++++----
18 dev-libs/rapidjson/rapidjson-9999.ebuild | 18 +++++----
19 5 files changed, 108 insertions(+), 15 deletions(-)
20
21 diff --git a/dev-libs/rapidjson/files/rapidjson-1.1.0-system_gtest.patch b/dev-libs/rapidjson/files/rapidjson-1.1.0-system_gtest.patch
22 new file mode 100644
23 index 00000000000..bdc720e8cf8
24 --- /dev/null
25 +++ b/dev-libs/rapidjson/files/rapidjson-1.1.0-system_gtest.patch
26 @@ -0,0 +1,44 @@
27 +--- /CMakeModules/FindGTestSrc.cmake
28 ++++ /CMakeModules/FindGTestSrc.cmake
29 +@@ -1,30 +1,9 @@
30 +-
31 +-SET(GTEST_SEARCH_PATH
32 +- "${GTEST_SOURCE_DIR}"
33 +- "${CMAKE_CURRENT_LIST_DIR}/../thirdparty/gtest/googletest")
34 +-
35 +-IF(UNIX)
36 +- IF(RAPIDJSON_BUILD_THIRDPARTY_GTEST)
37 +- LIST(APPEND GTEST_SEARCH_PATH "/usr/src/gtest")
38 +- ELSE()
39 +- LIST(INSERT GTEST_SEARCH_PATH 1 "/usr/src/gtest")
40 +- ENDIF()
41 +-ENDIF()
42 +-
43 +-FIND_PATH(GTEST_SOURCE_DIR
44 +- NAMES CMakeLists.txt src/gtest_main.cc
45 +- PATHS ${GTEST_SEARCH_PATH})
46 +-
47 +-
48 + # Debian installs gtest include directory in /usr/include, thus need to look
49 + # for include directory separately from source directory.
50 + FIND_PATH(GTEST_INCLUDE_DIR
51 + NAMES gtest/gtest.h
52 +- PATH_SUFFIXES include
53 +- HINTS ${GTEST_SOURCE_DIR}
54 +- PATHS ${GTEST_SEARCH_PATH})
55 ++ PATH_SUFFIXES include)
56 +
57 + INCLUDE(FindPackageHandleStandardArgs)
58 + find_package_handle_standard_args(GTestSrc DEFAULT_MSG
59 +- GTEST_SOURCE_DIR
60 + GTEST_INCLUDE_DIR)
61 +--- /test/CMakeLists.txt
62 ++++ /test/CMakeLists.txt
63 +@@ -8,7 +8,6 @@
64 + set(gtest_force_shared_crt ON)
65 + endif()
66 +
67 +- add_subdirectory(${GTEST_SOURCE_DIR} ${CMAKE_BINARY_DIR}/googletest)
68 + include_directories(SYSTEM ${GTEST_INCLUDE_DIR})
69 +
70 + set(TEST_LIBRARIES gtest gtest_main)
71
72 diff --git a/dev-libs/rapidjson/files/rapidjson-1.1.0-valgrind_optional.patch b/dev-libs/rapidjson/files/rapidjson-1.1.0-valgrind_optional.patch
73 new file mode 100644
74 index 00000000000..071a3d2392d
75 --- /dev/null
76 +++ b/dev-libs/rapidjson/files/rapidjson-1.1.0-valgrind_optional.patch
77 @@ -0,0 +1,21 @@
78 +https://github.com/Tencent/rapidjson/issues/1808
79 +
80 +--- /test/unittest/CMakeLists.txt
81 ++++ /test/unittest/CMakeLists.txt
82 +@@ -77,12 +77,15 @@
83 + COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest
84 + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
85 +
86 +-if(NOT MSVC)
87 ++find_program(VALGRIND_EXECUTABLE valgrind)
88 ++if(VALGRIND_EXECUTABLE)
89 + # Not running SIMD.* unit test cases for Valgrind
90 + add_test(NAME valgrind_unittest
91 + COMMAND valgrind --leak-check=full --error-exitcode=1 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest --gtest_filter=-SIMD.*
92 + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
93 ++endif(VALGRIND_EXECUTABLE)
94 +
95 ++if(NOT MSVC)
96 + if(CMAKE_BUILD_TYPE STREQUAL "Debug")
97 + add_test(NAME symbol_check
98 + COMMAND sh -c "objdump -t -C libnamespacetest.a | grep rapidjson ; test $? -ne 0"
99
100 diff --git a/dev-libs/rapidjson/files/rapidjson-1.1.1-valgrind_optional.patch b/dev-libs/rapidjson/files/rapidjson-1.1.1-valgrind_optional.patch
101 new file mode 100644
102 index 00000000000..b40a39fb13d
103 --- /dev/null
104 +++ b/dev-libs/rapidjson/files/rapidjson-1.1.1-valgrind_optional.patch
105 @@ -0,0 +1,21 @@
106 +https://github.com/Tencent/rapidjson/issues/1808
107 +
108 +--- /test/unittest/CMakeLists.txt
109 ++++ /test/unittest/CMakeLists.txt
110 +@@ -78,12 +78,15 @@
111 + COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest
112 + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
113 +
114 +-if(NOT MSVC)
115 ++find_program(VALGRIND_EXECUTABLE valgrind)
116 ++if(VALGRIND_EXECUTABLE)
117 + # Not running SIMD.* unit test cases for Valgrind
118 + add_test(NAME valgrind_unittest
119 + COMMAND valgrind --suppressions=${CMAKE_SOURCE_DIR}/test/valgrind.supp --leak-check=full --error-exitcode=1 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest --gtest_filter=-SIMD.*
120 + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
121 ++endif(VALGRIND_EXECUTABLE)
122 +
123 ++if(NOT MSVC)
124 + if(CMAKE_BUILD_TYPE STREQUAL "Debug")
125 + add_test(NAME symbol_check
126 + COMMAND sh -c "objdump -t -C libnamespacetest.a | grep rapidjson ; test $? -ne 0"
127
128 diff --git a/dev-libs/rapidjson/rapidjson-9999.ebuild b/dev-libs/rapidjson/rapidjson-1.1.0-r3.ebuild
129 similarity index 72%
130 copy from dev-libs/rapidjson/rapidjson-9999.ebuild
131 copy to dev-libs/rapidjson/rapidjson-1.1.0-r3.ebuild
132 index 7abb247fd71..546127329df 100644
133 --- a/dev-libs/rapidjson/rapidjson-9999.ebuild
134 +++ b/dev-libs/rapidjson/rapidjson-1.1.0-r3.ebuild
135 @@ -15,27 +15,29 @@ SLOT="0"
136
137 if [[ ${PV} == *9999 ]] ; then
138 EGIT_REPO_URI="https://github.com/miloyip/rapidjson.git"
139 - EGIT_SUBMODULES=()
140 inherit git-r3
141 else
142 SRC_URI="https://github.com/miloyip/rapidjson/archive/v${PV}.tar.gz -> ${P}.tar.gz"
143 - KEYWORDS="~amd64 ~x86"
144 + KEYWORDS="~amd64 ~arm ~arm64 ~x86"
145 S="${WORKDIR}/rapidjson-${PV}"
146 fi
147
148 DEPEND="
149 doc? ( app-doc/doxygen )
150 - test? (
151 - dev-cpp/gtest
152 - dev-util/valgrind
153 - )"
154 + test? ( dev-cpp/gtest )"
155 RDEPEND=""
156
157 +PATCHES=(
158 + "${FILESDIR}/${P}-gcc-7.patch"
159 + "${FILESDIR}/${P}-system_gtest.patch"
160 + "${FILESDIR}/${P}-valgrind_optional.patch"
161 +)
162 +
163 src_prepare() {
164 cmake_src_prepare
165
166 - sed -i -e 's|-Werror||g' CMakeLists.txt || die
167 - sed -i -e 's|-Werror||g' example/CMakeLists.txt || die
168 + sed -i -e 's| -march=native||g' CMakeLists.txt || die
169 + sed -i -e 's| -Werror||g' CMakeLists.txt example/CMakeLists.txt test/unittest/CMakeLists.txt || die
170 }
171
172 src_configure() {
173 @@ -46,6 +48,7 @@ src_configure() {
174 -DRAPIDJSON_BUILD_EXAMPLES=$(usex examples)
175 -DRAPIDJSON_BUILD_TESTS=$(usex test)
176 -DRAPIDJSON_BUILD_THIRDPARTY_GTEST=OFF
177 + -DVALGRIND_EXECUTABLE=
178 )
179 cmake_src_configure
180 }
181
182 diff --git a/dev-libs/rapidjson/rapidjson-9999.ebuild b/dev-libs/rapidjson/rapidjson-9999.ebuild
183 index 7abb247fd71..081c33172b8 100644
184 --- a/dev-libs/rapidjson/rapidjson-9999.ebuild
185 +++ b/dev-libs/rapidjson/rapidjson-9999.ebuild
186 @@ -19,23 +19,26 @@ if [[ ${PV} == *9999 ]] ; then
187 inherit git-r3
188 else
189 SRC_URI="https://github.com/miloyip/rapidjson/archive/v${PV}.tar.gz -> ${P}.tar.gz"
190 - KEYWORDS="~amd64 ~x86"
191 + KEYWORDS="~amd64 ~arm ~arm64 ~x86"
192 S="${WORKDIR}/rapidjson-${PV}"
193 fi
194
195 DEPEND="
196 doc? ( app-doc/doxygen )
197 - test? (
198 - dev-cpp/gtest
199 - dev-util/valgrind
200 - )"
201 + test? ( dev-cpp/gtest )"
202 RDEPEND=""
203
204 +PATCHES=(
205 + "${FILESDIR}/${PN}-1.1.0-system_gtest.patch"
206 + "${FILESDIR}/${PN}-1.1.1-valgrind_optional.patch"
207 +)
208 +
209 src_prepare() {
210 cmake_src_prepare
211
212 - sed -i -e 's|-Werror||g' CMakeLists.txt || die
213 - sed -i -e 's|-Werror||g' example/CMakeLists.txt || die
214 + sed -i -e 's| -march=native||g' CMakeLists.txt || die
215 + sed -i -e 's| -mcpu=native||g' CMakeLists.txt || die
216 + sed -i -e 's| -Werror||g' CMakeLists.txt || die
217 }
218
219 src_configure() {
220 @@ -46,6 +49,7 @@ src_configure() {
221 -DRAPIDJSON_BUILD_EXAMPLES=$(usex examples)
222 -DRAPIDJSON_BUILD_TESTS=$(usex test)
223 -DRAPIDJSON_BUILD_THIRDPARTY_GTEST=OFF
224 + -DVALGRIND_EXECUTABLE=
225 )
226 cmake_src_configure
227 }