From c88b8c58ea8d10b03cbd48bf1eb75923862adfa5 Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Wed, 4 May 2011 23:12:15 +0400 Subject: Used EAPI=4; Improved Lisp selection --- sci-mathematics/open-axiom/Manifest | 2 +- sci-mathematics/open-axiom/open-axiom-9999.ebuild | 59 +++++++---------------- 2 files changed, 18 insertions(+), 43 deletions(-) diff --git a/sci-mathematics/open-axiom/Manifest b/sci-mathematics/open-axiom/Manifest index 07cbf26..eb816be 100644 --- a/sci-mathematics/open-axiom/Manifest +++ b/sci-mathematics/open-axiom/Manifest @@ -1,3 +1,3 @@ AUX open-axiom.png 59273 RMD160 6e5ada74de8fcac8f939320b68e1b8cbf554dbc5 SHA1 037aac8d6f21ce84615a8b48cec7f10fbe639749 SHA256 2c69fbf1f9c22bf2231c1d0d4caf750e957a7b2bd139185c70df27ffbd322e85 AUX open-axiom.xcf 188198 RMD160 d1ca7e7b3115caca158d2af28f7002560984e123 SHA1 810f5a639529972c2b321ab15c4d48a0dd5f71ad SHA256 53f5efeab237754b8526e8bcd5c2c2ef2def0773cd2cab1976fd9a60a4fe6f3d -EBUILD open-axiom-9999.ebuild 2184 RMD160 7c032fc752e7e7c38911596813706dc349d0779f SHA1 021a7294e9f72228c8d620c384990a9e772e7972 SHA256 d015247c51e2646dfbb8e99b341b813a77d828a89d37f02dcc63391dca9fa844 +EBUILD open-axiom-9999.ebuild 1611 RMD160 f49882bf9602f9ebc6277ea2b64275e2623f1be6 SHA1 e453ed33c55bae4e5fa4ebe19aca8d172236cf98 SHA256 61ec94dd98cccf9b7e66ff2993de161be72363ebe9f27fa625fd5fcee42b3f1f diff --git a/sci-mathematics/open-axiom/open-axiom-9999.ebuild b/sci-mathematics/open-axiom/open-axiom-9999.ebuild index 58e5ef9..d1728d5 100644 --- a/sci-mathematics/open-axiom/open-axiom-9999.ebuild +++ b/sci-mathematics/open-axiom/open-axiom-9999.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: $ -EAPI=2 +EAPI=4 inherit eutils autotools subversion DESCRIPTION="The open computer algebra system (Axiom fork)" @@ -14,15 +14,11 @@ SRC_URI="" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64 ~x86" -LISPS=( sbcl clisp gcl ecls clozurecl ) -CONF=( . . . ecl ccl ) +LISPS='sbcl clisp gcl ecls clozurecl' +REQUIRED_USE="^^ ( $LISPS )" # The first lisp is default -IUSE="X threads +${LISPS[0]}" -n=${#LISPS[*]} -for ((i=1; i < n; i++)); do - IUSE="$IUSE -${LISPS[$i]}" -done +IUSE="X threads +$LISPS" @@ -41,48 +37,27 @@ gcl? ( || ( =dev-lisp/gcl-2.6.7 =dev-lisp/gcl-2.6.8 ) ) ecls? ( >=dev-lisp/ecls-0.9l ) clozurecl? ( >=dev-lisp/clozurecl-1.3 )" -choose_lisp() { - if [ ${CONF[$1]} != '.' ]; then - echo ${CONF[$1]} - else - echo ${LISPS[$1]} - fi -} - -pkg_setup() { - local l n i - LISP='' - n=${#LISPS[*]} - for ((i=0; i < n; i++)); do - if use ${LISPS[$i]}; then - if [ -z "$LISP" ]; then - l=${LISPS[$i]} - LISP=$(choose_lisp $i) - else - ewarn "Only one lisp can be used and it will be $l." - ewarn "Check your USE flags." - epause 5 - fi - fi - done - if [ -z "$LISP" ]; then - LISP=$(choose_lisp 0) - ewarn "No lisp platform specified." - ewarn "Chosing ${LISPS[0]} as default." - ewarn "Building OpenAxiom may fail due to loosing dependecies." - epause 5 - fi -} src_prepare() { eautoreconf } src_configure() { + local l, lisp; + for l in $LISPS; do + use $l && break; + done + + case $l in + clozurecl) lisp=ccl;; + ecls) lisp=ecl;; + *) lisp=$l;; + esac + econf \ $(use_with X x) \ - $(use_enable gcl gcl) \ - --with-lisp=$LISP \ + --disable-gcl \ + --with-lisp=$lisp \ $(use_enable threads threads) \ || die "econf failed" } -- cgit v1.2.3