summaryrefslogtreecommitdiff
path: root/Mk/Uses/python.mk
diff options
context:
space:
mode:
authorTobias Kortkamp <tobik@FreeBSD.org>2019-04-18 13:16:44 +0000
committerTobias Kortkamp <tobik@FreeBSD.org>2019-04-18 13:16:44 +0000
commitb543464063a89673ed1b1ea08a130c0fcb45f1cc (patch)
treed4b00b4423945b1f2a9a4422bfd89b0d793cb37b /Mk/Uses/python.mk
parentdevel/packr: Update to 2.2.0 (diff)
Mk/Uses/python.mk: Flag unknown USES=python args and unknown USE_PYTHON features
PR: 235901 Approved by: mat Differential Revision: https://reviews.freebsd.org/D19569
Notes
Notes: svn path=/head/; revision=499257
Diffstat (limited to 'Mk/Uses/python.mk')
-rw-r--r--Mk/Uses/python.mk21
1 files changed, 21 insertions, 0 deletions
diff --git a/Mk/Uses/python.mk b/Mk/Uses/python.mk
index 922b526abc41..46abd8403bbb 100644
--- a/Mk/Uses/python.mk
+++ b/Mk/Uses/python.mk
@@ -246,6 +246,20 @@ _PYTHON_PORTBRANCH= 2.7 # ${_PYTHON_VERSIONS:[1]}
_PYTHON_BASECMD= ${LOCALBASE}/bin/python
_PYTHON_RELPORTDIR= lang/python
+# List all valid USE_PYTHON features here
+_VALID_PYTHON_FEATURES= allflavors autoplist concurrent cython cython_run \
+ distutils flavors noegginfo noflavors optsuffix \
+ py3kplist pythonprefix
+_INVALID_PYTHON_FEATURES=
+.for var in ${USE_PYTHON}
+. if empty(_VALID_PYTHON_FEATURES:M${var})
+_INVALID_PYTHON_FEATURES+= ${var}
+. endif
+.endfor
+.if !empty(_INVALID_PYTHON_FEATURES)
+IGNORE= uses unknown USE_PYTHON features: ${_INVALID_PYTHON_FEATURES}
+.endif
+
# Make each individual feature available as _PYTHON_FEATURE_<FEATURENAME>
.for var in ${USE_PYTHON}
_PYTHON_FEATURE_${var:C/=.*$//:tu}= ${var:C/.*=//:S/,/ /g}
@@ -335,6 +349,13 @@ _PYTHON_VERSION_MINIMUM:= ${_PYTHON_VERSION_MINIMUM_TMP:M[1-9].[0-9]}
_PYTHON_VERSION_MAXIMUM_TMP:= ${_PYTHON_VERSION_CHECK:C/.*-([1-9]\.[0-9])/\1/}
_PYTHON_VERSION_MAXIMUM:= ${_PYTHON_VERSION_MAXIMUM_TMP:M[1-9].[0-9]}
+# At this point we should have no argument left in ${_PYTHON_ARGS}
+# except a version spec
+_PYTHON_ARGS:= ${_PYTHON_ARGS:N[1-9].[0-9]-[1-9].[0-9]:N[1-9].[0-9]:N[1-9].[0-9]+:N-[1-9].[0-9]}
+.if !empty(_PYTHON_ARGS)
+IGNORE= uses unknown USES=python arguments: ${_PYTHON_ARGS}
+.endif
+
.undef _PYTHON_VERSION_NONSUPPORTED
.if !empty(_PYTHON_VERSION_MINIMUM) && (${_PYTHON_VERSION} < ${_PYTHON_VERSION_MINIMUM})
_PYTHON_VERSION_NONSUPPORTED= ${_PYTHON_VERSION_MINIMUM} at least