diff options
author | koobs <koobs@FreeBSD.org> | 2015-09-14 16:28:57 +0800 |
---|---|---|
committer | koobs <koobs@FreeBSD.org> | 2015-09-14 16:28:57 +0800 |
commit | 53a33117f1e0d0cc7f0a27cb3c58dfd31f4097df (patch) | |
tree | b25d0c3007c1eecfb9174ce960b03e58e9cc6894 | |
parent | 3eef22d49096fffd47d447a0a92df7bffbad5349 (diff) | |
download | freebsd-ports-gnome-53a33117f1e0d0cc7f0a27cb3c58dfd31f4097df.tar.gz freebsd-ports-gnome-53a33117f1e0d0cc7f0a27cb3c58dfd31f4097df.tar.zst freebsd-ports-gnome-53a33117f1e0d0cc7f0a27cb3c58dfd31f4097df.zip |
Uses/python.mk: Fix PYTHON_REL for pre-release Python versions
Modify the PYTHON_REL variable assignment in python.mk so that it
can support PORTVERSION's that have non-integer suffixes such as
the current lang/python35 version (PORTVERSION currently 3.5.0.r3).
Currently, ports that use PYTHON_REL while DEFAULT_VERSIONS is set to
3.5, fail to build with the following make error:
make: "/usr/ports/Mk/Uses/python.mk" line 503:
warning: String comparison operator should be either == or !=
make: "/usr/ports/Mk/Uses/python.mk" line 503:
Malformed conditional (${PYTHON_REL} >= 3200 && defined(_PYTHON_FEATURE_PY3KPLIST))
This is caused by a non-integer value ("r3") in PYTHON_REL.
While I'm here, add a comment block to be clear on what we
(currently) want to achieve.
PR: 203093
Reported by: Andrew Berg (aberg010 my.hennepintech.edu)
Reviewed by: antoine
MFH: 2015Q3
Differential Revision: https://reviews.freebsd.org/D3662
-rw-r--r-- | Mk/Uses/python.mk | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Mk/Uses/python.mk b/Mk/Uses/python.mk index 49f94e493913..4b960386805e 100644 --- a/Mk/Uses/python.mk +++ b/Mk/Uses/python.mk @@ -383,7 +383,11 @@ PYTHON_REL= # empty PYTHON_ABIVER= # empty PYTHON_PORTSDIR= ${_PYTHON_RELPORTDIR}${PYTHON_SUFFIX} PYTHON_PORTVERSION!= ${MAKE} -V PORTVERSION -C ${PYTHON_PORTSDIR} -PYTHON_REL= ${PYTHON_PORTVERSION:C/\.([0-9]+)$/.0\1/:C/\.0?([0-9][0-9])$/.\1/:S/.//g} +# Create a 4 integer version string, prefixing 0 to the last token if +# it's a single character. Only use the the first 3 tokens of +# PORTVERSION to support pre-release versions (rc3, alpha4, etc) of +# any Python port (lang/pythonXY) +PYTHON_REL= ${PYTHON_PORTVERSION:C/^([0-9]+\.[0-9]+\.[0-9]+).*/\1/:C/\.([0-9]+)$/.0\1/:C/\.0?([0-9][0-9])$/.\1/:S/.//g} # Might be overridden by calling ports PYTHON_CMD?= ${_PYTHON_BASECMD}${_PYTHON_VERSION} |