Re: [gentoo-dev] python-distutils-ng.eclass: allow useflag dependencies for python
On Sat, 08 Sep 2012 15:04:53 +0200 hasufell wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > > Where are your use cases? > > qgrep PYTHON_USE_WITH That gives more cases than your solution can handle... -- Best regards, Michał Górny signature.asc Description: PGP signature
Re: [gentoo-dev] python-distutils-ng.eclass: allow useflag dependencies for python
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 > Where are your use cases? qgrep PYTHON_USE_WITH -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.19 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJQS0J1AAoJEFpvPKfnPDWzktAH/jY5/hfkIv6Gn+mRBg3ROtKh EQ0vAJV3ZXSsIlO7UOxJf79wj1TqiApAhXvUxs5orJKOuCqc3Pfq41KNV/KfyRiS zno/4sSVvgU6udSGx3BScbDIQi6T7bQKquP3FalDw30v2/xDqYdTPFCx+qfRG0Eu erquQOiMs2OzBBzQn95xnjGaWN7Z9QBmkdIS3pC4hB2hIGOQmBEskRCQVtA9mfog wM5war7DpTUsyrcJb67LZy0AeACN42xHJ7KFMkqVYp1WkT7Y04LmWmCjUJfSK7Yt osZ2r/SUpCHQ1cJ5LM5DunboV7j2DZGzyNvCM2N3phnfYbQWAxhWoI4Idc4YzqE= =KICW -END PGP SIGNATURE-
Re: [gentoo-dev] python-distutils-ng.eclass: allow useflag dependencies for python
On Thu, Sep 06, 2012 at 10:44:34PM +0200, hasufell wrote: > I am missing a replacement for PYTHON_USE_WITH. > > Would the attached patch help in any way? Review? Other ideas? > --- python-distutils-ng.eclass > +++ python-distutils-ng.eclass > @@ -59,6 +59,25 @@ > # Set to any value to disable automatic reinstallation of scripts in bin > # directories. See python-distutils-ng_src_install function. > > +# @ECLASS-VARIABLE: PYTHON_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# comma seperated list of useflags needed for python > +# this is directly substituted into dev-lang/python[${PYTHON_USE}] thus > allowing > +# all valid useflag dependencies > +# example 1: PYTHON_USE="xml,sqlite" > +# example 2: PYTHON_USE="xml?,threads?,-foo" > + > +# @ECLASS-VARIABLE: JYTHON_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# same as PYTHON_USE just for JYTHON > + > +# @ECLASS-VARIABLE: PYPY_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# same as PYTHON_USE just for PYPY > + > EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install > > case "${EAPI}" in > @@ -107,16 +126,22 @@ > fi > unset required_use_str > > +# avoid empty use deps > +[[ -n ${PYTHON_USE} ]] && _PYTHON_USE="[${PYTHON_USE}]" || _PYTHON_USE="" > +[[ -n ${JYTHON_USE} ]] && _JYTHON_USE="[${JYTHON_USE}]" || _JYTHON_USE="" > +[[ -n ${PYPY_USE} ]] && _PYPY_USE="[${PYPY_USE}]" || _PYPY_USE="" Ick. _PYTHON_USE="${PYTHON_USE:+[${PYTHON_USE}]}" _JYTHON_USE="${JYTHON_USE:+[${JYTHON_USE}]}" _PYPY_USE="${PYPY_USE:+[${PYPY_USE}]}" > + > +# set python DEPEND and RDEPEND > for impl in ${PYTHON_COMPAT}; do > IUSE+=" python_targets_${impl}" > dep_str="${impl/_/.}" > case "${dep_str}" in > python?.?) > - dep_str="dev-lang/python:${dep_str: -3}" ;; > + dep_str="dev-lang/python:${dep_str: -3}${_PYTHON_USE}" > ;; should I ask wth the space is for? > jython?.?) > - dep_str="dev-java/jython:${dep_str: -3}" ;; > + dep_str="dev-java/jython:${dep_str: -3}${_JYTHON_USE}" > ;; > pypy?.?) > - dep_str="dev-python/pypy:${dep_str: -3}" ;; > + dep_str="dev-python/pypy:${dep_str: -3}${_PYPY_USE}" ;; > *) > die "Unsupported implementation: ${impl}" ;; > esac
Re: [gentoo-dev] python-distutils-ng.eclass: allow useflag dependencies for python
On Thu, 06 Sep 2012 22:44:34 +0200 hasufell wrote: > --- python-distutils-ng.eclass > +++ python-distutils-ng.eclass > @@ -59,6 +59,25 @@ > # Set to any value to disable automatic reinstallation of scripts in > bin # directories. See python-distutils-ng_src_install function. > > +# @ECLASS-VARIABLE: PYTHON_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# comma seperated list of useflags needed for python > +# this is directly substituted into dev-lang/python[${PYTHON_USE}] > thus allowing +# all valid useflag dependencies > +# example 1: PYTHON_USE="xml,sqlite" > +# example 2: PYTHON_USE="xml?,threads?,-foo" > + > +# @ECLASS-VARIABLE: JYTHON_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# same as PYTHON_USE just for JYTHON > + > +# @ECLASS-VARIABLE: PYPY_USE > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# same as PYTHON_USE just for PYPY > + Why I feel like we're close to PYTHON2_USE, PYTHON3_USE, PYTHON3NG_USE... > EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test > src_install > case "${EAPI}" in > @@ -107,16 +126,22 @@ > fi > unset required_use_str > > +# avoid empty use deps > +[[ -n ${PYTHON_USE} ]] && _PYTHON_USE="[${PYTHON_USE}]" || > _PYTHON_USE="" +[[ -n ${JYTHON_USE} ]] && > _JYTHON_USE="[${JYTHON_USE}]" || _JYTHON_USE="" +[[ -n ${PYPY_USE} ]] > && _PYPY_USE="[${PYPY_USE}]" || _PYPY_USE="" + > +# set python DEPEND and RDEPEND > for impl in ${PYTHON_COMPAT}; do > IUSE+=" python_targets_${impl}" > dep_str="${impl/_/.}" > case "${dep_str}" in > python?.?) > - dep_str="dev-lang/python:${dep_str: -3}" ;; > + dep_str="dev-lang/python:${dep_str: > -3}${_PYTHON_USE}" ;; jython?.?) > - dep_str="dev-java/jython:${dep_str: -3}" ;; > + dep_str="dev-java/jython:${dep_str: > -3}${_JYTHON_USE}" ;; pypy?.?) > - dep_str="dev-python/pypy:${dep_str: -3}" ;; > + dep_str="dev-python/pypy:${dep_str: > -3}${_PYPY_USE}" ;; *) > die "Unsupported implementation: ${impl}" ;; > esac I have to think more about this. Where are your use cases? -- Best regards, Michał Górny signature.asc Description: PGP signature
[gentoo-dev] python-distutils-ng.eclass: allow useflag dependencies for python
I am missing a replacement for PYTHON_USE_WITH. Would the attached patch help in any way? Review? Other ideas? --- python-distutils-ng.eclass +++ python-distutils-ng.eclass @@ -59,6 +59,25 @@ # Set to any value to disable automatic reinstallation of scripts in bin # directories. See python-distutils-ng_src_install function. +# @ECLASS-VARIABLE: PYTHON_USE +# @DEFAULT_UNSET +# @DESCRIPTION: +# comma seperated list of useflags needed for python +# this is directly substituted into dev-lang/python[${PYTHON_USE}] thus allowing +# all valid useflag dependencies +# example 1: PYTHON_USE="xml,sqlite" +# example 2: PYTHON_USE="xml?,threads?,-foo" + +# @ECLASS-VARIABLE: JYTHON_USE +# @DEFAULT_UNSET +# @DESCRIPTION: +# same as PYTHON_USE just for JYTHON + +# @ECLASS-VARIABLE: PYPY_USE +# @DEFAULT_UNSET +# @DESCRIPTION: +# same as PYTHON_USE just for PYPY + EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install case "${EAPI}" in @@ -107,16 +126,22 @@ fi unset required_use_str +# avoid empty use deps +[[ -n ${PYTHON_USE} ]] && _PYTHON_USE="[${PYTHON_USE}]" || _PYTHON_USE="" +[[ -n ${JYTHON_USE} ]] && _JYTHON_USE="[${JYTHON_USE}]" || _JYTHON_USE="" +[[ -n ${PYPY_USE} ]] && _PYPY_USE="[${PYPY_USE}]" || _PYPY_USE="" + +# set python DEPEND and RDEPEND for impl in ${PYTHON_COMPAT}; do IUSE+=" python_targets_${impl}" dep_str="${impl/_/.}" case "${dep_str}" in python?.?) - dep_str="dev-lang/python:${dep_str: -3}" ;; + dep_str="dev-lang/python:${dep_str: -3}${_PYTHON_USE}" ;; jython?.?) - dep_str="dev-java/jython:${dep_str: -3}" ;; + dep_str="dev-java/jython:${dep_str: -3}${_JYTHON_USE}" ;; pypy?.?) - dep_str="dev-python/pypy:${dep_str: -3}" ;; + dep_str="dev-python/pypy:${dep_str: -3}${_PYPY_USE}" ;; *) die "Unsupported implementation: ${impl}" ;; esac