summaryrefslogtreecommitdiff
path: root/dev-libs/qxlsx
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-05 03:17:06 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-05 03:17:06 +0000
commita8b01fd62375e0df65d5f8f20c5ee142ec6739b6 (patch)
tree20346875d32349138564dc9fa82d43acd8d85da4 /dev-libs/qxlsx
parentf932718a139f93e19a6883c061f81b365a408592 (diff)
gentoo auto-resync : 05:11:2022 - 03:17:06
Diffstat (limited to 'dev-libs/qxlsx')
-rw-r--r--dev-libs/qxlsx/Manifest7
-rw-r--r--dev-libs/qxlsx/files/qxlsx-1.4.4-libdir.patch26
-rw-r--r--dev-libs/qxlsx/files/qxlsx-1.4.4-qtdefs.patch24
-rw-r--r--dev-libs/qxlsx/files/qxlsx-1.4.4-qtversion.patch92
-rw-r--r--dev-libs/qxlsx/files/qxlsx-1.4.4-soversion.patch23
-rw-r--r--dev-libs/qxlsx/metadata.xml15
-rw-r--r--dev-libs/qxlsx/qxlsx-1.4.4.ebuild62
7 files changed, 249 insertions, 0 deletions
diff --git a/dev-libs/qxlsx/Manifest b/dev-libs/qxlsx/Manifest
new file mode 100644
index 000000000000..d5f96323ff42
--- /dev/null
+++ b/dev-libs/qxlsx/Manifest
@@ -0,0 +1,7 @@
+AUX qxlsx-1.4.4-libdir.patch 968 BLAKE2B db6cdaf278bb910e674f7a1ec7c09276f64b5f961fb3086c842983a527c7e48cd3d8b37a721a07d85b10ab2bb3afedfc9352c5fe9ee415d7909e783b340075f5 SHA512 206feaff02df1b21339b685450f679372b4db7dde19b049958fa99a5c7b7fb0623e95897ae98e7891dbc860c3a8465621d9453dce69aa60334a73b4a3dd1c63f
+AUX qxlsx-1.4.4-qtdefs.patch 737 BLAKE2B c104e0f129beaca20726ce939c881e79af7606f5f34869dccae4a24cb03848551d91e463f754af16bdec866ece0c540593507c5d67c4d50dd48c874f318a3334 SHA512 4bb08a1ad0e1b0dadf1047d27de814ebc32fa14284fb8411dcd0a3a0485a767962d66598faa3829d2af7b4cd9f79d65b73ca587a8773811c53c58991f5e5a359
+AUX qxlsx-1.4.4-qtversion.patch 3193 BLAKE2B 1e9534bf4361ff0927ed77ba58c38e0ffa219245dc2cd8b314da1ff8c6331a80190df2c97fc67babae112f40e74d4f9d4369ac21c474c0c9df596d5788f312d7 SHA512 c8d46be8a08bf1134403ccea329b021b4cb5e2e6394ff11230b02b1316396490ccc4cab17a7970df7be6fb4329afd7d4184acadb9b2adab938274a3fe5c58f34
+AUX qxlsx-1.4.4-soversion.patch 682 BLAKE2B defb2375ec4ff00e6f042cdf20b52d7983d77806a335b301a1c799679d2da887b88458ed3e024bc085c26d6f6a9f8450868076d969eed8f608b80f30dfe8f14c SHA512 5434a4da6f58fd2aad1ade38b00ce8f48df73e519ef375b9bc7b014cfeb4601912bdc81e9b13529147b97800d6b0ff97fc8669a774f0dcb7814d5189fe90c6d1
+DIST qxlsx-1.4.4.tar.gz 4703732 BLAKE2B 0acf5e708f4dc981723a34b524c820a53a66cb13bf1ce5a1086106230e45dcac2ea6587b3c4ca039de491565ac886a2e5bd1225ee39437ee89a2ff7560da6fd7 SHA512 e6c3dd8822f2a8ab8bcd1a7434db7b202291e3d8de407e4629bdfc1afef507b57da4bc4a715d57b8d75915ce4b623189269083824c35d8e02d49d3e8909cceee
+EBUILD qxlsx-1.4.4.ebuild 1122 BLAKE2B 5459d5af1c8e07fe7c2c87be4cdf1db10e87e58a3feb4355689a79d2277353262b4e8dcae899483be90438200f5c21bd59819e848559ebefbe0c72c0d93bc5b7 SHA512 3887a950077b7624debb4e2764c65dfc73aed99a203cecae67dc8cee046b534c7650aac099795d194356d5a33cdf59f00eeb8feaeca1d371cbdef670b01dcf4f
+MISC metadata.xml 451 BLAKE2B 72b39f0c97bb2d329e87abf678364a963a0e1cceda24106ed304f50258418595349f2b88ad5d34b82677dda655d20b05176d7bd8b2e2ca2215bcf1264b5412cc SHA512 5e9172c378f82bd9fbe16f8acbc877934ebac97d5603ad471f5ad0e4c729f69fb7942125ad7cd70047a28b78b63f3fc670023018cee113061ed2a668c5fd2897
diff --git a/dev-libs/qxlsx/files/qxlsx-1.4.4-libdir.patch b/dev-libs/qxlsx/files/qxlsx-1.4.4-libdir.patch
new file mode 100644
index 000000000000..ffdf8483f41a
--- /dev/null
+++ b/dev-libs/qxlsx/files/qxlsx-1.4.4-libdir.patch
@@ -0,0 +1,26 @@
+From 5d1059941f85365019ed08254e79abdb4ba80ee5 Mon Sep 17 00:00:00 2001
+From: Alexey Sokolov <sokolov@google.com>
+Date: Sun, 4 Sep 2022 01:22:30 +0100
+Subject: [PATCH] Install library to the correct lib dir
+
+---
+ QXlsx/CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/QXlsx/CMakeLists.txt b/QXlsx/CMakeLists.txt
+index a6b1944..fc32918 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -181,9 +181,9 @@ set_target_properties(QXlsx PROPERTIES
+
+ install(TARGETS QXlsx
+ EXPORT QXlsxTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}
+- RUNTIME DESTINATION bin COMPONENT runtime
+- ARCHIVE DESTINATION lib COMPONENT devel
+- PUBLIC_HEADER DESTINATION include/QXlsx COMPONENT devel
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT runtime
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT devel
++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/QXlsx COMPONENT devel
+ )
+
+ install(EXPORT QXlsxTargets
diff --git a/dev-libs/qxlsx/files/qxlsx-1.4.4-qtdefs.patch b/dev-libs/qxlsx/files/qxlsx-1.4.4-qtdefs.patch
new file mode 100644
index 000000000000..15795c645d47
--- /dev/null
+++ b/dev-libs/qxlsx/files/qxlsx-1.4.4-qtdefs.patch
@@ -0,0 +1,24 @@
+From 8e83402db866ae7a67582da28aa68c83545f13c8 Mon Sep 17 00:00:00 2001
+From: Alexey Sokolov <sokolov@google.com>
+Date: Fri, 26 Aug 2022 01:36:53 +0100
+Subject: [PATCH] Don't force Qt definitions onto users
+
+It breaks users who use "signals" keyword and convert const char* to
+QString.
+---
+ QXlsx/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/QXlsx/CMakeLists.txt b/QXlsx/CMakeLists.txt
+index aa774b1..a6b1944 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -140,7 +140,7 @@ add_library(QXlsx
+
+ add_library(QXlsx::QXlsx ALIAS QXlsx)
+
+-target_compile_definitions(QXlsx PUBLIC
++target_compile_definitions(QXlsx PRIVATE
+ -DQT_NO_KEYWORDS
+ -DQT_NO_CAST_TO_ASCII
+ -DQT_NO_CAST_FROM_ASCII
diff --git a/dev-libs/qxlsx/files/qxlsx-1.4.4-qtversion.patch b/dev-libs/qxlsx/files/qxlsx-1.4.4-qtversion.patch
new file mode 100644
index 000000000000..f94aa6e46414
--- /dev/null
+++ b/dev-libs/qxlsx/files/qxlsx-1.4.4-qtversion.patch
@@ -0,0 +1,92 @@
+commit e3565f2b3999ead739066b33fa0fd346eb072d87
+Author: Alexey Sokolov <sokolov@google.com>
+Date: Sun Oct 2 22:46:03 2022 +0100
+
+ Support installing qt5 and qt6 versions in parallel
+
+diff --git a/QXlsx/CMakeLists.txt b/QXlsx/CMakeLists.txt
+index 5640d8a..8d34020 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -15,8 +15,8 @@ include(GNUInstallDirs)
+
+-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Gui REQUIRED)
+ find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui REQUIRED)
++set(EXPORT_NAME QXlsxQt${QT_VERSION_MAJOR})
+
+-if (QT_MAJOR_VERSION EQUAL 6)
++if (QT_VERSION_MAJOR EQUAL 6)
+ set(CMAKE_CXX_STANDARD 17 CACHE STRING "")
+ else()
+ set(CMAKE_CXX_STANDARD 11 CACHE STRING "")
+@@ -166,7 +167,7 @@ if (BUILD_SHARED_LIBS)
+ target_compile_definitions(QXlsx PUBLIC QXlsx_SHAREDLIB)
+ endif()
+
+-target_link_libraries(${PROJECT_NAME}
++target_link_libraries(QXlsx
+ Qt${QT_VERSION_MAJOR}::Core
+ Qt${QT_VERSION_MAJOR}::GuiPrivate
+ )
+@@ -180,39 +181,38 @@ PUBLIC
+ )
+
+ set_target_properties(QXlsx PROPERTIES
+- EXPORT_NAME QXlsx
++ OUTPUT_NAME ${EXPORT_NAME}
+ VERSION ${PROJECT_VERSION}
+ SOVERSION 0.${PROJECT_VERSION}
+ PUBLIC_HEADER "${QXLSX_PUBLIC_HEADERS}"
+ )
+
+ install(TARGETS QXlsx
+- EXPORT QXlsxTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ EXPORT ${EXPORT_NAME}Targets DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT runtime
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT devel
+ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/QXlsx COMPONENT devel
+ )
+
+-install(EXPORT QXlsxTargets
+- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/QXlsx/
+- FILE QXlsxTargets.cmake
++install(EXPORT ${EXPORT_NAME}Targets
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${EXPORT_NAME}/
++ FILE ${EXPORT_NAME}Targets.cmake
+ NAMESPACE QXlsx::
+ COMPONENT devel
+ )
+
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/qxlsx-config.cmake.in
+- ${CMAKE_CURRENT_BINARY_DIR}/QXlsxConfig.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${EXPORT_NAME}Config.cmake
+ @ONLY
+ )
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/qxlsx-config-version.cmake.in
+- ${CMAKE_CURRENT_BINARY_DIR}/QXlsxConfigVersion.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${EXPORT_NAME}ConfigVersion.cmake
+ @ONLY
+ )
+ install(
+ FILES
+- ${CMAKE_CURRENT_BINARY_DIR}/QXlsxConfig.cmake
+- ${CMAKE_CURRENT_BINARY_DIR}/QXlsxConfigVersion.cmake
+- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/QXlsx/
++ ${CMAKE_CURRENT_BINARY_DIR}/${EXPORT_NAME}Config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${EXPORT_NAME}ConfigVersion.cmake
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${EXPORT_NAME}/
+ )
+-
+ include(CPackConfig)
+diff --git a/QXlsx/cmake/modules/qxlsx-config.cmake.in b/QXlsx/cmake/modules/qxlsx-config.cmake.in
+index 1aab813..d72276b 100644
+--- a/cmake/modules/qxlsx-config.cmake.in
++++ b/cmake/modules/qxlsx-config.cmake.in
+@@ -10,5 +10,5 @@
+ SET(prefix "@CMAKE_INSTALL_PREFIX@")
+ SET(exec_prefix "@CMAKE_INSTALL_PREFIX@")
+ SET(QXlsx_FOUND "TRUE")
+-
+-include("${CMAKE_CURRENT_LIST_DIR}/QXlsxTargets.cmake")
++
++include("${CMAKE_CURRENT_LIST_DIR}/@EXPORT_NAME@Targets.cmake")
diff --git a/dev-libs/qxlsx/files/qxlsx-1.4.4-soversion.patch b/dev-libs/qxlsx/files/qxlsx-1.4.4-soversion.patch
new file mode 100644
index 000000000000..eff465497930
--- /dev/null
+++ b/dev-libs/qxlsx/files/qxlsx-1.4.4-soversion.patch
@@ -0,0 +1,23 @@
+From 647acc3c4d431278f3d2867a41a06d57f1978e63 Mon Sep 17 00:00:00 2001
+From: Alexey Sokolov <sokolov@google.com>
+Date: Sat, 8 Oct 2022 23:47:23 +0100
+Subject: [PATCH] Set soversion to version
+
+Since there's no ABI guarantees, as mentioned in #243
+---
+ QXlsx/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/QXlsx/CMakeLists.txt b/QXlsx/CMakeLists.txt
+index 8ddfd20..5640d8a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -182,7 +182,7 @@ PUBLIC
+ set_target_properties(QXlsx PROPERTIES
+ EXPORT_NAME QXlsx
+ VERSION ${PROJECT_VERSION}
+- SOVERSION 0
++ SOVERSION 0.${PROJECT_VERSION}
+ PUBLIC_HEADER "${QXLSX_PUBLIC_HEADERS}"
+ )
+
diff --git a/dev-libs/qxlsx/metadata.xml b/dev-libs/qxlsx/metadata.xml
new file mode 100644
index 000000000000..12de43e54308
--- /dev/null
+++ b/dev-libs/qxlsx/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>alexey+gentoo@asokolov.org</email>
+ <name>Alexey Sokolov</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">QtExcel/QXlsx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/qxlsx/qxlsx-1.4.4.ebuild b/dev-libs/qxlsx/qxlsx-1.4.4.ebuild
new file mode 100644
index 000000000000..2abdd125d872
--- /dev/null
+++ b/dev-libs/qxlsx/qxlsx-1.4.4.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multibuild cmake
+
+DESCRIPTION="Excel file(*.xlsx) reader/writer library using Qt"
+
+HOMEPAGE="https://github.com/QtExcel/QXlsx"
+SRC_URI="https://github.com/QtExcel/QXlsx/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+# soversion
+SLOT="0/0.${PV}"
+KEYWORDS="~amd64"
+
+IUSE="qt5 qt6"
+REQUIRED_USE="|| ( qt5 qt6 )"
+
+RDEPEND="
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5=
+ )
+ qt6? (
+ dev-qt/qtbase:6=[gui]
+ )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/QXlsx-${PV}/QXlsx"
+PATCHES=(
+ "${FILESDIR}/${P}-libdir.patch"
+ "${FILESDIR}/${P}-qtdefs.patch"
+ "${FILESDIR}/${P}-soversion.patch"
+ "${FILESDIR}/${P}-qtversion.patch"
+)
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) )
+}
+
+src_configure() {
+ my_src_configure() {
+ local mycmakeargs=(
+ -DQT_VERSION_MAJOR="${MULTIBUILD_VARIANT/qt/}"
+ )
+
+ cmake_src_configure
+ }
+
+ multibuild_foreach_variant my_src_configure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake_src_compile
+}
+
+src_install() {
+ multibuild_foreach_variant cmake_src_install
+}