Gentoo Archives: gentoo-commits

From: Andrew Ammerlaan <andrewammerlaan@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/quazip/
Date: Fri, 09 Sep 2022 16:09:55
Message-Id: 1662739755.970ed90ac451c5b90e3c2d81b639e7e2ea8466b6.andrewammerlaan@gentoo
1 commit: 970ed90ac451c5b90e3c2d81b639e7e2ea8466b6
2 Author: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 9 15:57:42 2022 +0000
4 Commit: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 9 16:09:15 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=970ed90a
7
8 dev-libs/quazip: allow build with both qt5 and/or qt6
9
10 Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>
11
12 dev-libs/quazip/metadata.xml | 4 ++
13 dev-libs/quazip/quazip-1.3-r2.ebuild | 82 ++++++++++++++++++++++++++++++++++++
14 2 files changed, 86 insertions(+)
15
16 diff --git a/dev-libs/quazip/metadata.xml b/dev-libs/quazip/metadata.xml
17 index de71837a36e3..c0b0f714ce05 100644
18 --- a/dev-libs/quazip/metadata.xml
19 +++ b/dev-libs/quazip/metadata.xml
20 @@ -8,4 +8,8 @@
21 <remote-id type="github">stachenov/quazip</remote-id>
22 <remote-id type="sourceforge">quazip</remote-id>
23 </upstream>
24 + <use>
25 + <flag name="qt5">Build with Qt5 support</flag>
26 + <flag name="qt6">Build with Qt6 support</flag>
27 + </use>
28 </pkgmetadata>
29
30 diff --git a/dev-libs/quazip/quazip-1.3-r2.ebuild b/dev-libs/quazip/quazip-1.3-r2.ebuild
31 new file mode 100644
32 index 000000000000..9f2752897d51
33 --- /dev/null
34 +++ b/dev-libs/quazip/quazip-1.3-r2.ebuild
35 @@ -0,0 +1,82 @@
36 +# Copyright 1999-2022 Gentoo Authors
37 +# Distributed under the terms of the GNU General Public License v2
38 +
39 +EAPI=8
40 +
41 +inherit cmake multibuild
42 +
43 +DESCRIPTION="Simple C++ wrapper over Gilles Vollant's ZIP/UNZIP package"
44 +HOMEPAGE="https://stachenov.github.io/quazip/"
45 +SRC_URI="https://github.com/stachenov/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
46 +
47 +LICENSE="LGPL-2.1-with-linking-exception"
48 +# SONAME of libquazip1-qt5.so, check QUAZIP_LIB_SOVERSION in CMakeLists.txt
49 +SLOT="0/1.3"
50 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
51 +IUSE="+qt5 qt6 test"
52 +REQUIRED_USE="|| ( qt5 qt6 )"
53 +
54 +RESTRICT="!test? ( test )"
55 +
56 +COMMON_DEPEND="
57 + qt5? ( dev-qt/qtcore:5 )
58 + qt6? ( dev-qt/qtbase:6 )
59 + sys-libs/zlib[minizip]
60 +"
61 +DEPEND="${COMMON_DEPEND}
62 + test? (
63 + qt5? (
64 + dev-qt/qtnetwork:5
65 + dev-qt/qttest:5
66 + )
67 + qt6? (
68 + dev-qt/qtbase:6[gui,network]
69 + )
70 + )
71 +"
72 +RDEPEND="${COMMON_DEPEND}
73 + !=dev-libs/quazip-1.1-r0:1
74 +"
75 +
76 +PATCHES=( "${FILESDIR}/${P}-cmake.patch" )
77 +
78 +pkg_setup() {
79 + MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) )
80 +}
81 +
82 +src_configure() {
83 + my_src_configure() {
84 + local mycmakeargs=(
85 + -DBUILD_TESTING=$(usex test)
86 + )
87 + if [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then
88 + mycmakeargs+=(
89 + -DQUAZIP_QT_MAJOR_VERSION=5
90 + )
91 + elif [[ ${MULTIBUILD_VARIANT} = qt6 ]]; then
92 + mycmakeargs+=(
93 + -DQUAZIP_QT_MAJOR_VERSION=6
94 + )
95 + fi
96 + cmake_src_configure
97 + }
98 +
99 + multibuild_foreach_variant my_src_configure
100 +}
101 +
102 +src_compile() {
103 + my_src_compile() {
104 + cmake_src_compile
105 + use test && cmake_build qztest
106 + }
107 +
108 + multibuild_foreach_variant my_src_compile
109 +}
110 +
111 +src_test() {
112 + multibuild_foreach_variant cmake_src_test
113 +}
114 +
115 +src_install() {
116 + multibuild_foreach_variant cmake_src_install
117 +}