From owner-freebsd-ports-bugs@FreeBSD.ORG Mon May 23 12:30:11 2011 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E73051065672 for ; Mon, 23 May 2011 12:30:11 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id BCE688FC15 for ; Mon, 23 May 2011 12:30:11 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p4NCUBH5029965 for ; Mon, 23 May 2011 12:30:11 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p4NCUBse029960; Mon, 23 May 2011 12:30:11 GMT (envelope-from gnats) Resent-Date: Mon, 23 May 2011 12:30:11 GMT Resent-Message-Id: <201105231230.p4NCUBse029960@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Martin Matuska Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 42D89106566C; Mon, 23 May 2011 12:27:27 +0000 (UTC) (envelope-from mm@mail2.vx.sk) Received: from mail2.vx.sk (mail2.vx.sk [IPv6:2a01:4f8:100:84a3::3]) by mx1.freebsd.org (Postfix) with ESMTP id 7DEE38FC12; Mon, 23 May 2011 12:27:26 +0000 (UTC) Received: from neo.vx.sk (localhost [127.0.0.1]) by mail2.vx.sk (Postfix) with ESMTP id A50FD4F5C; Mon, 23 May 2011 14:27:25 +0200 (CEST) Received: from mail2.vx.sk ([127.0.0.1]) by neo.vx.sk (mail.vx.sk [127.0.0.1]) (amavisd-new, port 10024) with LMTP id qQ3V94ZG03Hr; Mon, 23 May 2011 14:22:24 +0200 (CEST) Received: by mail2.vx.sk (Postfix, from userid 1001) id 387B34F47; Mon, 23 May 2011 14:22:24 +0200 (CEST) Message-Id: <20110523122224.387B34F47@mail2.vx.sk> Date: Mon, 23 May 2011 14:22:24 +0200 (CEST) From: Martin Matuska To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: miwi@FreeBSD.org Subject: ports/157269: [PATCH] devel/pear: add support for autoplist and channels X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 May 2011 12:30:12 -0000 >Number: 157269 >Category: ports >Synopsis: [PATCH] devel/pear: add support for autoplist and channels >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon May 23 12:30:11 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Martin Matuska >Release: FreeBSD 8.2-STABLE amd64 >Organization: >Environment: System: FreeBSD neo.vx.sk 8.2-STABLE FreeBSD 8.2-STABLE #0 r221263M: Sat Apr 30 18:15:14 CEST >Description: Add support for channels and automatic plist generation to pear. Added file(s): - pear-deinstall.in Removed file(s): - pear-deinstall Port maintainer (miwi@FreeBSD.org) is cc'd. Generated with FreeBSD Port Tools 0.99 >How-To-Repeat: >Fix: --- pear-1.9.2.patch begins here --- Index: bsd.pear.mk =================================================================== RCS file: /home/pcvs/ports/devel/pear/bsd.pear.mk,v retrieving revision 1.11 diff -u -r1.11 bsd.pear.mk --- bsd.pear.mk 25 Feb 2011 01:43:50 -0000 1.11 +++ bsd.pear.mk 23 May 2011 12:21:43 -0000 @@ -25,11 +25,19 @@ NO_BUILD= yes .endif +.if defined(PEAR_CHANNEL) && ${PEAR_CHANNEL} != "" +PKGNAMEPREFIX= pear-${PEAR_CHANNEL}- +PEARPKGREF= ${PEAR_CHANNEL}/${PORTNAME} +.else +PEARPKGREF= ${PORTNAME} +.endif + .if exists(${LOCALBASE}/bin/php-config) PHP_BASE!= ${LOCALBASE}/bin/php-config --prefix .else PHP_BASE= ${LOCALBASE} .endif +PEAR= ${LOCALBASE}/bin/pear LPEARDIR= share/pear LPKGREGDIR= ${LPEARDIR}/packages/${PKGNAME} LDATADIR= ${LPEARDIR}/data/${PORTNAME} @@ -53,6 +61,8 @@ .endif INSTDIR= ${PHP_BASE}/${LINSTDIR} +SUB_LIST+= PEAR_CHANNEL=${PEAR_CHANNEL} + .if !defined(USE_PHPIZE) && !exists(${.CURDIR}/pkg-plist) PLIST= ${WRKDIR}/PLIST .endif @@ -61,7 +71,7 @@ SCRIPTFILESDIR=${LCRIPTSDIR} PKGINSTALL?= ${PORTSDIR}/devel/pear/pear-install -PKGDEINSTALL?= ${PORTSDIR}/devel/pear/pear-deinstall +PKGDEINSTALL?= ${WRKDIR}/pear-deinstall FILES?= DATA?= @@ -167,9 +177,32 @@ . endif . endfor -pre-install: do-generate-plist +do-autogenerate-plist: + @${ECHO_MSG} "===> Generating packing list with pear" + @${ECHO_CMD} "${LPKGREGDIR}/package.xml" > ${PLIST} + @FILES=`${PEAR} list-files ${WRKDIR}/package.xml | ${TAIL} +4 | \ + ${AWK} '{ print $$2 }' | ${SED} -e "s|${PREFIX}/||g"`; \ + for f in $${FILES}; do ${ECHO_CMD} $${f} >> ${PLIST}; done; \ + for d in $${FILES}; do ${ECHO_CMD} $${d}; done | ${DIRFILTER} | \ + while read dir; do ${ECHO_CMD} "@dirrmtry $${dir}" >> ${PLIST}; \ + done; + @${ECHO_CMD} "@dirrm ${LPKGREGDIR}" >> ${PLIST} + @${ECHO_CMD} "@dirrmtry ${LPKGREGDIR:H}" >> ${PLIST} + +. if defined(PEAR_AUTOINSTALL) +pre-install: do-autogenerate-plist do-generate-deinstall-script +do-install: do-auto-install + +. else +pre-install: do-generate-plist do-generate-deinstall-script do-install: do-install-files do-install-docs do-install-tests do-install-sqls \ do-install-scriptfiles do-install-examples do-install-data +. endif + +do-auto-install: + @${ECHO_MSG} "===> Installing package with pear" + @${LN} -sf ${WRKDIR}/package.xml ${WRKSRC}/package.xml + @cd ${WRKSRC} && ${PEAR} install -n -f package.xml do-install-files: do-install-files-msg @${MKDIR} ${INSTDIR} @@ -253,8 +286,13 @@ . endif .endif +do-generate-deinstall-script: + @${SED} ${_SUB_LIST_TEMP} -e '/^@comment /d' ${PORTSDIR}/devel/pear/pear-deinstall.in > ${WRKDIR}/pear-deinstall + post-install: @${MKDIR} ${PKGREGDIR} @${INSTALL_DATA} ${WRKDIR}/package.xml ${PKGREGDIR} +.if !defined(PEAR_AUTOINSTALL) @${SETENV} PKG_PREFIX=${PREFIX} \ ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL +.endif Index: pear-deinstall =================================================================== RCS file: pear-deinstall diff -N pear-deinstall --- pear-deinstall 9 Dec 2005 18:58:03 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,15 +0,0 @@ -#!/bin/sh -# -# $FreeBSD: ports/devel/pear/pear-deinstall,v 1.1 2005/12/09 18:58:03 ale Exp $ -# -# 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-//') - -PEAR=${PKG_PREFIX}/bin/pear - -${PEAR} uninstall -r -n ${PACKAGE} || true Index: pear-deinstall.in =================================================================== RCS file: pear-deinstall.in diff -N pear-deinstall.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ pear-deinstall.in 23 May 2011 12:21:43 -0000 @@ -0,0 +1,21 @@ +#!/bin/sh +# +# $FreeBSD$ +# +# Remove package declaration from PEAR's registry. + +if [ x$2 != xDEINSTALL ]; then + exit +fi + +PKG_NAME=${1%%-[0-9._]*} +CHANNEL=%%PEAR_CHANNEL%% +PEAR=${PKG_PREFIX}/bin/pear + +if [ -z "$CHANNEL" ]; then + PACKAGE=$(echo $PKG_NAME | sed "s/pear-//") + ${PEAR} uninstall -r -n ${PACKAGE} || true +else + PACKAGE=$(echo $PKG_NAME | sed "s/pear-${CHANNEL}-//") + ${PEAR} uninstall -r -n ${CHANNEL}/${PACKAGE} || true +fi --- pear-1.9.2.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: