On 20 September 2012 05:43, Michał Górny <mgo...@gentoo.org> wrote:
> I've renamed PYTHON_DEPEND to avoid confusion with python.eclass.
> ---
>  gx86/eclass/python-distutils-ng.eclass | 20 ++-----------------
>  gx86/eclass/python-r1.eclass           | 35 
> ++++++++++++++++++++++++++++++++--
>  2 files changed, 35 insertions(+), 20 deletions(-)
>
> diff --git a/gx86/eclass/python-distutils-ng.eclass 
> b/gx86/eclass/python-distutils-ng.eclass
> index 5df965c..34717aa 100644
> --- a/gx86/eclass/python-distutils-ng.eclass
> +++ b/gx86/eclass/python-distutils-ng.eclass
> @@ -74,24 +74,8 @@ _python-distutils-ng_get_binary_for_implementation() {
>         esac
>  }
>
> -for impl in ${PYTHON_COMPAT[@]}; do
> -       dep_str="${impl/_/.}"
> -       case "${dep_str}" in
> -               python?.?)
> -                       dep_str="dev-lang/python:${dep_str: -3}" ;;
> -               jython?.?)
> -                       dep_str="dev-java/jython:${dep_str: -3}" ;;
> -               pypy?.?)
> -                       dep_str="dev-python/pypy:${dep_str: -3}" ;;
> -               *)
> -                       die "Unsupported implementation: ${impl}" ;;
> -       esac
> -       dep_str="python_targets_${impl}? ( ${dep_str} )"
> -
> -       RDEPEND="${RDEPEND} ${dep_str}"
> -       DEPEND="${DEPEND} ${dep_str}"
> -       unset dep_str
> -done
> +RDEPEND=${PYTHON_DEPS}
> +DEPEND=${PYTHON_DEPS}
>
>  _PACKAGE_SPECIFIC_S="${S#${WORKDIR}/}"
>
> diff --git a/gx86/eclass/python-r1.eclass b/gx86/eclass/python-r1.eclass
> index 18f9246..957db68 100644
> --- a/gx86/eclass/python-r1.eclass
> +++ b/gx86/eclass/python-r1.eclass
> @@ -40,14 +40,45 @@ _PYTHON_ALL_IMPLS=(
>  # a package supports. It must be set before the `inherit' call.
>  # The default is to enable all implementations.
>  #
> -# PYTHON_COMPAT can be either a scalar or an array. If it's a scalar, the 
> eclass
> -# will implicitly convert it to an array.
> +# PYTHON_COMPAT can be either a scalar or an array. If it's a scalar,
> +# the eclass will implicitly convert it to an array.
>  : ${PYTHON_COMPAT:=${_PYTHON_ALL_IMPLS[@]}}
>
> +# @ECLASS-VARIABLE: PYTHON_DEPS
> +# @DESCRIPTION:
> +# This is an eclass-generated Python dependency string for all
> +# implementations listed in PYTHON_COMPAT. It should be used
> +# in RDEPEND and/or DEPEND like:
> +#
> +# @CODE
> +# RDEPEND="${PYTHON_DEPS}
> +#   dev-foo/mydep"
> +# DEPEND="${RDEPEND}"
> +# @CODE
> +
>  PYTHON_COMPAT=( ${PYTHON_COMPAT[@]} )
>
>  _python_set_globals() {
>         IUSE=${PYTHON_COMPAT[@]/#/python_targets_}
>         REQUIRED_USE="|| ( ${IUSE} )"
> +
> +       PYTHON_DEPS=
> +       local i
> +       for i in ${PYTHON_COMPAT[@]}; do
> +               local d
> +               case ${i} in
> +                       python*)
> +                               d='dev-lang/python';;
> +                       jython*)
> +                               d='dev-java/jython';;
> +                       pypy*)
> +                               d='dev-python/pypy';;
> +                       *)
> +                               die "Invalid implementation: ${i}"
> +               esac
> +
> +               local v=${i##*[a-z]}
> +               PYTHON_DEPS+=" python_targets_${i}? ( ${d}:${v/_/.} )"
> +       done
>  }
>  _python_set_globals
> --
> 1.7.12
>
>

This patchset looks good to me.

-- 
Cheers,

Ben | yngwin
Gentoo developer
Gentoo Qt project lead, Gentoo Wiki admin

Reply via email to