aboutsummaryrefslogtreecommitdiffstats
path: root/devel/pear-I18N
diff options
context:
space:
mode:
authoredwin <edwin@FreeBSD.org>2003-02-24 13:27:41 +0800
committeredwin <edwin@FreeBSD.org>2003-02-24 13:27:41 +0800
commitdb62b47fa4214e30a42fe7615d788fd394634bb5 (patch)
treedfcae2d367617bc3d346263639d3aeee26bc545a /devel/pear-I18N
parent5eeaa5840923c17a01e19598913ae6928e46ba4b (diff)
downloadfreebsd-ports-gnome-db62b47fa4214e30a42fe7615d788fd394634bb5.tar.gz
freebsd-ports-gnome-db62b47fa4214e30a42fe7615d788fd394634bb5.tar.zst
freebsd-ports-gnome-db62b47fa4214e30a42fe7615d788fd394634bb5.zip
PEAR ports: handling PEAR's registry.
PEAR uses a "registry" to register installed modules, and this registry is initialized during the installation of mod_php4 (since 4.3.0). Unfortunately, installing PEAR modules through the ports does not maintain this registry. This PR fix this problem for the following ports: - sysutils/pear-Log - devel/pear-PEAR - devel/pear-Date - devel/pear-I18N - devel/pear-HTML_Common - devel/pear-HTML_Select_Common - security/pear-Crypt_CBC - mail/pear-Mail_Mime - net/pear-Net_Sieve - sysutils/pear-File - archivers/pear-Archive_Tar PR: ports/47921 Submitted by: Thierry Thomas <thierry@pompo.net>
Diffstat (limited to 'devel/pear-I18N')
-rw-r--r--devel/pear-I18N/Makefile22
-rw-r--r--devel/pear-I18N/pkg-deinstall13
2 files changed, 30 insertions, 5 deletions
diff --git a/devel/pear-I18N/Makefile b/devel/pear-I18N/Makefile
index bcbc40436ec0..603c20802d16 100644
--- a/devel/pear-I18N/Makefile
+++ b/devel/pear-I18N/Makefile
@@ -7,6 +7,7 @@
PORTNAME= I18N
PORTVERSION= 0.8
+PORTREVISION= 1
CATEGORIES= devel www
MASTER_SITES= http://pear.php.net/get/
PKGNAMEPREFIX= pear-
@@ -16,14 +17,23 @@ DIST_SUBDIR= PEAR
MAINTAINER= ports@FreeBSD.org
COMMENT= PEAR internationalization package
-BUILD_DEPENDS= ${PEARDIR}.DIST_PHP:${PORTSDIR}/devel/pear-install
+BUILD_DEPENDS= ${PEARDIR}/PEAR.php.dist:${PORTSDIR}/devel/pear-PEAR
RUN_DEPENDS= ${BUILD_DEPENDS}
NO_BUILD= yes
+
+.include <bsd.port.pre.mk>
+
EXAMPLESDIR= ${PREFIX}/share/examples/pear
+.if exists(${LOCALBASE}/bin/php-config)
+PHP_BASE!= ${LOCALBASE}/bin/php-config --prefix
+.else
+PHP_BASE!= ${LOCALBASE}
+.endif
+PEAR= ${LOCALBASE}/bin/pear
LPHP_LIB= lib/php
-PEARDIR= ${LOCALBASE}/${LPHP_LIB}
+PEARDIR= ${PHP_BASE}/${LPHP_LIB}
PLIST_SUB= PEARDIR=${LPHP_LIB}
MANIFEST= Common.php Country.php Language.php Negotiator.php
EXAMPLES= I18N_Message.php I18N_Message_Translate.php \
@@ -38,8 +48,6 @@ do-install:
@${CP} -Rp ${WRKSRC}/Messages ${PEARDIR}/I18N
@${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${PEARDIR}/I18N
@${CHMOD} a-x ${PEARDIR}/I18N/Messages/*
-
-post-install:
.if !defined(NOPORTDOCS)
.for FILE in ${EXAMPLES}
@${INSTALL_DATA} ${WRKSRC}/examples/${FILE} ${EXAMPLESDIR}
@@ -47,4 +55,8 @@ post-install:
@${ECHO_MSG} "===> Examples installed in ${EXAMPLESDIR}."
.endif
-.include <bsd.port.mk>
+post-install:
+# Register a new package
+ @${PEAR} install -r -f ${WRKDIR}/package.xml
+
+.include <bsd.port.post.mk>
diff --git a/devel/pear-I18N/pkg-deinstall b/devel/pear-I18N/pkg-deinstall
new file mode 100644
index 000000000000..c17e9d19ced0
--- /dev/null
+++ b/devel/pear-I18N/pkg-deinstall
@@ -0,0 +1,13 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# Remove package declaration from PEAR's registry.
+
+if [ x$2 != xDEINSTALL ]; then
+ exit
+fi
+PKG_NAME=${1%%-[0-9._]*}
+PACKAGE=$(echo $PKG_NAME | sed 's/pear-//')
+
+${PKG_PREFIX}/bin/pear uninstall -r ${PACKAGE} || true