diff options
Diffstat (limited to 'dev-qt/kdsingleapplication/kdsingleapplication-1.1.0.ebuild')
-rw-r--r-- | dev-qt/kdsingleapplication/kdsingleapplication-1.1.0.ebuild | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/dev-qt/kdsingleapplication/kdsingleapplication-1.1.0.ebuild b/dev-qt/kdsingleapplication/kdsingleapplication-1.1.0.ebuild new file mode 100644 index 000000000000..67fef37a2e74 --- /dev/null +++ b/dev-qt/kdsingleapplication/kdsingleapplication-1.1.0.ebuild @@ -0,0 +1,96 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake multibuild + +DESCRIPTION="KDAB's helper class for single-instance policy applications" +HOMEPAGE="https://github.com/KDAB/KDSingleApplication" +SRC_URI="https://github.com/KDAB/KDSingleApplication/releases/download/v${PV}/kdsingleapplication-${PV}.tar.gz" + +LICENSE="BSD MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +IUSE="doc examples test qt6" +RESTRICT="!test? ( test )" + +DEPEND=" + dev-qt/qtcore:5 + dev-qt/qtnetwork:5 + dev-qt/qtwidgets:5 + qt6? ( + dev-qt/qtbase:6[network,widgets] + ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + doc? ( + app-text/doxygen[dot] + dev-qt/qthelp:5 + qt6? ( + dev-qt/qttools:6[assistant] + ) + ) + examples? ( + dev-util/patchelf + ) + dev-qt/qttest:5 +" + +pkg_setup() { + MULTIBUILD_VARIANTS=( qt5 $(usev qt6) ) +} + +src_configure() { + myconfigure() { + local mycmakeargs=( + -DINSTALL_DOC_DIR="${EPREFIX}/usr/share/doc/${PF}" + ) + if [[ ${MULTIBUILD_VARIANT} == qt6 ]]; then + mycmakeargs+=( + -DKDSingleApplication_DOCS=OFF + -DKDSingleApplication_EXAMPLES=OFF + -DKDSingleApplication_QT6=ON + -DKDSingleApplication_TESTS=OFF + ) + else + mycmakeargs+=( + -DKDSingleApplication_DOCS=$(usex doc) + -DKDSingleApplication_EXAMPLES=$(usex examples) + -DKDSingleApplication_QT6=OFF + -DKDSingleApplication_TESTS=$(usex test) + ) + fi + cmake_src_configure + } + multibuild_foreach_variant myconfigure +} + +src_compile() { + multibuild_foreach_variant cmake_src_compile +} + +src_test() { + mytest() { + [[ ${MULTIBUILD_VARIANT} == qt5 ]] && cmake_src_test + } + multibuild_foreach_variant mytest +} + +src_install() { + myinstall() { + cmake_src_install + if [[ ${MULTIBUILD_VARIANT} == qt5 ]]; then + rm -rf "${BUILD_DIR}"/docs/api/html/examples || die + use doc && HTML_DOCS="${BUILD_DIR}/docs/api/html/*" + if use examples; then + patchelf --remove-rpath "${BUILD_DIR}"/bin/widgetsingleapplication || die + dobin "${BUILD_DIR}"/bin/widgetsingleapplication + fi + fi + } + multibuild_foreach_variant myinstall + einstalldocs +} |