Index: Mk/Uses/python.mk =================================================================== --- Mk/Uses/python.mk +++ Mk/Uses/python.mk @@ -247,6 +247,24 @@ .endif # COMPAT KNOBS, remove them, once the tree is cleaned +.undef _PY_COMPAT_OLD +# We will reuse USE_PYTHON with a different meaning, so make sure that, while +# we are in the transition phase from USE_PYTHON -> USES=python, it is mapped +# and reassigned correctly +.if defined(USE_PYTHON_BUILD) || defined(USE_PYTHON_RUN) +# old style +_PY_COMPAT_OLD= yes +.elif defined(USE_PYTHON) +.if ${USE_PYTHON} == "yes" +# old style +_PY_COMPAT_OLD= yes +.elif ${USE_PYTHON:C/[-0-9.+]*//} == "" +# old style X.Y, X.Y+, X.Y-, -X.Y, X.Y-Z.A +_PY_COMPAT_OLD= yes +.endif # ${USE_PYTHON} == "yes" ... +.endif # defined(USE_PYTHON_BUILD) || defined(USE_PYTHON_RUN) + +.if defined(_PY_COMPAT_OLD) .if defined(USE_PYTHON) .if ${USE_PYTHON} != "yes" python_ARGS= ${USE_PYTHON} @@ -254,37 +272,47 @@ .elif defined(USE_PYTHON_BUILD) .if ${USE_PYTHON_BUILD} != "yes" python_ARGS= ${USE_PYTHON_BUILD},build +.else +python_ARGS= build .endif .elif defined(USE_PYTHON_RUN) .if ${USE_PYTHON_RUN} != "yes" python_ARGS= ${USE_PYTHON_RUN},run +.else +python_ARGS= run .endif .endif # defined(USE_PYTHON) -.if !defined(PYTHON_FEATURES) -PYTHON_FEATURES= +# Everything passed to python_ARGS, undef USE_PYTHON, since we will reuse +# it with a different meaning below +.undef USE_PYTHON +.endif # defined(_PY_COMPAT_OLD) +.undef _PY_COMPAT_OLD + +.if !defined(USE_PYTHON) +USE_PYTHON= .if defined(USE_PYDISTUTILS) -PYTHON_FEATURES+= distutils +USE_PYTHON+= distutils .endif .if defined(PYDISTUTILS_AUTOPLIST) -PYTHON_FEATURES+= autoplist +USE_PYTHON+= autoplist .endif .if defined(PYTHON_PY3K_PLIST_HACK) -PYTHON_FEATURES+= py3kplist +USE_PYTHON+= py3kplist .endif .if defined(PYTHON_CONCURRENT_INSTALL) -PYTHON_FEATURES+= concurrent +USE_PYTHON+= concurrent .endif .if defined(USE_PYTHON_PREFIX) -PYTHON_FEATURES+= pythonprefix +USE_PYTHON+= pythonprefix .endif .if defined(PYDISTUTILS_NOEGGINFO) -PYTHON_FEATURES+= noegginfo +USE_PYTHON+= noegginfo .endif -.endif # !defined(PYTHON_FEATURES) +.endif # !defined(USE_PYTHON) # COMPAT KNOBS END # Make each individual feature available as _PYTHON_FEATURE_ -.for var in ${PYTHON_FEATURES:S/,/ /g} +.for var in ${USE_PYTHON:S/,/ /g} _PYTHON_FEATURE_${var:tu}= yes .endfor Index: Mk/bsd.sanity.mk =================================================================== --- Mk/bsd.sanity.mk +++ Mk/bsd.sanity.mk @@ -119,10 +119,11 @@ .endif .if defined(USE_PYTHON) -.if ${USE_PYTHON} != "yes" -DEV_WARNING+= "USE_PYTHON is deprecated, please use USES=python:${USE_PYTHON}" +_PYTHON_VAL := ${USE_PYTHON} +.if ${_PYTHON_VAL} != "yes" +DEV_WARNING+= "USE_PYTHON=[version] is deprecated, please use USES=python:${_PYTHON_VAL}" .else -DEV_WARNING+= "USE_PYTHON is deprecated, please use USES=python" +DEV_WARNING+= "USE_PYTHON=yes is deprecated, please use USES=python" .endif .endif .if defined(USE_PYTHON_RUN) @@ -172,12 +173,12 @@ USE_GETTEXT_ALT= USES=gettext USE_SCONS_ALT= USES=scons USE_DRUPAL_ALT= USES=drupal -USE_PYDISTUTILS_ALT= PYTHON_FEATURES=distutils -PYTHON_CONCURRENT_INSTALL_ALT= PYTHON_FEATURES=concurrent -PYDISTUTILS_AUTOPLIST_ALT= PYTHON_FEATURES=autoplist -PYTHON_PY3K_PLIST_HACK_ALT= PYTHON_FEATURES=py3kplist -PYDISTUTILS_NOEGGINFO_ALT= PYTHON_FEATURES=noegginfo -USE_PYTHON_PREFIX_ALT= PYTHON_FEATURES=pythonprefix +USE_PYDISTUTILS_ALT= USE_PYTHON=distutils +PYTHON_CONCURRENT_INSTALL_ALT= USE_PYTHON=concurrent +PYDISTUTILS_AUTOPLIST_ALT= USE_PYTHON=autoplist +PYTHON_PY3K_PLIST_HACK_ALT= USE_PYTHON=py3kplist +PYDISTUTILS_NOEGGINFO_ALT= USE_PYTHON=noegginfo +USE_PYTHON_PREFIX_ALT= USE_PYTHON=pythonprefix PYTHON_PKGNAMESUFFIX_ALT= PYTHON_PKGNAMEPREFIX PYTHON_MASTER_SITES_ALT= MASTER_SITE_PYTHON