svn commit: r328833 - head/Mk

Marcus von Appen mva at FreeBSD.org
Mon Sep 30 17:56:29 UTC 2013


Author: mva
Date: Mon Sep 30 17:56:28 2013
New Revision: 328833
URL: http://svnweb.freebsd.org/changeset/ports/328833

Log:
  Enable python meta-ports to be used as direct dependencies
  via USE_PYTHON=2 (for lang/python2) or USE_PYTHON=3 (for lang/python3).
  This can be used for ports, which do not care, which specific minor
  release version of Python 2.x or Python 3.x is used, as long as there
  are proper symlinks to e.g. bin/python2 or bin/python3.

Modified:
  head/Mk/bsd.python.mk

Modified: head/Mk/bsd.python.mk
==============================================================================
--- head/Mk/bsd.python.mk	Mon Sep 30 16:47:56 2013	(r328832)
+++ head/Mk/bsd.python.mk	Mon Sep 30 17:56:28 2013	(r328833)
@@ -14,8 +14,9 @@ Python_Include_MAINTAINER=	python at FreeBS
 # language. It's automatically included when USE_PYTHON is defined in
 # the ports' makefile. If your port requires only some set of Python
 # versions, you can define USE_PYTHON as [min]-[max] or min+ or -max
-# or as an explicit version (eg. 3.1-3.2 for [min]-[max],
-# 2.7+ or -3.2 for min+ and -max or 2.6 for an explicit version).
+# or as an explicit version or as a meta port version (eg. 3.1-3.2
+# for [min]-[max], 2.7+ or -3.2 for min+ and -max, 2.6 for an
+# explicit version or 3 for a meta port version).
 #
 # The variables:
 #
@@ -270,6 +271,14 @@ USE_PYTHON_BUILD=	yes
 USE_PYTHON_RUN=		yes
 .endif	# !defined(USE_PYTHON)
 
+.if ${USE_PYTHON} == "2"
+USE_PYTHON=			${PYTHON2_DEFAULT_VERSION:S/^python//}
+_WANTS_META_PORT=	2
+.elif ${USE_PYTHON} == "3"
+USE_PYTHON=			${PYTHON3_DEFAULT_VERSION:S/^python//}
+_WANTS_META_PORT=	3
+.endif  # ${USE_PYTHON} == "2"
+
 # Validate Python version whether it meets USE_PYTHON version restriction.
 _PYTHON_VERSION_CHECK:=			${USE_PYTHON:C/^([1-9]\.[0-9])$/\1-\1/}
 _PYTHON_VERSION_MINIMUM_TMP:=	${_PYTHON_VERSION_CHECK:C/([1-9]\.[0-9])[-+].*/\1/}
@@ -561,11 +570,17 @@ PYTHON_NO_DEPENDS?=		NO
 .if ${PYTHON_NO_DEPENDS} == "NO"
 .if defined(USE_PYTHON_BUILD)
 BUILD_DEPENDS+=	${PYTHON_CMD}:${PYTHON_PORTSDIR} \
-		python:${PORTSDIR}/lang/python
+				python:${PORTSDIR}/lang/python
+.if defined(_WANTS_META_PORT)
+BUILD_DEPENDS+=	python${_WANTS_META_PORT}:${PORTSDIR}/lang/python${_WANTS_META_PORT}
+.endif
 .endif
 .if defined(USE_PYTHON_RUN)
 RUN_DEPENDS+=	${PYTHON_CMD}:${PYTHON_PORTSDIR} \
-		python:${PORTSDIR}/lang/python
+				python:${PORTSDIR}/lang/python
+.if defined(_WANTS_META_PORT)
+RUN_DEPENDS+=	python${_WANTS_META_PORT}:${PORTSDIR}/lang/python${_WANTS_META_PORT}
+.endif
 .endif
 .endif		# ${PYTHON_NO_DEPENDS} == "NO"
 


More information about the svn-ports-all mailing list