summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2020-08-15 00:35:33 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2020-08-16 17:52:07 +0200
commita4ef05fdd3eed1ada510fc359e6e328eb7d07fba (patch)
treecf1be678cfb89894c87b44186e8febe4906b7fc1
parentmedia-libs/qimageblitz: Fix build with >=dev-util/cmake-3.15 (diff)
downloadkde-sunset-a4ef05fd.tar.gz
kde-sunset-a4ef05fd.tar.bz2
kde-sunset-a4ef05fd.zip
dev-libs/qjson: Import from Gentoo ebuild repo before last-rites
Required by kde-apps/libkgapi. Package-Manager: Portage-3.0.2, Repoman-2.3.23 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--dev-libs/qjson/Manifest1
-rw-r--r--dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch73
-rw-r--r--dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch123
-rw-r--r--dev-libs/qjson/metadata.xml10
-rw-r--r--dev-libs/qjson/qjson-0.9.0.ebuild49
5 files changed, 256 insertions, 0 deletions
diff --git a/dev-libs/qjson/Manifest b/dev-libs/qjson/Manifest
new file mode 100644
index 00000000..3063e9e2
--- /dev/null
+++ b/dev-libs/qjson/Manifest
@@ -0,0 +1 @@
+DIST qjson-0.9.0.tar.gz 98300 BLAKE2B 9c8624f9bfe9f88d0b4c48ec90ac5d57631a1468a1dbd4845907b94d63d94a0bad8fec7b511fc8ae024a7e1c2d6bf04aeff02251af7df3c037c1b438e3a2e985 SHA512 ff0674f32abc6c88f9c535a58931f60baafa355655b043009a2574dadb822f10ec25017b78f2911f897a554a34733d7332c94cf4290dec16a631e22070c15e61
diff --git a/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch b/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch
new file mode 100644
index 00000000..6613410f
--- /dev/null
+++ b/dev-libs/qjson/files/qjson-0.9.0-featuresummary.patch
@@ -0,0 +1,73 @@
+From 7288382029f30b5e6ba7ac91b3b2e5d7f96d239a Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 9 Apr 2017 18:41:15 +0200
+Subject: [PATCH 2/2] Use FeatureSummary and simplify by requiring Qt-4.8
+
+---
+ CMakeLists.txt | 26 ++++++++++----------------
+ 1 file changed, 10 insertions(+), 16 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d0c44bb..5f1305e 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,7 @@ if(POLICY CMP0020)
+ endif()
+
+ include(GNUInstallDirs)
++include(FeatureSummary)
+
+ set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_LIBDIR})
+
+@@ -42,14 +43,14 @@ SET(FRAMEWORK_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/Library/Frameworks"
+ # (This will have no effect with CMake < 2.8)
+ SET(QT_USE_IMPORTED_TARGETS TRUE)
+
+-option(QT4_BUILD "Force building with Qt4 even if Qt5 is found")
++option(QT4_BUILD "Force building with Qt4 even if Qt5 is found" OFF)
+ IF (NOT QT4_BUILD)
+- FIND_PACKAGE( Qt5Core QUIET )
++ FIND_PACKAGE( Qt5Core )
++ELSE()
++ MESSAGE ("Forced build with Qt4")
+ ENDIF()
+
+ IF (Qt5Core_FOUND)
+- MESSAGE ("Qt5 found")
+-
+ INCLUDE_DIRECTORIES(${Qt5Core_INCLUDE_DIRS})
+ ADD_DEFINITIONS(${Qt5Core_DEFINITIONS})
+ SET(PC_Requires "Qt5Core")
+@@ -59,20 +60,11 @@ IF (Qt5Core_FOUND)
+ # As moc files are generated in the binary dir, tell CMake
+ # to always look for includes there:
+ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
+- MESSAGE ("Enable QStringBuilder")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
+ ELSE()
+- MESSAGE ("Qt5 not found, searching for Qt4")
+ # Find Qt4
+- FIND_PACKAGE( Qt4 4.5 REQUIRED )
+- # QStringBuilder is supported since Qt 4.8 for both QString and QByteArray
+- IF (NOT (${QT_VERSION_MINOR} STRLESS "8"))
+- MESSAGE ("Enable QStringBuilder")
+- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
+- ELSE()
+- MESSAGE ("Disable QStringBuilder")
+- ENDIF()
+-
++ FIND_PACKAGE( Qt4 4.8 REQUIRED QtCore)
++ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_USE_QSTRINGBUILDER" )
+ # Include the cmake file needed to use qt4
+ INCLUDE( ${QT_USE_FILE} )
+ SET(PC_Requires "QtCore")
+@@ -131,3 +123,5 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/QJSON${QJSON_SUFFIX}Config.cmake
+
+ ADD_CUSTOM_TARGET(uninstall
+ "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
++
++FEATURE_SUMMARY(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)
+--
+2.12.2
+
diff --git a/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch b/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch
new file mode 100644
index 00000000..f51c2600
--- /dev/null
+++ b/dev-libs/qjson/files/qjson-0.9.0-gnuinstalldirs.patch
@@ -0,0 +1,123 @@
+From bec00c5c1b0a3da65de82e38bdd633ce8f284ec4 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Sun, 9 Apr 2017 18:36:24 +0200
+Subject: [PATCH 1/2] Use GNUInstallDirs
+
+---
+ CMakeLists.txt | 15 +++++----------
+ QJSONConfig.cmake.in | 2 +-
+ QJson.pc.in | 6 +++---
+ src/CMakeLists.txt | 12 ++++++------
+ 4 files changed, 15 insertions(+), 20 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2fde79f..d0c44bb 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -11,7 +11,9 @@ if(POLICY CMP0020)
+ cmake_policy(SET CMP0020 OLD)
+ endif()
+
+-set(CMAKE_INSTALL_NAME_DIR ${LIB_INSTALL_DIR})
++include(GNUInstallDirs)
++
++set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_LIBDIR})
+
+ IF("${CMAKE_BUILD_TYPE}" MATCHES "^Rel.*")
+ ADD_DEFINITIONS("-DQT_NO_DEBUG_OUTPUT")
+@@ -80,12 +82,7 @@ IF (NOT WIN32)
+ SET( QT_DONT_USE_QTGUI TRUE )
+ ENDIF()
+
+-
+-#add extra search paths for libraries and includes
+-SET (LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" )
+-SET (LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" CACHE STRING "Directory where lib will install")
+-SET (INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The directory the headers are installed in")
+-SET (CMAKECONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/${CMAKE_PROJECT_NAME}${QJSON_SUFFIX}" CACHE PATH "Directory where to install QJSONConfig.cmake")
++SET (CMAKECONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME}${QJSON_SUFFIX}" CACHE PATH "Directory where to install QJSONConfig.cmake")
+
+ set(QJSON_LIB_MAJOR_VERSION "0")
+ set(QJSON_LIB_MINOR_VERSION "9")
+@@ -93,15 +90,13 @@ set(QJSON_LIB_PATCH_VERSION "0")
+
+ set(QJSON_LIB_VERSION_STRING "${QJSON_LIB_MAJOR_VERSION}.${QJSON_LIB_MINOR_VERSION}.${QJSON_LIB_PATCH_VERSION}")
+
+-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" )
+-
+ # pkg-config
+ IF (NOT WIN32)
+ CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/QJson.pc.in
+ ${CMAKE_CURRENT_BINARY_DIR}/QJson${QJSON_SUFFIX}.pc
+ @ONLY)
+ INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/QJson${QJSON_SUFFIX}.pc
+- DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+ ENDIF (NOT WIN32)
+
+ # Subdirs
+diff --git a/QJSONConfig.cmake.in b/QJSONConfig.cmake.in
+index 0c4a1e6..22394cb 100644
+--- a/QJSONConfig.cmake.in
++++ b/QJSONConfig.cmake.in
+@@ -1,6 +1,6 @@
+ GET_FILENAME_COMPONENT(myDir ${CMAKE_CURRENT_LIST_FILE} PATH)
+
+ SET(QJSON_LIBRARIES qjson)
+-SET(QJSON_INCLUDE_DIR "@INCLUDE_INSTALL_DIR@")
++SET(QJSON_INCLUDE_DIR "@CMAKE_INSTALL_INCLUDEDIR@")
+
+ include(${myDir}/QJSON@QJSON_SUFFIX@Targets.cmake)
+diff --git a/QJson.pc.in b/QJson.pc.in
+index 55abc28..4cb3de8 100644
+--- a/QJson.pc.in
++++ b/QJson.pc.in
+@@ -1,11 +1,11 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=@LIB_INSTALL_DIR@
+-includedir=@INCLUDE_INSTALL_DIR@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+ Name: QJson
+ Description: QJson is a qt-based library that maps JSON data to QVariant objects
+ Version: @QJSON_LIB_MAJOR_VERSION@.@QJSON_LIB_MINOR_VERSION@.@QJSON_LIB_PATCH_VERSION@
+ Requires: @PC_Requires@
+ Libs: -L${libdir} -lqjson
+-Cflags: -I${includedir}
+\ No newline at end of file
++Cflags: -I${includedir}
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 0ae7c40..0e461f7 100755
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -55,19 +55,19 @@ set_target_properties(qjson${QJSON_SUFFIX} PROPERTIES
+ )
+
+ INSTALL(TARGETS qjson${QJSON_SUFFIX} EXPORT qjson-export
+- LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+- RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
+- ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ FRAMEWORK DESTINATION ${FRAMEWORK_INSTALL_DIR}
+- PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}/qjson${QJSON_SUFFIX}
++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qjson${QJSON_SUFFIX}
+ )
+
+ if(MSVC)
+ get_target_property(LOCATION qjson LOCATION_DEBUG)
+ string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
+- install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin CONFIGURATIONS Debug)
++ install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS Debug)
+
+ get_target_property(LOCATION qjson LOCATION_RELWITHDEBINFO)
+ string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
+- install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin CONFIGURATIONS RelWithDebInfo)
++ install(FILES ${LOCATION} DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS RelWithDebInfo)
+ endif(MSVC)
+--
+2.12.2
+
diff --git a/dev-libs/qjson/metadata.xml b/dev-libs/qjson/metadata.xml
new file mode 100644
index 00000000..103cb8db
--- /dev/null
+++ b/dev-libs/qjson/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">flavio/qjson</remote-id>
+ <bugs-to>https://github.com/flavio/qjson/issues</bugs-to>
+ <remote-id type="sourceforge">qjson</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/qjson/qjson-0.9.0.ebuild b/dev-libs/qjson/qjson-0.9.0.ebuild
new file mode 100644
index 00000000..0daddec9
--- /dev/null
+++ b/dev-libs/qjson/qjson-0.9.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-multilib
+
+DESCRIPTION="Library for mapping JSON data to QVariant objects"
+HOMEPAGE="http://qjson.sourceforge.net"
+SRC_URI="https://github.com/flavio/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86"
+IUSE="debug doc test"
+
+RDEPEND="
+ dev-qt/qtcore:4[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-qt/qttest:4[${MULTILIB_USEDEP}] )
+"
+
+DOCS=( ChangeLog README.md )
+
+PATCHES=(
+ "${FILESDIR}/${P}-gnuinstalldirs.patch"
+ "${FILESDIR}/${P}-featuresummary.patch"
+)
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DQT4_BUILD=ON
+ -DQJSON_BUILD_TESTS=$(usex test)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ if use doc && is_final_abi; then
+ pushd doc > /dev/null || die
+ doxygen Doxyfile || die "Generating documentation failed"
+ HTML_DOCS=( doc/html/. )
+ popd > /dev/null || die
+ einstalldocs
+ fi
+}