aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKubilay Kocak <koobs@FreeBSD.org>2015-09-29 03:32:27 +0000
committerKubilay Kocak <koobs@FreeBSD.org>2015-09-29 03:32:27 +0000
commit36870aaad269af61f6dde3d64dc698ac69239fda (patch)
tree76c37453df8debba54a2e04a57f87893b5ff7745
parent707766350b6d6d38f4bf24652a2c6e00e2920ce9 (diff)
downloadports-36870aaad269af61f6dde3d64dc698ac69239fda.tar.gz
ports-36870aaad269af61f6dde3d64dc698ac69239fda.zip
MFH: r396885
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 Differential Revision: https://reviews.freebsd.org/D3662 Approved by: portmgr (feld)
Notes
Notes: svn path=/branches/2015Q3/; revision=398153
-rw-r--r--Mk/Uses/python.mk6
1 files changed, 5 insertions, 1 deletions
diff --git a/Mk/Uses/python.mk b/Mk/Uses/python.mk
index e960e5055e80..8243b168b6d1 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}