commit:     66e30b8c66aadf6f882b9bbae10e2d619bccee37
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  7 13:09:10 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Sep  7 15:05:48 2020 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=66e30b8c

kde-apps/cantor: Drop pkg_pretend, use optfeature in pkg_postinst

>From now on make sure there is at least one of the optional runtime backends
installed if all backend IUSE are disabled.

Package-Manager: Portage-3.0.5, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 kde-apps/cantor/cantor-20.08.49.9999.ebuild | 43 +++++++++++++----------------
 kde-apps/cantor/cantor-9999.ebuild          | 43 +++++++++++++----------------
 2 files changed, 38 insertions(+), 48 deletions(-)

diff --git a/kde-apps/cantor/cantor-20.08.49.9999.ebuild 
b/kde-apps/cantor/cantor-20.08.49.9999.ebuild
index 53ab76f030..c807935fdf 100644
--- a/kde-apps/cantor/cantor-20.08.49.9999.ebuild
+++ b/kde-apps/cantor/cantor-20.08.49.9999.ebuild
@@ -10,7 +10,7 @@ PYTHON_COMPAT=( python3_{7,8} )
 PVCUT=$(ver_cut 1-3)
 KFMIN=5.72.0
 QTMIN=5.14.2
-inherit ecm kde.org python-single-r1
+inherit ecm kde.org optfeature python-single-r1
 
 DESCRIPTION="Interface for doing mathematics and scientific computing"
 HOMEPAGE="https://kde.org/applications/education/org.kde.cantor
@@ -63,32 +63,17 @@ DEPEND="
        )
        R? ( dev-lang/R )
 "
-RDEPEND="${DEPEND}"
+RDEPEND="${DEPEND}
+       !analitza? ( !julia? ( !lua? ( !python? ( !qalculate? ( !R? (
+               || (
+                       sci-mathematics/maxima
+                       sci-mathematics/octave
+               )
+       ) ) ) ) ) )
+"
 
 RESTRICT+=" test"
 
-pkg_pretend() {
-       ecm_pkg_pretend
-
-       if ! has_version sci-mathematics/maxima && ! has_version 
sci-mathematics/octave && \
-               ! use analitza && ! use julia && ! use lua && ! use python && ! 
use qalculate && ! use R; then
-               elog "You have decided to build ${PN} with no backend."
-               elog "To have this application functional, please enable one of 
the backends via USE flag:"
-               elog "    analitza, lua, python, qalculate, R"
-               elog "Alternatively, install one of these:"
-               elog "    # emerge sci-mathematics/maxima (bug #619534)"
-               elog "    # emerge sci-mathematics/octave"
-               elog "Experimental available USE flag:"
-               elog "    julia (not stable, bug #613576)"
-               elog
-       fi
-
-       if ! has_version virtual/latex-base; then
-               elog "For LaTeX support:"
-               elog "    # emerge virtual/latex-base"
-       fi
-}
-
 pkg_setup() {
        use python && python-single-r1_pkg_setup
        ecm_pkg_setup
@@ -108,3 +93,13 @@ src_configure() {
        )
        ecm_src_configure
 }
+
+pkg_postinst() {
+       if [[ -z "${REPLACING_VERSIONS}" ]]; then
+               elog "Optional dependencies:"
+               optfeature "Maxima backend" sci-mathematics/maxima
+               optfeature "Octave backend" sci-mathematics/octave
+               optfeature "LaTeX support" virtual/latex-base
+       fi
+       ecm_pkg_postinst
+}

diff --git a/kde-apps/cantor/cantor-9999.ebuild 
b/kde-apps/cantor/cantor-9999.ebuild
index c27bf5f5a5..e1073ed888 100644
--- a/kde-apps/cantor/cantor-9999.ebuild
+++ b/kde-apps/cantor/cantor-9999.ebuild
@@ -10,7 +10,7 @@ PYTHON_COMPAT=( python3_{7,8} )
 PVCUT=$(ver_cut 1-3)
 KFMIN=5.73.0
 QTMIN=5.14.2
-inherit ecm kde.org python-single-r1
+inherit ecm kde.org optfeature python-single-r1
 
 DESCRIPTION="Interface for doing mathematics and scientific computing"
 HOMEPAGE="https://kde.org/applications/education/org.kde.cantor
@@ -63,32 +63,17 @@ DEPEND="
        )
        R? ( dev-lang/R )
 "
-RDEPEND="${DEPEND}"
+RDEPEND="${DEPEND}
+       !analitza? ( !julia? ( !lua? ( !python? ( !qalculate? ( !R? (
+               || (
+                       sci-mathematics/maxima
+                       sci-mathematics/octave
+               )
+       ) ) ) ) ) )
+"
 
 RESTRICT+=" test"
 
-pkg_pretend() {
-       ecm_pkg_pretend
-
-       if ! has_version sci-mathematics/maxima && ! has_version 
sci-mathematics/octave && \
-               ! use analitza && ! use julia && ! use lua && ! use python && ! 
use qalculate && ! use R; then
-               elog "You have decided to build ${PN} with no backend."
-               elog "To have this application functional, please enable one of 
the backends via USE flag:"
-               elog "    analitza, lua, python, qalculate, R"
-               elog "Alternatively, install one of these:"
-               elog "    # emerge sci-mathematics/maxima (bug #619534)"
-               elog "    # emerge sci-mathematics/octave"
-               elog "Experimental available USE flag:"
-               elog "    julia (not stable, bug #613576)"
-               elog
-       fi
-
-       if ! has_version virtual/latex-base; then
-               elog "For LaTeX support:"
-               elog "    # emerge virtual/latex-base"
-       fi
-}
-
 pkg_setup() {
        use python && python-single-r1_pkg_setup
        ecm_pkg_setup
@@ -108,3 +93,13 @@ src_configure() {
        )
        ecm_src_configure
 }
+
+pkg_postinst() {
+       if [[ -z "${REPLACING_VERSIONS}" ]]; then
+               elog "Optional dependencies:"
+               optfeature "Maxima backend" sci-mathematics/maxima
+               optfeature "Octave backend" sci-mathematics/octave
+               optfeature "LaTeX support" virtual/latex-base
+       fi
+       ecm_pkg_postinst
+}

Reply via email to