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