aboutsummaryrefslogtreecommitdiff
path: root/print/py-reportlab/Makefile
blob: 0d491554d261ed74e1e2cd02e3f7fbab39111230 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Created by: Thomas Gellekum <tg@FreeBSD.org>

PORTNAME=	reportlab
PORTVERSION=	3.5.60
CATEGORIES=	print python
MASTER_SITES=	CHEESESHOP \
		https://www.reportlab.com/ftp/
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
DISTFILES=	${DISTNAME}${EXTRACT_SUFX} \
		${PFBFER}
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}

MAINTAINER=	bofh@FreeBSD.org
COMMENT=	Library to create PDF documents using the Python language

LICENSE=	BSD3CLAUSE

RUN_DEPENDS=	${PY_PILLOW}

USES=		python:3.6+
USE_PYTHON=	distutils autoplist

CONFLICTS=	py*-reportlab[^3]-[^3].* \
		py*-reportlab-[^3].*

PFBFER_VERSION=	20180109
PFBFER=		pfbfer-${PFBFER_VERSION}.zip

MAKE_ENV=	PACKAGE_PATH="${REPORTLABDIR}"

REPORTLABDIR=	${PYTHONPREFIX_SITELIBDIR}/reportlab
DOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
PORTDOCS=	reportlab-userguide.pdf

OPTIONS_DEFINE=	CJK FREETYPE DOCS
OPTIONS_DEFAULT=CJK FREETYPE
# XXX disable this 20190809 while linimon investigates why having it
# enabled consumes all memory and swap during poudriere builds.
OPTIONS_EXCLUDE_powerpc64=	DOCS
CJK_DESC=	Adobe CMaps
CJK_RUN_DEPENDS=	${LOCALBASE}/share/fonts/adobe-cmaps/ac15/cid2code.txt:print/adobe-cmaps
FREETYPE_LIB_DEPENDS=	libfreetype.so:print/freetype2

post-patch:
	@${REINPLACE_CMD} -e 's|%%DISTDIR%%|${DISTDIR}|' \
			  -e 's|%%PFBFER%%|${PFBFER}|' \
				${WRKSRC}/setup.py

post-patch-DOCS-on:
.for f in genAll.py userguide/genuserguide.py
	@${REINPLACE_CMD} -e 's|%%STAGEDIR%%|${STAGEDIR}|' \
			  -e 's|%%PYTHON_SITELIBDIR%%|${PYTHON_SITELIBDIR}|' \
				${WRKSRC}/docs/${f}
.endfor

post-install:
	${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/reportlab/*/*.so

post-install-DOCS-on:
	@cd ${WRKSRC}/docs && ${PYTHON_CMD} genAll.py
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
.for i in ${PORTDOCS}
	${INSTALL_DATA} ${WRKSRC}/docs/${i} ${STAGEDIR}${DOCSDIR}
.endfor

do-test:
	@(cd ${WRKSRC}/tests && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} ./runAll.py)

.include <bsd.port.mk>