Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/qjson/files/, dev-libs/qjson/
Date: Sun, 16 Apr 2017 11:31:50
Message-Id: 1492340397.c43f1f249abb65d7f1e2802cc456dbb805bb3a68.asturm@gentoo
1 commit: c43f1f249abb65d7f1e2802cc456dbb805bb3a68
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sun Apr 9 17:36:42 2017 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sun Apr 16 10:59:57 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c43f1f24
7
8 dev-libs/qjson: 0.9.0 version bump
9
10 Package-Manager: Portage-2.3.3, Repoman-2.3.1
11
12 dev-libs/qjson/Manifest | 1 +
13 .../qjson/files/qjson-0.9.0-featuresummary.patch | 73 ++++++++++++
14 .../qjson/files/qjson-0.9.0-gnuinstalldirs.patch | 123 +++++++++++++++++++++
15 dev-libs/qjson/qjson-0.9.0.ebuild | 49 ++++++++
16 4 files changed, 246 insertions(+)
17
18 diff --git a/dev-libs/qjson/Manifest b/dev-libs/qjson/Manifest
19 index 50d6cb87269..f7df8e6b6f8 100644
20 --- a/dev-libs/qjson/Manifest
21 +++ b/dev-libs/qjson/Manifest
22 @@ -1 +1,2 @@
23 DIST qjson-0.8.1.tar.bz2 64398 SHA256 cd4db5b956247c4991a9c3e95512da257cd2a6bd011357e363d02300afc814d9 SHA512 03e65bbdf6d397f77319867a03377deb419eac46ad91bc06abb7bc68d8f8f2e490db87d909ce51e065f22e5d201f1f73d57f72e14bc378580dbf40b855f1bc72 WHIRLPOOL 532245b3eaaed901bbf44c1d005b002b010b2b7568142fe1435521e4ed24cb52f76accea9f2a324ed19183c62c2f8bfb0c0a257bf808795fc25faa132766ac32
24 +DIST qjson-0.9.0.tar.gz 98300 SHA256 e812617477f3c2bb990561767a4cd8b1d3803a52018d4878da302529552610d4 SHA512 ff0674f32abc6c88f9c535a58931f60baafa355655b043009a2574dadb822f10ec25017b78f2911f897a554a34733d7332c94cf4290dec16a631e22070c15e61 WHIRLPOOL 21aa0a2d738054b2a0c040fc491daa9f829e3206d294b25c0448d2f5854c18a2fbec00f0f9829f3571472d43bf43106174687a25a412b17391fe8ff906e7d26d
25
26 diff --git a/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch b/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch
27 new file mode 100644
28 index 00000000000..6613410fabf
29 --- /dev/null
30 +++ b/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch
31 @@ -0,0 +1,73 @@
32 +From 7288382029f30b5e6ba7ac91b3b2e5d7f96d239a Mon Sep 17 00:00:00 2001
33 +From: Andreas Sturmlechner <andreas.sturmlechner@×××××.com>
34 +Date: Sun, 9 Apr 2017 18:41:15 +0200
35 +Subject: [PATCH 2/2] Use FeatureSummary and simplify by requiring Qt-4.8
36 +
37 +---
38 + CMakeLists.txt | 26 ++++++++++----------------
39 + 1 file changed, 10 insertions(+), 16 deletions(-)
40 +
41 +diff --git a/CMakeLists.txt b/CMakeLists.txt
42 +index d0c44bb..5f1305e 100755
43 +--- a/CMakeLists.txt
44 ++++ b/CMakeLists.txt
45 +@@ -12,6 +12,7 @@ if(POLICY CMP0020)
46 + endif()
47 +
48 + include(GNUInstallDirs)
49 ++include(FeatureSummary)
50 +
51 + set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_LIBDIR})
52 +
53 +@@ -42,14 +43,14 @@ SET(FRAMEWORK_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/Library/Frameworks"
54 + # (This will have no effect with CMake < 2.8)
55 + SET(QT_USE_IMPORTED_TARGETS TRUE)
56 +
57 +-option(QT4_BUILD "Force building with Qt4 even if Qt5 is found")
58 ++option(QT4_BUILD "Force building with Qt4 even if Qt5 is found" OFF)
59 + IF (NOT QT4_BUILD)
60 +- FIND_PACKAGE( Qt5Core QUIET )
61 ++ FIND_PACKAGE( Qt5Core )
62 ++ELSE()
63 ++ MESSAGE ("Forced build with Qt4")
64 + ENDIF()
65 +
66 + IF (Qt5Core_FOUND)
67 +- MESSAGE ("Qt5 found")
68 +-
69 + INCLUDE_DIRECTORIES(${Qt5Core_INCLUDE_DIRS})
70 + ADD_DEFINITIONS(${Qt5Core_DEFINITIONS})
71 + SET(PC_Requires "Qt5Core")
72 +@@ -59,20 +60,11 @@ IF (Qt5Core_FOUND)
73 + # As moc files are generated in the binary dir, tell CMake
74 + # to always look for includes there:
75 + set(CMAKE_INCLUDE_CURRENT_DIR ON)
76 +- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
77 +- MESSAGE ("Enable QStringBuilder")
78 ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
79 + ELSE()
80 +- MESSAGE ("Qt5 not found, searching for Qt4")
81 + # Find Qt4
82 +- FIND_PACKAGE( Qt4 4.5 REQUIRED )
83 +- # QStringBuilder is supported since Qt 4.8 for both QString and QByteArray
84 +- IF (NOT (${QT_VERSION_MINOR} STRLESS "8"))
85 +- MESSAGE ("Enable QStringBuilder")
86 +- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
87 +- ELSE()
88 +- MESSAGE ("Disable QStringBuilder")
89 +- ENDIF()
90 +-
91 ++ FIND_PACKAGE( Qt4 4.8 REQUIRED QtCore)
92 ++ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
93 + # Include the cmake file needed to use qt4
94 + INCLUDE( ${QT_USE_FILE} )
95 + SET(PC_Requires "QtCore")
96 +@@ -131,3 +123,5 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/QJSON${QJSON_SUFFIX}Config.cmake
97 +
98 + ADD_CUSTOM_TARGET(uninstall
99 + "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
100 ++
101 ++FEATURE_SUMMARY(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
102 +--
103 +2.12.2
104 +
105
106 diff --git a/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch b/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch
107 new file mode 100644
108 index 00000000000..f51c2600129
109 --- /dev/null
110 +++ b/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch
111 @@ -0,0 +1,123 @@
112 +From bec00c5c1b0a3da65de82e38bdd633ce8f284ec4 Mon Sep 17 00:00:00 2001
113 +From: Andreas Sturmlechner <andreas.sturmlechner@×××××.com>
114 +Date: Sun, 9 Apr 2017 18:36:24 +0200
115 +Subject: [PATCH 1/2] Use GNUInstallDirs
116 +
117 +---
118 + CMakeLists.txt | 15 +++++----------
119 + QJSONConfig.cmake.in | 2 +-
120 + QJson.pc.in | 6 +++---
121 + src/CMakeLists.txt | 12 ++++++------
122 + 4 files changed, 15 insertions(+), 20 deletions(-)
123 +
124 +diff --git a/CMakeLists.txt b/CMakeLists.txt
125 +index 2fde79f..d0c44bb 100755
126 +--- a/CMakeLists.txt
127 ++++ b/CMakeLists.txt
128 +@@ -11,7 +11,9 @@ if(POLICY CMP0020)
129 + cmake_policy(SET CMP0020 OLD)
130 + endif()
131 +
132 +-set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR})
133 ++include(GNUInstallDirs)
134 ++
135 ++set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_LIBDIR})
136 +
137 + IF("${CMAKE_BUILD_TYPE}" MATCHES "^Rel.*")
138 + ADD_DEFINITIONS("-DQT_NO_DEBUG_OUTPUT")
139 +@@ -80,12 +82,7 @@ IF (NOT WIN32)
140 + SET( QT_DONT_USE_QTGUI TRUE )
141 + ENDIF()
142 +
143 +-
144 +-#add extra search paths for libraries and includes
145 +-SET (LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" )
146 +-SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE STRING "Directory where lib will install")
147 +-SET (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The directory the headers are installed in")
148 +-SET (CMAKECONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/${CMAKE_PROJECT_NAME}${QJSON_SUFFIX}" CACHE PATH "Directory where to install QJSONConfig.cmake")
149 ++SET (CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}${QJSON_SUFFIX}" CACHE PATH "Directory where to install QJSONConfig.cmake")
150 +
151 + set(QJSON_LIB_MAJOR_VERSION "0")
152 + set(QJSON_LIB_MINOR_VERSION "9")
153 +@@ -93,15 +90,13 @@ set(QJSON_LIB_PATCH_VERSION "0")
154 +
155 + set(QJSON_LIB_VERSION_STRING "${QJSON_LIB_MAJOR_VERSION}.${QJSON_LIB_MINOR_VERSION}.${QJSON_LIB_PATCH_VERSION}")
156 +
157 +-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" )
158 +-
159 + # pkg-config
160 + IF (NOT WIN32)
161 + CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/QJson.pc.in
162 + ${CMAKE_CURRENT_BINARY_DIR}/QJson${QJSON_SUFFIX}.pc
163 + @ONLY)
164 + INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/QJson${QJSON_SUFFIX}.pc
165 +- DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
166 ++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
167 + ENDIF (NOT WIN32)
168 +
169 + # Subdirs
170 +diff --git a/QJSONConfig.cmake.in b/QJSONConfig.cmake.in
171 +index 0c4a1e6..22394cb 100644
172 +--- a/QJSONConfig.cmake.in
173 ++++ b/QJSONConfig.cmake.in
174 +@@ -1,6 +1,6 @@
175 + GET_FILENAME_COMPONENT(myDir ${CMAKE_CURRENT_LIST_FILE} PATH)
176 +
177 + SET(QJSON_LIBRARIES qjson)
178 +-SET(QJSON_INCLUDE_DIR "@INCLUDE_INSTALL_DIR@")
179 ++SET(QJSON_INCLUDE_DIR "@CMAKE_INSTALL_INCLUDEDIR@")
180 +
181 + include(${myDir}/QJSON@QJSON_SUFFIX@×××××××.cmake)
182 +diff --git a/QJson.pc.in b/QJson.pc.in
183 +index 55abc28..4cb3de8 100644
184 +--- a/QJson.pc.in
185 ++++ b/QJson.pc.in
186 +@@ -1,11 +1,11 @@
187 + prefix=@CMAKE_INSTALL_PREFIX@
188 + exec_prefix=${prefix}
189 +-libdir=@LIB_INSTALL_DIR@
190 +-includedir=@INCLUDE_INSTALL_DIR@
191 ++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
192 ++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
193 +
194 + Name: QJson
195 + Description: QJson is a qt-based library that maps JSON data to QVariant objects
196 + Version: @QJSON_LIB_MAJOR_VERSION@.@QJSON_LIB_MINOR_VERSION@.@QJSON_LIB_PATCH_VERSION@
197 + Requires: @PC_Requires@
198 + Libs: -L${libdir} -lqjson
199 +-Cflags: -I${includedir}
200 +\ No newline at end of file
201 ++Cflags: -I${includedir}
202 +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
203 +index 0ae7c40..0e461f7 100755
204 +--- a/src/CMakeLists.txt
205 ++++ b/src/CMakeLists.txt
206 +@@ -55,19 +55,19 @@ set_target_properties(qjson${QJSON_SUFFIX} PROPERTIES
207 + )
208 +
209 + INSTALL(TARGETS qjson${QJSON_SUFFIX} EXPORT qjson-export
210 +- LIBRARY DESTINATION ${LIB_INSTALL_DIR}
211 +- RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
212 +- ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
213 ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
214 ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
215 ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
216 + FRAMEWORK DESTINATION ${FRAMEWORK_INSTALL_DIR}
217 +- PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}/qjson${QJSON_SUFFIX}
218 ++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qjson${QJSON_SUFFIX}
219 + )
220 +
221 + if(MSVC)
222 + get_target_property(LOCATION qjson LOCATION_DEBUG)
223 + string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
224 +- install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin CONFIGURATIONS Debug)
225 ++ install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS Debug)
226 +
227 + get_target_property(LOCATION qjson LOCATION_RELWITHDEBINFO)
228 + string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
229 +- install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin CONFIGURATIONS RelWithDebInfo)
230 ++ install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS RelWithDebInfo)
231 + endif(MSVC)
232 +--
233 +2.12.2
234 +
235
236 diff --git a/dev-libs/qjson/qjson-0.9.0.ebuild b/dev-libs/qjson/qjson-0.9.0.ebuild
237 new file mode 100644
238 index 00000000000..b7f01765341
239 --- /dev/null
240 +++ b/dev-libs/qjson/qjson-0.9.0.ebuild
241 @@ -0,0 +1,49 @@
242 +# Copyright 1999-2017 Gentoo Foundation
243 +# Distributed under the terms of the GNU General Public License v2
244 +
245 +EAPI=6
246 +
247 +inherit cmake-multilib
248 +
249 +DESCRIPTION="Library for mapping JSON data to QVariant objects"
250 +HOMEPAGE="http://qjson.sourceforge.net"
251 +SRC_URI="https://github.com/flavio/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
252 +
253 +LICENSE="LGPL-2.1"
254 +SLOT="0"
255 +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd"
256 +IUSE="debug doc test"
257 +
258 +RDEPEND="
259 + dev-qt/qtcore:4[${MULTILIB_USEDEP}]
260 +"
261 +DEPEND="${RDEPEND}
262 + doc? ( app-doc/doxygen )
263 + test? ( dev-qt/qttest:4[${MULTILIB_USEDEP}] )
264 +"
265 +
266 +DOCS=( ChangeLog README.md )
267 +
268 +PATCHES=(
269 + "${FILESDIR}/${P}-gnuinstalldirs.patch"
270 + "${FILESDIR}/${P}-featuresummary.patch"
271 +)
272 +
273 +multilib_src_configure() {
274 + local mycmakeargs=(
275 + -DQT4_BUILD=ON
276 + -DQJSON_BUILD_TESTS=$(usex test)
277 + )
278 +
279 + cmake-utils_src_configure
280 +}
281 +
282 +multilib_src_install_all() {
283 + if use doc && is_final_abi; then
284 + pushd doc > /dev/null || die
285 + doxygen Doxyfile || die "Generating documentation failed"
286 + HTML_DOCS=( doc/html/. )
287 + popd > /dev/null || die
288 + einstalldocs
289 + fi
290 +}