svn commit: r405075 - head/Mk/Uses
Kubilay Kocak
koobs at FreeBSD.org
Sat Jan 2 15:24:39 UTC 2016
Author: koobs
Date: Sat Jan 2 15:24:37 2016
New Revision: 405075
URL: https://svnweb.freebsd.org/changeset/ports/405075
Log:
Mk/Uses/python.mk: Add support for optional 'test' argument
Some ports may need to use Python for their testing suite but otherwise
do not need it at all (ie, not for build or run). This patch adds
support for the test argument to be used in the USES clause, such as
python:3.2+,test. This enables the relevant Python environment and
modifies TEST_DEPENDS as necessary.
For non-Python ports that use Python as their testing suite, add
python:<ver>,test as required to the USES clause.
PR: 205616
Submitted by: Brendan Molloy <brendan+freebsd bbqsrc net>
Reviewed by: mat, miwi, koobs, antoine
Approved by: koobs (python)
Differential Revision: https://reviews.freebsd.org/D4711
Modified:
head/Mk/Uses/python.mk
Modified: head/Mk/Uses/python.mk
==============================================================================
--- head/Mk/Uses/python.mk Sat Jan 2 15:15:06 2016 (r405074)
+++ head/Mk/Uses/python.mk Sat Jan 2 15:24:37 2016 (r405075)
@@ -6,7 +6,7 @@
#
# Feature: python
# Usage: USES=python or USES=python:args
-# Valid ARGS: <version>, build, run
+# Valid ARGS: <version>, 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
@@ -23,12 +23,15 @@
# # version
#
# build Indicates that Python is needed at build time and adds
-# it as BUILD_DEPENDS.
+# it to BUILD_DEPENDS.
# run Indicates that Python is needed at run time and adds
-# it as RUN_DEPENDS.
-#
-# If build and run are omitted, Python will be added as BUILD_DEPENDS and
-# RUN_DEPENDS. PYTHON_NO_DEPENDS can be set to not add any dependencies.
+# it to RUN_DEPENDS.
+# test Indicates that Python is needed at test time and adds
+# it to TEST_DEPENDS.
+#
+# If build, run and test are omitted, Python will be added as BUILD_DEPENDS,
+# RUN_DEPENDS and TEST_DEPENDS. PYTHON_NO_DEPENDS can be set to not add any
+# dependencies.
#
# Variables, which can be set by a user:
#
@@ -231,6 +234,7 @@ _PYTHON_FEATURE_${var:tu}= yes
# pollutes the build/run dependency detection
.undef _PYTHON_BUILD_DEP
.undef _PYTHON_RUN_DEP
+.undef _PYTHON_TEST_DEP
_PYTHON_ARGS= ${python_ARGS:S/,/ /g}
.if ${_PYTHON_ARGS:Mbuild}
_PYTHON_BUILD_DEP= yes
@@ -240,13 +244,18 @@ _PYTHON_ARGS:= ${_PYTHON_ARGS:Nbuild}
_PYTHON_RUN_DEP= yes
_PYTHON_ARGS:= ${_PYTHON_ARGS:Nrun}
.endif
+.if ${_PYTHON_ARGS:Mtest}
+_PYTHON_TEST_DEP= yes
+_PYTHON_ARGS:= ${_PYTHON_ARGS:Ntest}
+.endif
-# The port does not specify a build or run dependency, assume both are
+# The port does not specify a build, run or test dependency, assume all are
# required.
.if !defined(_PYTHON_BUILD_DEP) && !defined(_PYTHON_RUN_DEP) && \
- !defined(PYTHON_NO_DEPENDS)
+ !defined(_PYTHON_TEST_DEP) && !defined(PYTHON_NO_DEPENDS)
_PYTHON_BUILD_DEP= yes
_PYTHON_RUN_DEP= yes
+_PYTHON_TEST_DEP= yes
.endif
# Determine version number of Python to use
@@ -561,6 +570,12 @@ RUN_DEPENDS+= ${PYTHON_CMD}:${PYTHON_POR
RUN_DEPENDS+= python${_WANTS_META_PORT}:${_PYTHON_RELPORTDIR}${_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}
+.endif
+.endif
# set $PREFIX as Python's one
.if defined(_PYTHON_FEATURE_PYTHONPREFIX)
More information about the svn-ports-all
mailing list