From owner-freebsd-ports-bugs@FreeBSD.ORG Sun Dec 20 12:10:06 2009 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 AC32E1065670 for ; Sun, 20 Dec 2009 12:10:06 +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 839C38FC20 for ; Sun, 20 Dec 2009 12:10:06 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id nBKCA6bk042638 for ; Sun, 20 Dec 2009 12:10:06 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id nBKCA6es042633; Sun, 20 Dec 2009 12:10:06 GMT (envelope-from gnats) Resent-Date: Sun, 20 Dec 2009 12:10:06 GMT Resent-Message-Id: <200912201210.nBKCA6es042633@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, Matthew Seaman Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 189C01065676 for ; Sun, 20 Dec 2009 12:08:15 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (gate6.infracaninophile.co.uk [IPv6:2001:8b0:151:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id 55BBA8FC12 for ; Sun, 20 Dec 2009 12:08:14 +0000 (UTC) Received: from happy-idiot-talk.infracaninophile.co.uk (localhost [IPv6:::1]) by smtp.infracaninophile.co.uk (8.14.3/8.14.3) with ESMTP id nBKC89J4024834 for ; Sun, 20 Dec 2009 12:08:09 GMT (envelope-from matthew@happy-idiot-talk.infracaninophile.co.uk) Received: (from matthew@localhost) by happy-idiot-talk.infracaninophile.co.uk (8.14.3/8.14.3/Submit) id nBKC89xQ024833; Sun, 20 Dec 2009 12:08:09 GMT (envelope-from matthew) Message-Id: <200912201208.nBKC89xQ024833@happy-idiot-talk.infracaninophile.co.uk> Date: Sun, 20 Dec 2009 12:08:09 GMT From: Matthew Seaman To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: ports/141802: [maintainer] databases/phpmyadmin211 -- use bsd.options.mk etc. X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Matthew Seaman List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Dec 2009 12:10:06 -0000 >Number: 141802 >Category: ports >Synopsis: [maintainer] databases/phpmyadmin211 -- use bsd.options.mk etc. >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Sun Dec 20 12:10:06 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Matthew Seaman >Release: FreeBSD 8.0-STABLE i386 >Organization: Infracaninophile >Environment: System: FreeBSD happy-idiot-talk.infracaninophile.co.uk 8.0-STABLE FreeBSD 8.0-STABLE #14: Mon Dec 14 09:19:08 GMT 2009 root@:/usr/obj/usr/src/sys/HAPPY-IDIOT-TALK i386 >Description: Simplify the port and make better use of the general facilities provided by the ports system: * Switch to using bsd.ports.options.mk -- this means that we can apply OPTIONS processing for suPHP support, which otherwise needs to occur too early. * Use USERS and GROUPS functionality, instead of supplying pkg-install scripts to create userids. * Drop some warnings about changes that happened a long time ago now. >How-To-Repeat: >Fix: --- phpmyadmin211.diff begins here --- diff -Nur /usr/ports/databases/phpmyadmin211/Makefile phpmyadmin211/Makefile --- /usr/ports/databases/phpmyadmin211/Makefile 2009-10-13 23:25:02.000000000 +0100 +++ phpmyadmin211/Makefile 2009-12-20 10:43:51.000000000 +0000 @@ -20,8 +20,16 @@ USE_PHP= ctype mysql session .endif -# Unfortunately can't make WITH_SUPHP part of the OPTIONS selection, -# since it has to be processed before just about anything else. +OPTIONS= SUPHP "suPHP support" off \ + BZ2 "bzip2 library support" on \ + GD "GD library support" on \ + OPENSSL "OpenSSL support" on \ + PDF "PDFlib support (implies GD)" on \ + ZLIB "ZLIB support" on \ + MCRYPT "MCrypt library support" on \ + MBSTRING "Multi-byte character-set string support" on + +.include .if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP) @@ -35,30 +43,19 @@ .endif -# PMA_USR is only used WITH_SUPHP - -PMA_GRP?= ${WWWGRP} -PMA_GID?= ${_PMA_GID} +# USERS is only used WITH_SUPHP +GROUPS?= ${WWWGRP} CFGFILE= config.inc.php PLIST= ${WRKDIR}/plist -PLIST_SUB+= PMA_GRP=${PMA_GRP} +PLIST_SUB+= PMA_GRP=${GROUPS} .if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP) -PMA_USR?= _pma -PMA_UID?= 336 -PMA_GCOS?= "phpMyAdmin Owner" -PMA_HOME?= /nonexistent -PMA_SHELL?= /sbin/nologin - -SUB_LIST+= PMA_USR=${PMA_USR} \ - PMA_UID=${PMA_UID} \ - PMA_GRP=${PMA_GRP} \ - PMA_GID=${PMA_GID} \ - PMA_GCOS=${PMA_GCOS} \ - PMA_HOME=${PMA_HOME} \ - PMA_SHELL=${PMA_SHELL} +USERS?= _pma + +SUB_LIST+= PMA_USR=${USERS} \ + PMA_GRP=${GROUPS} SUB_FILES+= pkg-install pkg-deinstall .endif @@ -66,25 +63,6 @@ SUB_LIST+= PKGNAME=${PKGNAME} SUB_FILES+= pkg-message -# Copy the way lang/php{4,5}-extensions deals with its OPTIONS -- avoids -# problems with include of bsd.port.pre.mk - -OPTIONS= BZ2 "bzip2 library support" on \ - GD "GD library support" on \ - OPENSSL "OpenSSL support" on \ - PDF "PDFlib support (implies GD)" on \ - ZLIB "ZLIB support" on \ - MCRYPT "MCrypt library support" on \ - MBSTRING "Multi-byte character-set string support" on - -PORT_DBDIR?= /var/db/ports -LATEST_LINK= ${PORTNAME}${PKGNAMESUFFIX} -OPTIONSFILE?= ${PORT_DBDIR}/${LATEST_LINK}/options - -.if exists(${OPTIONSFILE}) -.include "${OPTIONSFILE}" -.endif - .if !defined(WITHOUT_PHP_DEPENDS) # Options that default to on: .for opt in BZ2 GD OPENSSL PDF ZLIB MCRYPT MBSTRING @@ -100,11 +78,6 @@ USE_PHP+= pcre .endif -_PMA_GID!= ${PW} group show -n ${PMA_GRP} | ${CUT} -d : -f 3 -.if empty(_PMA_GID) -_PMA_GID= 80 -.endif - .SILENT: do-build: @@ -115,11 +88,6 @@ ${ECHO_MSG} "This is the legacy version of phpMyAdmin that will" ${ECHO_MSG} "work with PHP4 and versions of MySQL older than 5.0" ${ECHO_MSG} "" - ${ECHO_MSG} "You may use the following additional build option:" - ${ECHO_MSG} "" - ${ECHO_MSG} " WITH_SUPHP=yes Install appropriately for use with" - ${ECHO_MSG} " the www/suphp port [default: no]" - ${ECHO_MSG} "" ${ECHO_MSG} "Note that the mysqli option is not available with this" ${ECHO_MSG} "port. Please use databases/phpmyadmin instead." ${ECHO_MSG} "" @@ -127,15 +95,6 @@ ${ECHO_MSG} "install lang/php4 before attempting to install" ${ECHO_MSG} "databases/phpmyadmin" ${ECHO_MSG} "" -.if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP) - @if ${PW} show -n phpmyadm >/dev/null 2>&1 ; then \ - ${ECHO_MSG} "===> WARNING ******************************" ; \ - ${ECHO_MSG} "The default username used by ${PKNAME} has changed"; \ - ${ECHO_MSG} "to ${PMA_USR} -- you should delete the old user:" ; \ - ${ECHO_MSG} " # ${PW} user del -n phpmyadm" ; \ - ${ECHO_MSG} "" ; \ - fi -.endif # When creating a package, empty directories will not be generated # from the pkg tarball. Therefore make sure no directories are empty. @@ -148,16 +107,11 @@ ${CP} ${FILESDIR}/${CFGFILE}.sample ${WRKSRC}/${CFGFILE}.sample cd ${WRKSRC} ; \ ${FIND} . ! -type d ! -name ${CFGFILE}.sample | ${SORT} | \ - ${SED} -e "s,^\.,%%WWWDIR%%," >${PLIST} ; \ - ${CAT} ${PKGDIR}/pkg-plist-chunk >>${PLIST} ; \ + ${SED} -e "s,^\.,%%WWWDIR%%," >${PLIST} ; \ + ${CAT} ${PKGDIR}/pkg-plist-chunk >>${PLIST} ; \ ${FIND} . -type d | ${SORT} -r | ${SED} \ -e "s,^\.$$,@dirrmtry %%WWWDIR%%," \ - -e "s,^\.,@dirrm %%WWWDIR%%," >>${PLIST} - -pre-install: -.if defined(WITH_SUPHP) - ${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL -.endif + -e "s,^\.,@dirrm %%WWWDIR%%," >>${PLIST} do-install: install-app install-conf @@ -166,16 +120,16 @@ for src in $$( ${FIND} . ! -name .cvsignore ) ; do \ dst=${WWWDIR}$${src#.} ; \ if ${TEST} -d $$src ; then \ - ${MKDIR} $$dst ; \ + ${MKDIR} $$dst ; \ else \ - ${INSTALL_DATA} $$src $$dst ; \ + ${INSTALL_DATA} $$src $$dst ; \ fi \ done install-conf: install-app cd ${WWWDIR} ; \ ${CHMOD} 0640 ${CFGFILE}.sample ; \ - ${CHGRP} ${PMA_GRP} ${CFGFILE}.sample ; \ + ${CHGRP} ${WWWGRP} ${CFGFILE}.sample ; \ if ${TEST} ! -f ${CFGFILE} ; then \ ${CP} -p ${CFGFILE}.sample ${CFGFILE} ; \ fi diff -Nur /usr/ports/databases/phpmyadmin211/files/pkg-install.in phpmyadmin211/files/pkg-install.in --- /usr/ports/databases/phpmyadmin211/files/pkg-install.in 2008-01-21 10:58:20.000000000 +0000 +++ phpmyadmin211/files/pkg-install.in 2009-12-19 19:45:22.000000000 +0000 @@ -5,103 +5,18 @@ PATH=/usr/sbin:/usr/bin:/bin ; export PATH -pma_dir=%%WWWDIR%% +WWWDIR=%%WWWDIR%% pma_usr=%%PMA_USR%% -pma_uid=%%PMA_UID%% pma_grp=%%PMA_GRP%% -pma_gid=%%PMA_GID%% - -pma_gcos="%%PMA_GCOS%%" -pma_home=%%PMA_HOME%% -pma_shell=%%PMA_SHELL%% - -create_group() { - local user uid group gid gcos home shell - - user=$1 - uid=$2 - group=$3 - gid=$4 - gcos=$5 - home=$6 - shell=$7 - - - if pw group show -n $group >/dev/null 2>&1 ; then - echo "===> Using pre-existing group $group" - else - if pw groupadd -n $group -g $gid ; then - echo "===> Group $group created" - else - cat <<-EOERRORMSG - *** Failed to create the $group group. - - Please add the $user user and $group group - manually with the commands: - - pw groupadd -n $group -g $gid - pw useradd -n $user -u $uid -g $group -c "$gcos" \\ - -d $home -s $shell -h - - - and retry installing this package. - EOERRORMSG - exit 1 - fi - fi - -} - - -create_user() { - local user uid group gid gcos home shell - - user=$1 - uid=$2 - group=$3 - gid=$4 - gcos=$5 - home=$6 - shell=$7 - - if pw user show -n $user >/dev/null 2>&1 ; then - echo "===> Using pre-existing user $user" - else - if pw useradd -n $user -u $uid -g $group -c "$gcos" \ - -d $home -s $shell -h - ; then - echo "===> Created $user user" - else - cat <<-EOERRORMSG - *** Failed to create the $user user. - - Please add the $user user manually with the command: - - pw useradd -n $user -u $uid -g $group -c "$gcos" \\ - -d $home -s $shell -h - - - and retry installing this package. - EOERRORMSG - exit 1 - fi - fi -} - case $2 in - PRE-INSTALL) - - # Create the pma user and group if they do not already exist - create_group $pma_usr $pma_uid $pma_grp $pma_gid \ - "$pma_gcos" $pma_home $pma_shell - create_user $pma_usr $pma_uid $pma_grp $pma_gid \ - "$pma_gcos" $pma_home $pma_shell - ;; POST-INSTALL) # Change ownership of the phpMyAdm directory - echo "===> Adjusting file ownership in $pma_dir" - chown -R $pma_usr:$pma_grp $pma_dir || exit 1 + echo "===> Adjusting file ownership in $WWWDIR" + chown -R $pma_usr:$pma_grp $WWWDIR || exit 1 ;; esac diff -Nur /usr/ports/databases/phpmyadmin211/pkg-descr phpmyadmin211/pkg-descr --- /usr/ports/databases/phpmyadmin211/pkg-descr 2008-10-15 15:46:57.000000000 +0100 +++ phpmyadmin211/pkg-descr 2009-12-19 19:45:22.000000000 +0000 @@ -2,35 +2,25 @@ phpMyAdmin handles the administration of MySQL over the Web. It can manage a whole MySQL server as well as a single database. - Currently phpMyAdmin can: - - easily browse through databases and tables - - create, copy, rename, alter and drop databases - - create, copy, rename, alter and drop tables - - do table maintenance - - add, edit and drop fields - - execute any SQL-statement, even multiple queries - - create, alter and drop indexes - - load text files into tables - - create (*) and read dumps of tables or databases - - export (*) data to SQL, CSV, XML, Word, Excel, PDF and Latex - formats - - administer multiple servers - - manage MySQL users and privileges - - check server settings and runtime information with - configuration hints - - check referential integrity in MyISAM tables - - using Query-by-example (QBE), create complex queries - automatically connecting required tables - - create PDF graphics of your Database layout - - search globally in a database or a subset of it - - transform stored data into any format using a set of predefined - functions, like displaying BLOB-data as image or download-link - - support InnoDB tables and foreign keys (see FAQ 3.6) - - support mysqli, the improved MySQL extension (see FAQ 1.17) - - communicate in 50 different languages - - (*) phpMyAdmin can compress (Zip, GZip -RFC 1952- or Bzip2 formats) - dumps and CSV exports if you use PHP4 >= 4.0.4 with Zlib support - (--with-zli b) and/or Bzip2 support (--with-bz2). + * Intuitive web interface + * Support for most MySQL features: + o browse and drop databases, tables, views, fields and indexes + o create, copy, drop, rename and alter databases, tables, fields + and indexes + o maintenance of server, databases and tables, with proposals on + server configuration + o execute, edit and bookmark any SQL-statement, even batch-queries + o manage MySQL users and privileges + o manage stored procedures and triggers + * Import data from CSV and SQL + * Export data to various formats: CSV, SQL, XML, PDF, ISO/IEC 26300 - + OpenDocument Text and Spreadsheet, Word, Excel, LATEX and others + * Administering multiple servers + * Creating PDF graphics of your database layout + * Creating complex queries using Query-by-example (QBE) + * Searching globally in a database or a subset of it + * Transforming stored data into any format using a set of predefined + functions, like displaying BLOB-data as image or download-link + * And much more... WWW: http://www.phpmyadmin.net/ --- phpmyadmin211.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted: