Lines 2-9
Link Here
|
2 |
# $FreeBSD$ |
2 |
# $FreeBSD$ |
3 |
|
3 |
|
4 |
PORTNAME= cherrypy |
4 |
PORTNAME= cherrypy |
5 |
PORTVERSION= 5.4.0 |
5 |
PORTVERSION= 17.4.2 |
6 |
PORTREVISION= 4 |
|
|
7 |
CATEGORIES= www python |
6 |
CATEGORIES= www python |
8 |
MASTER_SITES= CHEESESHOP |
7 |
MASTER_SITES= CHEESESHOP |
9 |
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} |
8 |
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} |
Lines 14-39
COMMENT= Pythonic, object-oriented web development framework
Link Here
|
14 |
|
13 |
|
15 |
LICENSE= BSD3CLAUSE |
14 |
LICENSE= BSD3CLAUSE |
16 |
|
15 |
|
17 |
EXAMPLES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cheetah>=2.4.4:devel/py-cheetah@${PY_FLAVOR} \ |
16 |
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pip>0:devel/py-pip@${PY_FLAVOR} \ |
18 |
${PYTHON_PKGNAMEPREFIX}sqlobject>=1.5.1:databases/py-sqlobject@${PY_FLAVOR} |
17 |
${PYTHON_PKGNAMEPREFIX}setuptools_scm>0:devel/py-setuptools_scm@${PY_FLAVOR} |
|
|
18 |
|
19 |
EXAMPLES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlobject>=1.5.1:databases/py-sqlobject@${PY_FLAVOR} |
19 |
EXAMPLESDIR= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME} |
20 |
EXAMPLESDIR= ${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME} |
20 |
|
21 |
|
|
|
22 |
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.11.0:devel/py-six@${PY_FLAVOR} \ |
23 |
${PYTHON_PKGNAMEPREFIX}cheroot>=6.2.4:www/py-cheroot@${PY_FLAVOR} \ |
24 |
${PYTHON_PKGNAMEPREFIX}portend>=2.1.1:net/py-portend@${PY_FLAVOR} \ |
25 |
${PYTHON_PKGNAMEPREFIX}zclockfile>0:devel/py-zclockfile@${PY_FLAVOR} |
26 |
|
21 |
OPTIONS_DEFINE= EXAMPLES |
27 |
OPTIONS_DEFINE= EXAMPLES |
22 |
|
28 |
|
23 |
PORTEXAMPLES= * |
29 |
PORTEXAMPLES= * |
24 |
|
30 |
|
25 |
USES= python shebangfix |
31 |
USES= python |
26 |
USE_PYTHON= distutils autoplist concurrent |
32 |
USE_PYTHON= distutils autoplist concurrent |
27 |
SHEBANG_FILES= cherrypy/cherryd |
|
|
28 |
|
33 |
|
29 |
.include <bsd.port.options.mk> |
34 |
.include <bsd.port.options.mk> |
30 |
|
35 |
|
31 |
# handle tutorial separately, and remove cherrypy.process from data_files |
|
|
32 |
# otherwise it confuses build_py.get_outputs() and breaks PYDISTUTILS_AUTOPLIST |
33 |
post-patch: |
34 |
@${REINPLACE_CMD} -e '99,106d' -e '78s/"cherrypy.tutorial",//1' \ |
35 |
-e '88d' -i.bak ${WRKSRC}/${PYSETUP} |
36 |
|
37 |
.if ${PORT_OPTIONS:MEXAMPLES} |
36 |
.if ${PORT_OPTIONS:MEXAMPLES} |
38 |
post-install: |
37 |
post-install: |
39 |
@${MKDIR} ${STAGEDIR}${EXAMPLESDIR} |
38 |
@${MKDIR} ${STAGEDIR}${EXAMPLESDIR} |
Lines 46-65
post-install:
Link Here
|
46 |
|
45 |
|
47 |
.include <bsd.port.pre.mk> |
46 |
.include <bsd.port.pre.mk> |
48 |
|
47 |
|
49 |
.if ${PYTHON_REL} >= 3000 # devel/py-cheetah doesn't yet build with Python 3 |
48 |
.if ${PYTHON_REL} < 3800 |
50 |
.undef EXAMPLES_RUN_DEPENDS |
49 |
RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}contextlib2>0:devel/py-contextlib2@${PY_FLAVOR} |
51 |
.endif |
50 |
.endif |
52 |
|
51 |
|
53 |
# The package cherrypy.wsgiserver includes both Python 2 and Python 3 modules, |
52 |
.if ${PYTHON_REL} < 3000 |
54 |
# so it breaks PYDISTUTILS_AUTOPLIST. |
53 |
RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}more-itertools5>0:devel/py-more-itertools5@${PY_FLAVOR} |
55 |
# Instead of defining a cherrypy_build_py.get_outputs() method in setup.py |
54 |
EXAMPLES_RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cheetah>=2.4.4:devel/py-cheetah@${PY_FLAVOR} |
56 |
# we simply remove unwanted modules (see cherrypy_build_py() in setup.py) |
|
|
57 |
post-extract: |
58 |
.if ${PYTHON_REL} >= 3000 |
59 |
@(cd ${WRKSRC}/cherrypy && ${RM} _cpcompat_subprocess.py && \ |
60 |
cd wsgiserver && ${RM} ssl_pyopenssl.py wsgiserver2.py) |
61 |
.else |
55 |
.else |
62 |
@${RM} ${WRKSRC}/cherrypy/wsgiserver/wsgiserver3.py |
56 |
RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}more-itertools>0:devel/py-more-itertools@${PY_FLAVOR} |
|
|
57 |
EXAMPLES_RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}cheetah3>0:devel/py-cheetah3@${PY_FLAVOR} |
63 |
.endif |
58 |
.endif |
64 |
|
59 |
|
65 |
.include <bsd.port.post.mk> |
60 |
.include <bsd.port.post.mk> |