ports/devel/py-Jinja2/Makefile
Mathieu Arnold 551be3c723 Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored.  They will
  automatically get flavors (py27, py34, py35, py36) depending on what
  versions they support.

  There is also a USE_PYTHON=flavors for ports that do not use distutils
  but need FLAVORS to be set.  A USE_PYTHON=noflavors can be set if
  using distutils but flavors are not wanted.

  A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
  added to cope with Python ports that did not have the Python
  PKGNAMEPREFIX but are flavored.

  USES=python now also exports a PY_FLAVOR variable that contains the
  current python flavor.  It can be used in dependency lines when the
  port itself is not python flavored.  For example, deskutils/calibre.

  By default, all the flavors are generated.  To only generate flavors
  for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
  BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.

  In all the ports with Python dependencies, the *_DEPENDS entries MUST
  end with the flavor so that the framework knows which to build/use.
  This is done by appending '@${PY_FLAVOR}' after the origin (or
  @${FLAVOR} if in a Python module with Python flavors, as the content
  will be the same).  For example:

    RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}

PR:		223071
Reviewed by:	portmgr, python
Sponsored by:	Absolight
Differential Revision:	https://reviews.freebsd.org/D12464
2017-11-30 15:50:30 +00:00

78 lines
2 KiB
Makefile

# Created by: Nicola Vitale <nivit@FreeBSD.org>
# $FreeBSD$
PORTNAME= Jinja2
PORTVERSION= 2.10
CATEGORIES= devel python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
PKGNAMESUFFIX?=
MAINTAINER= nivit@FreeBSD.org
COMMENT?= Fast and easy to use stand-alone template engine
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MarkupSafe>=0.23:textproc/py-MarkupSafe@${FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}MarkupSafe>=0.23:textproc/py-MarkupSafe@${FLAVOR}
NO_ARCH= yes
USES= python
.if empty(PKGNAMESUFFIX)
USE_PYTHON= autoplist distutils
.endif
.if ${PKGNAMESUFFIX} == -doc
USE_PYTHON= flavors
.endif
EXAMPLESDIR= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME}
OPTIONS_DEFINE?= BABEL EXAMPLES
OPTIONS_DEFAULT?= BABEL
BABEL_DESC= Enable Babel extension
BABEL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=1.3:devel/py-babel@${FLAVOR}
PY2TO3_CMD= ${LOCALBASE}/bin/2to3-${PYTHON_VER}
PY2TO3_ARGS= --fix=all --no-diffs --nobackups --verbose --write
.include <bsd.port.pre.mk>
.if ${PKGNAMESUFFIX} == "-doc"
BUILD_DEPENDS+= ${PKGNAMEPREFIX}sphinx>=1.1.3:textproc/py-sphinx@${FLAVOR}
DOCSDIR= ${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
PORTDOCS= *
PORT_OPTIONS:= ${PORT_OPTIONS:NEXAMPLES}
do-build:
(cd ${WRKSRC}/docs && ${MAKE} SPHINXBUILD=sphinx-build-${PYTHON_VER} html)
do-install:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
(cd ${WRKSRC}/docs/_build/html && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} \
"! -name .buildinfo")
.endif
.if ${PORT_OPTIONS:MEXAMPLES}
PORTEXAMPLES= *
post-build:
. if ${PYTHON_REL} >= 3000
${PY2TO3_CMD} ${PY2TO3_ARGS} ${WRKSRC}/examples
. endif
${PYTHON_CMD} -m compileall ${WRKSRC}/examples ; \
${PYTHON_CMD} -O -m compileall ${WRKSRC}/examples
post-install:
@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
.endif
check regression-test test: build
.if empty(PKGNAMESUFFIX)
@cd ${WRKSRC} && ${PYTHON_CMD} ${PYSETUP} test
.else
@${DO_NADA}
.endif
.include <bsd.port.post.mk>