1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-26 05:02:18 +00:00
freebsd-ports/devel/pear/Makefile
Antoine Brodin d48ac46fc8 Stage support for devel/pear
Both go-pear and install-pear have been investigated, finally we patch
go-pear in a similar way that pkgsrc does to support stage
Unfortunately with both solutions, pear internals insist on writing
registration information outside of stage if it is writeable (staging as root)
Hide this violation when staging as root on the package builders.

Requested by:	miwi (maintainer)
2014-02-12 07:08:30 +00:00

45 lines
1.5 KiB
Makefile

# Created by: Alex Dupre <ale@FreeBSD.org>
# $FreeBSD$
PORTNAME= pear
PORTVERSION= 1.9.4
PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= http://miwibox.org/distfiles/
MAINTAINER= miwi@FreeBSD.org
COMMENT= PEAR framework for PHP
USE_BZIP2= yes
NO_BUILD= yes
WANT_PHP_CLI= yes
USE_PHP= pcre xml
USE_PHP_BUILD= yes
PEARDIR= ${PREFIX}/share/pear
post-patch:
@${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|" \
-e "s|%%BUNDLEDIR%%|${WRKSRC}/go-pear-bundle|" \
-e "s|%%TMPDIR%%|/tmp/pear|" \
${WRKSRC}/go-pear
@cd ${WRKSRC}/go-pear-bundle && ${MKDIR} tmp && ${TAR} -C tmp -xf PEAR-${PORTVERSION}.tar
@cd ${WRKSRC}/go-pear-bundle/tmp/PEAR-${PORTVERSION} && ${PATCH} -s -p0 < ${FILESDIR}/extra-patch-PEAR-Config.php
@${RM} ${WRKSRC}/go-pear-bundle/tmp/PEAR-${PORTVERSION}/PEAR/Config.php.orig
@${MD5} -q ${WRKSRC}/go-pear-bundle/tmp/PEAR-${PORTVERSION}/PEAR/Config.php > ${WRKSRC}/Config.php.md5
@${REINPLACE_CMD} -E -e "s|(file md5sum=\").*(\" name=\"PEAR/Config.php\" role=\"php\")|\1`${CAT} ${WRKSRC}/Config.php.md5`\2|g" \
${WRKSRC}/go-pear-bundle/tmp/package2.xml ${WRKSRC}/go-pear-bundle/package2.xml
@cd ${WRKSRC}/go-pear-bundle/tmp && ${TAR} -cf ../PEAR-${PORTVERSION}.tar package2.xml PEAR-${PORTVERSION} package.xml
do-install:
@cd ${WRKSRC} && ${SETENV} DESTDIR=${STAGEDIR} ${LOCALBASE}/bin/php -q ./go-pear
@${SED} -i "" "s|<?php|<?php dl('pcre.so'); dl('xml.so');|" \
${STAGEDIR}${PEARDIR}/peclcmd.php
# pear violates stage when staging as root, hide this
.if defined(PACKAGE_BUILDING)
@${RM} -rf ${PEARDIR}
.endif
.include <bsd.port.mk>