diff options
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/quazip/metadata.xml | 4 | ||||
-rw-r--r-- | dev-libs/quazip/quazip-1.3-r2.ebuild | 82 |
2 files changed, 86 insertions, 0 deletions
diff --git a/dev-libs/quazip/metadata.xml b/dev-libs/quazip/metadata.xml index de71837a36e3..c0b0f714ce05 100644 --- a/dev-libs/quazip/metadata.xml +++ b/dev-libs/quazip/metadata.xml @@ -8,4 +8,8 @@ <remote-id type="github">stachenov/quazip</remote-id> <remote-id type="sourceforge">quazip</remote-id> </upstream> + <use> + <flag name="qt5">Build with Qt5 support</flag> + <flag name="qt6">Build with Qt6 support</flag> + </use> </pkgmetadata> diff --git a/dev-libs/quazip/quazip-1.3-r2.ebuild b/dev-libs/quazip/quazip-1.3-r2.ebuild new file mode 100644 index 000000000000..9f2752897d51 --- /dev/null +++ b/dev-libs/quazip/quazip-1.3-r2.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake multibuild + +DESCRIPTION="Simple C++ wrapper over Gilles Vollant's ZIP/UNZIP package" +HOMEPAGE="https://stachenov.github.io/quazip/" +SRC_URI="https://github.com/stachenov/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-2.1-with-linking-exception" +# SONAME of libquazip1-qt5.so, check QUAZIP_LIB_SOVERSION in CMakeLists.txt +SLOT="0/1.3" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux" +IUSE="+qt5 qt6 test" +REQUIRED_USE="|| ( qt5 qt6 )" + +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + qt5? ( dev-qt/qtcore:5 ) + qt6? ( dev-qt/qtbase:6 ) + sys-libs/zlib[minizip] +" +DEPEND="${COMMON_DEPEND} + test? ( + qt5? ( + dev-qt/qtnetwork:5 + dev-qt/qttest:5 + ) + qt6? ( + dev-qt/qtbase:6[gui,network] + ) + ) +" +RDEPEND="${COMMON_DEPEND} + !=dev-libs/quazip-1.1-r0:1 +" + +PATCHES=( "${FILESDIR}/${P}-cmake.patch" ) + +pkg_setup() { + MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) ) +} + +src_configure() { + my_src_configure() { + local mycmakeargs=( + -DBUILD_TESTING=$(usex test) + ) + if [[ ${MULTIBUILD_VARIANT} = qt5 ]]; then + mycmakeargs+=( + -DQUAZIP_QT_MAJOR_VERSION=5 + ) + elif [[ ${MULTIBUILD_VARIANT} = qt6 ]]; then + mycmakeargs+=( + -DQUAZIP_QT_MAJOR_VERSION=6 + ) + fi + cmake_src_configure + } + + multibuild_foreach_variant my_src_configure +} + +src_compile() { + my_src_compile() { + cmake_src_compile + use test && cmake_build qztest + } + + multibuild_foreach_variant my_src_compile +} + +src_test() { + multibuild_foreach_variant cmake_src_test +} + +src_install() { + multibuild_foreach_variant cmake_src_install +} |