Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F141979402
D8069.id21102.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
26 KB
Referenced Files
None
Subscribers
None
D8069.id21102.diff
View Options
Index: Mk/Uses/kde.mk
===================================================================
--- Mk/Uses/kde.mk
+++ Mk/Uses/kde.mk
@@ -102,11 +102,10 @@
# === HANDLE PYTHON ============================================================
# TODO: Keep in sync with cmake/modules/PythonMacros.cmake
-_PYTHON_SHORT_VER= ${PYTHON_VERSION:S/^python//:S/.//}
-. if ${_PYTHON_SHORT_VER} > 31
+. if ${PYTHON_SUFFIX} > 31
PLIST_SUB+= PYCACHE="__pycache__/" \
- PYC_SUFFIX=cpython-${_PYTHON_SHORT_VER}.pyc \
- PYO_SUFFIX=cpython-${_PYTHON_SHORT_VER}.pyo
+ PYC_SUFFIX=cpython-${PYTHON_SUFFIX}.pyc \
+ PYO_SUFFIX=cpython-${PYTHON_SUFFIX}.pyo
. else
PLIST_SUB+= PYCACHE="" \
PYC_SUFFIX=pyc \
Index: Mk/Uses/python.mk
===================================================================
--- Mk/Uses/python.mk
+++ Mk/Uses/python.mk
@@ -6,7 +6,7 @@
#
# Feature: python
# Usage: USES=python or USES=python:args
-# Valid ARGS: <version>, build, run, test
+# Valid ARGS: <version>, <implementation>, build, run, test
#
# version If your port requires only some set of Python versions, you
# can set this to [min]-[max] or min+ or -max or as an
@@ -22,6 +22,12 @@
# USES=python # Use the set default Python
# # version
#
+# implementation If your port requires a specific Python implementation, you
+# can specify this:
+#
+# USES=python:cpython # lang/python
+# USES=python:pypy # lang/pypy
+#
# build Indicates that Python is needed at build time and adds
# it to BUILD_DEPENDS.
# run Indicates that Python is needed at run time and adds
@@ -128,7 +134,7 @@
#
# PYDISTUTILS_INSTALLARGS
# - Arguments to install with distutils.
-# default: -c -O1 --prefix=${PREFIX} --single-version-externally-managed --root=${STAGEDIR}
+# default: -c -O1 --prefix=${PYTHONPREFIX} --single-version-externally-managed --root=${STAGEDIR}
#
# PYDISTUTILS_EGGINFO
# - Canonical name for egg-info.
@@ -188,7 +194,7 @@
# packages for different Python versions.
# default: py${PYTHON_SUFFIX}-
#
-# Using USES=python.mk also will add some useful entries to PLIST_SUB:
+# Using USES=python also will add some useful entries to PLIST_SUB:
#
# PYTHON_INCLUDEDIR=${PYTHONPREFIX_INCLUDEDIR:S;${PREFIX}/;;}
# PYTHON_LIBDIR=${PYTHONPREFIX_LIBDIR:S;${PREFIX}/;;}
@@ -219,14 +225,6 @@
.if !defined(_INCLUDE_USES_PYTHON_MK)
_INCLUDE_USES_PYTHON_MK= yes
-# What Python version and what Python interpreters are currently supported?
-# When adding a version, please keep the comment in
-# Mk/bsd.default-versions.mk in sync.
-_PYTHON_VERSIONS= 2.7 3.4 3.5 3.3 # preferred first
-_PYTHON_PORTBRANCH= 2.7 # ${_PYTHON_VERSIONS:[1]}
-_PYTHON_BASECMD= ${LOCALBASE}/bin/python
-_PYTHON_RELPORTDIR= lang/python
-
# Make each individual feature available as _PYTHON_FEATURE_<FEATURENAME>
.for var in ${USE_PYTHON}
_PYTHON_FEATURE_${var:tu}= yes
@@ -250,6 +248,13 @@
_PYTHON_TEST_DEP= yes
_PYTHON_ARGS:= ${_PYTHON_ARGS:Ntest}
.endif
+.undef _PYTHON_IMPL
+.for impl in cpython pypy
+. if ${_PYTHON_ARGS:M${impl}}
+_PYTHON_IMPL+= ${impl}
+_PYTHON_ARGS:= ${_PYTHON_ARGS:N${impl}}
+. endif
+.endfor
# The port does not specify a build, run or test dependency, assume all are
# required.
@@ -260,6 +265,20 @@
_PYTHON_TEST_DEP= yes
.endif
+.for var in PYTHON_DEFAULT_VERSION PYTHON2_DEFAULT_VERSION PYTHON3_DEFAULT_VERSION PYTHON_DEFAULT PYTHON2_DEFAULT PYTHON3_DEFAULT
+. if defined(${var})
+cleanvar:= ${${var}}
+. if ${cleanvar:C/^([a-z]*).*/\1/} == ""
+cleanvar:= cpython${cleanvar}
+. endif
+cleanvar:= ${cleanvar:S/^python/cpython/}
+. if ${cleanvar} != ${${var}}
+WARNING+= "Converting ${var}=${${var}} to ${var}=${cleanvar}"
+${var}:= ${cleanvar}
+. endif
+. endif
+.endfor
+
.if defined(PYTHON_DEFAULT_VERSION)
WARNING+= "PYTHON_DEFAULT_VERSION is defined, consider using DEFAULT_VERSIONS=python=${PYTHON_DEFAULT_VERSION:S/^python//} instead"
.endif
@@ -271,41 +290,41 @@
.endif
.if exists(${LOCALBASE}/bin/python)
-.if !defined(_PYTHON_DEFAULT_VERSION)
+. if !defined(_PYTHON_DEFAULT_VERSION)
_PYTHON_DEFAULT_VERSION!= (${LOCALBASE}/bin/python -c \
- 'import sys; print("%d.%d" % sys.version_info[:2])' 2> /dev/null \
- || ${ECHO_CMD} ${_PYTHON_PORTBRANCH}) | ${TAIL} -1
-.endif
+ 'import platform, sys; print("%s%d.%d" % ((platform.python_implementation().lower(),) + sys.version_info[:2]))' 2> /dev/null \
+ || ${ECHO_CMD} ${PYTHON_DEFAULT}) | ${TAIL} -1
+. endif
_EXPORTED_VARS+= _PYTHON_DEFAULT_VERSION
-.if defined(PYTHON_DEFAULT) && (${PYTHON_DEFAULT} != ${_PYTHON_DEFAULT_VERSION})
+. if defined(PYTHON_DEFAULT) && (${PYTHON_DEFAULT} != ${_PYTHON_DEFAULT_VERSION})
WARNING+= "Your requested default python version ${PYTHON_DEFAULT} is different from the installed default python interpreter version ${_PYTHON_DEFAULT_VERSION}"
-.endif
-PYTHON_DEFAULT_VERSION= python${_PYTHON_DEFAULT_VERSION}
+. endif
+PYTHON_DEFAULT_VERSION= ${_PYTHON_DEFAULT_VERSION}
.else
-PYTHON_DEFAULT_VERSION= python${PYTHON_DEFAULT}
+PYTHON_DEFAULT_VERSION= ${PYTHON_DEFAULT}
.endif # exists(${LOCALBASE}/bin/python)
# Is only a meta-port version defined?
-.if ${PYTHON_DEFAULT_VERSION} == "python2"
-PYTHON2_DEFAULT_VERSION?= python${PYTHON2_DEFAULT}
-.elif ${PYTHON_DEFAULT_VERSION:R} == "python2"
+.if ${PYTHON_DEFAULT_VERSION:C/^[a-z]+//} == "2"
+PYTHON2_DEFAULT_VERSION?= ${PYTHON2_DEFAULT}
+.elif ${PYTHON_DEFAULT_VERSION:R:C/^[a-z]+//} == "2"
PYTHON2_DEFAULT_VERSION= ${PYTHON_DEFAULT_VERSION}
.else
-PYTHON2_DEFAULT_VERSION?= python${PYTHON2_DEFAULT}
+PYTHON2_DEFAULT_VERSION?= ${PYTHON2_DEFAULT}
.endif
-.if ${PYTHON_DEFAULT_VERSION} == "python3"
-PYTHON3_DEFAULT_VERSION?= python${PYTHON3_DEFAULT}
-.elif ${PYTHON_DEFAULT_VERSION:R} == "python3"
+.if ${PYTHON_DEFAULT_VERSION:C/^[a-z]+//} == "3"
+PYTHON3_DEFAULT_VERSION?= ${PYTHON3_DEFAULT}
+.elif ${PYTHON_DEFAULT_VERSION:R:C/^[a-z]+//} == "3"
PYTHON3_DEFAULT_VERSION= ${PYTHON_DEFAULT_VERSION}
.else
-PYTHON3_DEFAULT_VERSION?= python${PYTHON3_DEFAULT}
+PYTHON3_DEFAULT_VERSION?= ${PYTHON3_DEFAULT}
.endif
.if ${_PYTHON_ARGS} == "2"
-_PYTHON_ARGS= ${PYTHON2_DEFAULT_VERSION:S/^python//}
+_PYTHON_ARGS= ${PYTHON2_DEFAULT_VERSION:C/^[a-z]+//}
_WANTS_META_PORT= 2
.elif ${_PYTHON_ARGS} == "3"
-_PYTHON_ARGS= ${PYTHON3_DEFAULT_VERSION:S/^python//}
+_PYTHON_ARGS= ${PYTHON3_DEFAULT_VERSION:C/^[a-z]+//}
_WANTS_META_PORT= 3
.endif # ${_PYTHON_ARGS} == "2"
@@ -325,11 +344,44 @@
# that maintainers know what they are doing and assume PYTHON_VERSION to be a
# hint. Just warn maintainers, if the versions do not match
# (_PYTHON_VERSION_NONSUPPORTED).
-_PYTHON_VERSION:= ${PYTHON_VERSION:S/^python//}
+_PYTHON_VERSION:= ${PYTHON_VERSION:C/^[a-z]+//}
+_PYTHON_VERSION_IMPL= ${PYTHON_VERSION:C/^([a-z]+).*/\1/}
+. if defined(_PYTHON_IMPL) && ${_PYTHON_IMPL} != ${_PYTHON_VERSION_IMPL}
+IGNORE= "needs Python implementation ${_PYTHON_VERSION_IMPL}. But a port depending on this one specified ${_PYTHON_IMPL}"
+. else
+_PYTHON_IMPL= ${_PYTHON_VERSION_IMPL}
+. endif
.else
-_PYTHON_VERSION:= ${PYTHON_DEFAULT_VERSION:S/^python//}
+_PYTHON_VERSION:= ${PYTHON_DEFAULT_VERSION:C/^[a-z]+//}
+_PYTHON_IMPL?= ${PYTHON_DEFAULT_VERSION:C/^([a-z]+).*/\1/}
.endif # defined(PYTHON_VERSION)
+.if ${_PYTHON_IMPL} == cpython
+_PYTHON_BINNAME= python
+_PYTHON_SHORTNAME= py
+_PYTHON_VERSIONS= 2.7 3.4 3.5 3.3 # preferred first
+
+PYTHON_PORTSDIR= lang/python${PYTHON_SUFFIX}
+PYTHON_CMD?= ${LOCALBASE}/bin/python${PYTHON_VER}
+
+PYTHON_INCLUDEDIR= ${PYTHONBASE}/include/python${_PYTHON_VERSION}${PYTHON_ABIVER}
+PYTHON_LIBDIR= ${PYTHONBASE}/lib/python${_PYTHON_VERSION}
+PYTHON_SITELIBDIR= ${PYTHON_LIBDIR}/site-packages
+.elif ${_PYTHON_IMPL} == pypy
+_PYTHON_BINNAME= pypy
+_PYTHON_SHORTNAME= pypy
+_PYTHON_VERSIONS= 2.7 3.3 # preferred first
+
+PYTHON_PORTSDIR= lang/pypy${PYTHON_SUFFIX:C/(.).*/\1/:S/2//}
+PYTHON_CMD?= ${LOCALBASE}/bin/pypy${PYTHON_SUFFIX:C/(.).*/\1/:S/2//}
+
+PYTHON_INCLUDEDIR= ${PYTHONBASE}/include
+PYTHON_LIBDIR= ${PYTHONBASE}/bin
+PYTHON_SITELIBDIR= ${PYTHONBASE}/site-packages
+.else
+IGNORE= "needs an unsupported implementation of Python"
+.endif # ${_PYTHON_IMPL}
+
# Validate Python version whether it meets the version restriction.
_PYTHON_VERSION_CHECK:= ${_PYTHON_ARGS:C/^([1-9]\.[0-9])$/\1-\1/}
_PYTHON_VERSION_MINIMUM_TMP:= ${_PYTHON_VERSION_CHECK:C/([1-9]\.[0-9])[-+].*/\1/}
@@ -342,35 +394,50 @@
_PYTHON_VERSION_NONSUPPORTED= ${_PYTHON_VERSION_MINIMUM} at least
.elif !empty(_PYTHON_VERSION_MAXIMUM) && (${_PYTHON_VERSION} > ${_PYTHON_VERSION_MAXIMUM})
_PYTHON_VERSION_NONSUPPORTED= ${_PYTHON_VERSION_MAXIMUM} at most
+.else
+. undef _PYTHON_VERSION_SUPPORTED
+. for supported_ver in ${_PYTHON_VERSIONS}
+. if ${supported_ver} == ${_PYTHON_VERSIONS}
+_PYTHON_VERSION_SUPPORTED= yes
+. endif
+. endfor
+. if !defined(_PYTHON_VERSION_SUPPORTED)
+_PYTHON_VERSION_NONSUPPORTED= ${_PYTHON_VERSIONS} (unsupported)
+. endif
+. undef _PYTHON_VERSION_SUPPORTED
.endif
# If we have an unsupported version of Python, try another.
.if defined(_PYTHON_VERSION_NONSUPPORTED)
-.if defined(PYTHON_VERSION) || defined(PYTHON_CMD)
+. if defined(PYTHON_VERSION) || defined(PYTHON_CMD)
_PV:= ${_PYTHON_VERSION} # preserve the specified python version
WARNING+= "needs Python ${_PYTHON_VERSION_NONSUPPORTED}. But a port depending on this one specified ${_PV}"
-.endif # defined(PYTHON_VERSION) || defined(PYTHON_CMD)
-.undef _PYTHON_VERSION
-.for ver in ${PYTHON2_DEFAULT} ${PYTHON3_DEFAULT} ${_PYTHON_VERSIONS}
-__VER= ${ver}
-.if !defined(_PYTHON_VERSION) && \
+. endif # defined(PYTHON_VERSION) || defined(PYTHON_CMD)
+. undef _PYTHON_VERSION
+. for ver in ${PYTHON_DEFAULT:C/^[a-z]+//} ${PYTHON2_DEFAULT:C/^[a-z]+//} ${PYTHON3_DEFAULT:C/^[a-z]+//} ${_PYTHON_VERSIONS}
+. if !defined(_PYTHON_VERSION) && \
!(!empty(_PYTHON_VERSION_MINIMUM) && ( \
- ${__VER} < ${_PYTHON_VERSION_MINIMUM})) && \
+ ${ver} < ${_PYTHON_VERSION_MINIMUM})) && \
!(!empty(_PYTHON_VERSION_MAXIMUM) && ( \
- ${__VER} > ${_PYTHON_VERSION_MAXIMUM}))
-_PYTHON_VERSION= ${ver}
-.endif
-.endfor
-.if !defined(_PYTHON_VERSION)
+ ${ver} > ${_PYTHON_VERSION_MAXIMUM}))
+. for supported_ver in ${_PYTHON_VERSIONS}
+. if !defined(_PYTHON_VERSION) && ${supported_ver} == ${ver}
+_PYTHON_VERSION:= ${ver}
+_PYTHON_DEBUG:= ${_PYTHON_VERSIONS}
+. endif
+. endfor
+. endif
+. endfor
+. if !defined(_PYTHON_VERSION)
IGNORE= needs an unsupported version of Python
-.endif
+. endif
.endif # defined(_PYTHON_VERSION_NONSUPPORTED)
# Pass PYTHON_VERSION down the dependency chain. This ensures that
# port A -> B -> C all will use the same python version and do not
# try to find a different one, if the passed version fits into
# the supported version range.
-PYTHON_VERSION?= python${_PYTHON_VERSION}
+PYTHON_VERSION?= ${_PYTHON_IMPL}${_PYTHON_VERSION}
.if !defined(PYTHON_NO_DEPENDS)
DEPENDS_ARGS+= PYTHON_VERSION=${PYTHON_VERSION}
.endif
@@ -378,8 +445,8 @@
# NOTE:
#
# PYTHON_VERSION will hold whatever is passed down the dependency chain.
-# If a user runs `make PYTHON_VERSION=python3.3, PYTHON_VERSION will be
-# set to 'python3.3'. A port however may require a different version,
+# If a user runs `make PYTHON_VERSION=cpython3.3, PYTHON_VERSION will be
+# set to 'cpython3.3'. A port however may require a different version,
# which is stored (above) in _PYTHON_VERSION.
# Every python bit below hence should use python${_PYTHON_VERSION}, since
# this is the value, the _port_ requires
@@ -391,9 +458,9 @@
PYTHON_MAJOR_VER= ${PYTHON_VER:R}
PYTHON_REL= # empty
PYTHON_ABIVER= # empty
-PYTHON_PORTSDIR= ${_PYTHON_RELPORTDIR}${PYTHON_SUFFIX}
+
# Protect partial checkouts from Mk/Scripts/functions.sh:export_ports_env().
-.if !defined(_PORTS_ENV_CHECK) || exists(${PORTSDIR}/${PYTHON_PORTSDIR})
+.if (!defined(_PORTS_ENV_CHECK) || exists(${PORTSDIR}/${PYTHON_PORTSDIR}/Makefile.version)) && defined(PYTHON_PORTSDIR)
.include "${PORTSDIR}/${PYTHON_PORTSDIR}/Makefile.version"
.endif
# Create a 4 integer version string, prefixing 0 to the last token if
@@ -403,7 +470,6 @@
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}
.if ${PYTHON_VER} != 2.7
.if exists(${PYTHON_CMD}-config)
PYTHON_ABIVER!= ${PYTHON_CMD}-config --abiflags
@@ -419,16 +485,14 @@
.endif
_EXPORTED_VARS+= PYTHONBASE
-PYTHON_INCLUDEDIR= ${PYTHONBASE}/include/python${_PYTHON_VERSION}${PYTHON_ABIVER}
-PYTHON_LIBDIR= ${PYTHONBASE}/lib/python${_PYTHON_VERSION}
PYTHON_PLATFORM= ${OPSYS:tl}${OSREL:C/\.[0-9.]*//}
-PYTHON_SITELIBDIR= ${PYTHON_LIBDIR}/site-packages
-PYTHON_PKGNAMEPREFIX= py${PYTHON_SUFFIX}-
-PYTHON_PKGNAMESUFFIX= -py${PYTHON_SUFFIX}
+PYTHON_PKGNAMEPREFIX= ${_PYTHON_SHORTNAME}${PYTHON_SUFFIX}-
+PYTHON_PKGNAMESUFFIX= -${_PYTHON_SHORTNAME}${PYTHON_SUFFIX}
-PYTHONPREFIX_INCLUDEDIR= ${PYTHON_INCLUDEDIR:S;${PYTHONBASE};${PREFIX};}
-PYTHONPREFIX_LIBDIR= ${PYTHON_LIBDIR:S;${PYTHONBASE};${PREFIX};}
-PYTHONPREFIX_SITELIBDIR= ${PYTHON_SITELIBDIR:S;${PYTHONBASE};${PREFIX};}
+PYTHONPREFIX= ${PYTHONBASE:S;${LOCALBASE};${PREFIX};}
+PYTHONPREFIX_INCLUDEDIR= ${PYTHON_INCLUDEDIR:S;${LOCALBASE};${PREFIX};}
+PYTHONPREFIX_LIBDIR= ${PYTHON_LIBDIR:S;${LOCALBASE};${PREFIX};}
+PYTHONPREFIX_SITELIBDIR= ${PYTHON_SITELIBDIR:S;${LOCALBASE};${PREFIX};}
# Used for recording the installed files.
_PYTHONPKGLIST= ${WRKDIR}/.PLIST.pymodtmp
@@ -469,8 +533,8 @@
_CURRENTPORT:= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}
.if defined(_PYTHON_FEATURE_DISTUTILS) && \
${_CURRENTPORT:S/${PYTHON_SUFFIX}$//} != ${PYTHON_PKGNAMEPREFIX}setuptools
-BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools${PYTHON_SUFFIX}>0:devel/py-setuptools${PYTHON_SUFFIX}
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools${PYTHON_SUFFIX}>0:devel/py-setuptools${PYTHON_SUFFIX}
+BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools${PYTHON_SUFFIX}>0:devel/${_PYTHON_SHORTNAME}-setuptools${PYTHON_SUFFIX}
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools${PYTHON_SUFFIX}>0:devel/${_PYTHON_SHORTNAME}-setuptools${PYTHON_SUFFIX}
.endif
# distutils support
@@ -481,7 +545,7 @@
exec(compile(open(__file__, 'rb').read().replace(b'\\r\\n', b'\\n'), __file__, 'exec'))"
PYDISTUTILS_CONFIGUREARGS?= # empty
PYDISTUTILS_BUILDARGS?= # empty
-PYDISTUTILS_INSTALLARGS?= -c -O1 --prefix=${PREFIX}
+PYDISTUTILS_INSTALLARGS?= -c -O1 --prefix=${PYTHONPREFIX}
.if defined(_PYTHON_FEATURE_DISTUTILS)
. if !defined(PYDISTUTILS_INSTALLNOSINGLE)
PYDISTUTILS_INSTALLARGS+= --single-version-externally-managed
@@ -564,19 +628,19 @@
.if defined(_PYTHON_BUILD_DEP)
BUILD_DEPENDS+= ${PYTHON_CMD}:${PYTHON_PORTSDIR}
.if defined(_WANTS_META_PORT)
-BUILD_DEPENDS+= python${_WANTS_META_PORT}:${_PYTHON_RELPORTDIR}${_WANTS_META_PORT}
+BUILD_DEPENDS+= python${_WANTS_META_PORT}:lang/python${_WANTS_META_PORT}}
.endif
.endif
.if defined(_PYTHON_RUN_DEP)
RUN_DEPENDS+= ${PYTHON_CMD}:${PYTHON_PORTSDIR}
.if defined(_WANTS_META_PORT)
-RUN_DEPENDS+= python${_WANTS_META_PORT}:${_PYTHON_RELPORTDIR}${_WANTS_META_PORT}
+RUN_DEPENDS+= python${_WANTS_META_PORT}:lang/python${_WANTS_META_PORT}}
.endif
.endif
.if defined(_PYTHON_TEST_DEP)
TEST_DEPENDS+= ${PYTHON_CMD}:${PYTHON_PORTSDIR}
.if defined(_WANTS_META_PORT)
-TEST_DEPENDS+= python${_WANTS_META_PORT}:${_PYTHON_RELPORTDIR}${_WANTS_META_PORT}
+TEST_DEPENDS+= python${_WANTS_META_PORT}:lang/python${_WANTS_META_PORT}}
.endif
.endif
@@ -593,7 +657,7 @@
PYTHON_PLATFORM=${PYTHON_PLATFORM} \
PYTHON_SITELIBDIR=${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;} \
PYTHON_VER=${PYTHON_VER} \
- PYTHON_VERSION=python${_PYTHON_VERSION}
+ PYTHON_VERSION=${PYTHON_VERSION}
_USES_POST+= python
.endif # _INCLUDE_USES_PYTHON_MK
Index: Mk/Uses/zope.mk
===================================================================
--- Mk/Uses/zope.mk
+++ Mk/Uses/zope.mk
@@ -19,7 +19,7 @@
_ZOPE_PORTBRANCH= 2.13
_ZOPE_ALLBRANCHES= 2.13
-_PYTHON_VER_REQUIRED= python2.7
+_PYTHON_VER_REQUIRED= cpython2.7
.if defined(ZOPE_VERSION)
_ZOPE_VERSION:= ${ZOPE_VERSION}
Index: Mk/bsd.default-versions.mk
===================================================================
--- Mk/bsd.default-versions.mk
+++ Mk/bsd.default-versions.mk
@@ -61,12 +61,12 @@
PGSQL_DEFAULT?= 9.3
# Possible values: 5.5, 5.6, 7.0
PHP_DEFAULT?= 5.6
-# Possible values: 2.7, 3.3, 3.4, 3.5
-PYTHON_DEFAULT?= 2.7
-# Possible values: 2.7
-PYTHON2_DEFAULT?= 2.7
-# Possible values: 3.3, 3.4, 3.5
-PYTHON3_DEFAULT?= 3.4
+# Possible values: cpython2.7, cpython3.3, cpython3.4, cpython3.5, pypy2.7 pypy3.3
+PYTHON_DEFAULT?= cpython2.7
+# Possible values: cpython2.7, pypy2.7
+PYTHON2_DEFAULT?= cpython2.7
+# Possible values: cpython3.3, cpython3.4, cpython3.5, pypy2.7 pypy3.3
+PYTHON3_DEFAULT?= cpython3.3
# Possible values: 2.0, 2.1, 2.2, 2.3
RUBY_DEFAULT?= 2.2
# Possible values: base, openssl, openssl-devel, libressl, libressl-devel
Index: databases/py33-gdbm/Makefile
===================================================================
--- databases/py33-gdbm/Makefile
+++ databases/py33-gdbm/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-gdbm
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= cpython3.3
.include "${MASTERDIR}/Makefile"
Index: databases/py33-sqlite3/Makefile
===================================================================
--- databases/py33-sqlite3/Makefile
+++ databases/py33-sqlite3/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-sqlite3
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= cpython3.3
.include "${MASTERDIR}/Makefile"
Index: databases/py34-gdbm/Makefile
===================================================================
--- databases/py34-gdbm/Makefile
+++ databases/py34-gdbm/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-gdbm
-PYTHON_VERSION= python3.4
+PYTHON_VERSION= cpython3.4
.include "${MASTERDIR}/Makefile"
Index: databases/py34-sqlite3/Makefile
===================================================================
--- databases/py34-sqlite3/Makefile
+++ databases/py34-sqlite3/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-sqlite3
-PYTHON_VERSION= python3.4
+PYTHON_VERSION= cpython3.4
.include "${MASTERDIR}/Makefile"
Index: databases/py35-gdbm/Makefile
===================================================================
--- databases/py35-gdbm/Makefile
+++ databases/py35-gdbm/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-gdbm
-PYTHON_VERSION= python3.5
+PYTHON_VERSION= cpython3.5
.include "${MASTERDIR}/Makefile"
Index: databases/py35-sqlite3/Makefile
===================================================================
--- databases/py35-sqlite3/Makefile
+++ databases/py35-sqlite3/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-sqlite3
-PYTHON_VERSION= python3.5
+PYTHON_VERSION= cpython3.5
.include "${MASTERDIR}/Makefile"
Index: devel/Makefile
===================================================================
--- devel/Makefile
+++ devel/Makefile
@@ -4696,6 +4696,8 @@
SUBDIR += py3-vcversioner
SUBDIR += py3-xdg
SUBDIR += py3-yaml
+ SUBDIR += pypy-setuptools27
+ SUBDIR += pypy-setuptools33
SUBDIR += py_static_check
SUBDIR += pybugz
SUBDIR += pychecker
Index: devel/py-setuptools27/Makefile
===================================================================
--- devel/py-setuptools27/Makefile
+++ devel/py-setuptools27/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python2.7
+PYTHON_VERSION= cpython2.7
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/py-setuptools33/Makefile
===================================================================
--- devel/py-setuptools33/Makefile
+++ devel/py-setuptools33/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= cpython3.3
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/py-setuptools34/Makefile
===================================================================
--- devel/py-setuptools34/Makefile
+++ devel/py-setuptools34/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python3.4
+PYTHON_VERSION= cpython3.4
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/py-setuptools35/Makefile
===================================================================
--- devel/py-setuptools35/Makefile
+++ devel/py-setuptools35/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python3.5
+PYTHON_VERSION= cpython3.5
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/pypy-setuptools27/Makefile
===================================================================
--- devel/pypy-setuptools27/Makefile
+++ devel/pypy-setuptools27/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python2.7
+PYTHON_VERSION= pypy2.7
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/pypy-setuptools33/Makefile
===================================================================
--- devel/pypy-setuptools33/Makefile
+++ devel/pypy-setuptools33/Makefile
@@ -3,7 +3,7 @@
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= pypy3.3
MASTERDIR= ${.CURDIR}/../py-setuptools
Index: devel/pyside/Makefile
===================================================================
--- devel/pyside/Makefile
+++ devel/pyside/Makefile
@@ -26,8 +26,7 @@
phonon rcc_build script scripttools \
svg uic_build webkit
-PLIST_SUB= PORTVERSION=${PORTVERSION} \
- PYTHON_VERSION=${PYTHON_VERSION}
+PLIST_SUB= PORTVERSION=${PORTVERSION}
USES= cmake python:2 tar:bzip2
USE_LDCONFIG= yes
Index: devel/shiboken/Makefile
===================================================================
--- devel/shiboken/Makefile
+++ devel/shiboken/Makefile
@@ -16,8 +16,7 @@
LIB_DEPENDS= libxml2.so:textproc/libxml2 \
libxslt.so:textproc/libxslt
-PLIST_SUB= PORTVERSION=${PORTVERSION} \
- PYTHON_VERSION=${PYTHON_VERSION}
+PLIST_SUB= PORTVERSION=${PORTVERSION}
USE_QT4= corelib qmake_build qtestlib moc_build network \
uic_build rcc_build xml xmlpatterns
Index: emulators/gns3/Makefile
===================================================================
--- emulators/gns3/Makefile
+++ emulators/gns3/Makefile
@@ -30,8 +30,7 @@
DESKTOP_ENTRIES= "GNS3" "${COMMENT}" "" "${PORTNAME}" "System;Emulator;" true
-PLIST_SUB= PYTHON_VERSION=${PYTHON_VERSION:S/python//} \
- VERSION=${PORTVERSION}
+PLIST_SUB= VERSION=${PORTVERSION}
OPTIONS_DEFINE= DOCS
Index: japanese/libtomoe-gtk/Makefile
===================================================================
--- japanese/libtomoe-gtk/Makefile
+++ japanese/libtomoe-gtk/Makefile
@@ -31,7 +31,7 @@
#.endif
.if exists(${LOCALBASE}/libdata/pkgconfig/pytomoe.pc)
-CONFIGURE_ENV+= PYTHON_VERSION=${PYTHON_VERSION:S;python;;} \
+CONFIGURE_ENV+= PYTHON_VERSION=${PYTHON_VER} \
pyexecdir=${PYTHON_SITELIBDIR}
PLIST_SUB+= PYTHON=""
.else
Index: japanese/tomoe/Makefile
===================================================================
--- japanese/tomoe/Makefile
+++ japanese/tomoe/Makefile
@@ -19,7 +19,7 @@
USE_LDCONFIG= yes
USE_PERL5= build
-CONFIGURE_ENV= PYTHON_VERSION=${PYTHON_VERSION:S;python;;} \
+CONFIGURE_ENV= PYTHON_VERSION=${PYTHON_VER} \
pyexecdir=${PYTHON_SITELIBDIR} \
GMSGFMT="${LOCALBASE}/bin/msgfmt"
CFLAGS+= -I${LOCALBASE}/include
Index: lang/pypy/Makefile.version
===================================================================
--- lang/pypy/Makefile.version
+++ lang/pypy/Makefile.version
@@ -0,0 +1,4 @@
+# Mk/Uses/python.mk includes this file, don't remove it!
+# $FreeBSD$
+
+PYTHON_PORTVERSION= 2.7.10
Index: lang/pypy3/Makefile.version
===================================================================
--- lang/pypy3/Makefile.version
+++ lang/pypy3/Makefile.version
@@ -0,0 +1,4 @@
+# Mk/Uses/python.mk includes this file, don't remove it!
+# $FreeBSD$
+
+PYTHON_PORTVERSION= 3.3.5
Index: lang/python35/Makefile
===================================================================
--- lang/python35/Makefile
+++ lang/python35/Makefile
@@ -24,7 +24,7 @@
# Duplicate python.mk variables. TODO: Let lang/python?? ports use python.mk bits.
PYTHON_VER= ${PYTHON_PORTVERSION:R}
-PYTHON_VERSION= python${PYTHON_VER}
+PYTHON_VERSION= cpython${PYTHON_VER}
PYTHON_SUFFIX= ${PYTHON_VER:S/.//g}
DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm
Index: multimedia/freevo/Makefile
===================================================================
--- multimedia/freevo/Makefile
+++ multimedia/freevo/Makefile
@@ -32,7 +32,7 @@
USERS= ${FREEVO_USER}
GROUPS= ${FREEVO_GROUP}
-SUB_LIST+= PYTHON_VERSION=${PYTHON_DEFAULT_VERSION} \
+SUB_LIST+= PYTHON_CMD=${PYTHON_CMD} \
PORTVERSION=${PORTVERSION} \
FREEVO_HOME=${FREEVO_HOME}
SUB_FILES= pkg-message pkg-deinstall
Index: multimedia/freevo/files/freevo.in
===================================================================
--- multimedia/freevo/files/freevo.in
+++ multimedia/freevo/files/freevo.in
@@ -30,7 +30,7 @@
freevo_dir=`pw usershow ${freevo_user} | awk -F: '{print $9}'`
command="%%PREFIX%%/bin/freevo"
-command_interpreter="%%PREFIX%%/bin/%%PYTHON_VERSION%%"
+command_interpreter="%%PYTHON_CMD%%"
# freevo needs PATH set so it can determine python version
export PATH=/bin:/usr/bin:%%PREFIX%%/bin:${freevo_dir}/bin
Index: www/py33-requests/Makefile
===================================================================
--- www/py33-requests/Makefile
+++ www/py33-requests/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-requests
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= cpython3.3
.include "${MASTERDIR}/Makefile"
Index: www/py34-requests/Makefile
===================================================================
--- www/py34-requests/Makefile
+++ www/py34-requests/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-requests
-PYTHON_VERSION= python3.4
+PYTHON_VERSION= cpython3.4
.include "${MASTERDIR}/Makefile"
Index: www/py35-requests/Makefile
===================================================================
--- www/py35-requests/Makefile
+++ www/py35-requests/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-requests
-PYTHON_VERSION= python3.5
+PYTHON_VERSION= cpython3.5
.include "${MASTERDIR}/Makefile"
Index: x11-toolkits/py33-tkinter/Makefile
===================================================================
--- x11-toolkits/py33-tkinter/Makefile
+++ x11-toolkits/py33-tkinter/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-tkinter
-PYTHON_VERSION= python3.3
+PYTHON_VERSION= cpython3.3
.include "${MASTERDIR}/Makefile"
Index: x11-toolkits/py34-tkinter/Makefile
===================================================================
--- x11-toolkits/py34-tkinter/Makefile
+++ x11-toolkits/py34-tkinter/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-tkinter
-PYTHON_VERSION= python3.4
+PYTHON_VERSION= cpython3.4
.include "${MASTERDIR}/Makefile"
Index: x11-toolkits/py35-tkinter/Makefile
===================================================================
--- x11-toolkits/py35-tkinter/Makefile
+++ x11-toolkits/py35-tkinter/Makefile
@@ -2,6 +2,6 @@
MASTERDIR= ${.CURDIR}/../py-tkinter
-PYTHON_VERSION= python3.5
+PYTHON_VERSION= cpython3.5
.include "${MASTERDIR}/Makefile"
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Jan 15, 11:29 AM (12 h, 3 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27647879
Default Alt Text
D8069.id21102.diff (26 KB)
Attached To
Mode
D8069: Mk/Uses/python.mk: add support for PyPy
Attached
Detach File
Event Timeline
Log In to Comment