freebsd-ports/databases/phpmyadmin5/Makefile
Stefan Eßer b7f05445c0 Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
2022-09-07 23:10:59 +02:00

104 lines
2.9 KiB
Makefile

PORTNAME= phpMyAdmin
DISTVERSION= 5.2.0
CATEGORIES= databases www
MASTER_SITES= https://files.phpmyadmin.net/${PORTNAME}/${DISTVERSION}/
DISTNAME= ${PORTNAME}-${DISTVERSION}-all-languages
PKGNAMESUFFIX= 5${PHP_PKGNAMESUFFIX}
MAINTAINER= joneum@FreeBSD.org
COMMENT= Set of PHP-scripts to manage MySQL over the web
WWW= https://www.phpmyadmin.net/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/LICENSE
CONFLICTS_INSTALL= phpMyAdmin-php[0-9][0-9] phpMyAdmin[0-9]-php[0-9][0-9] # www/phpMyAdmin/CONTRIBUTING.md
USES= cpe php:web,flavors tar:xz
CPE_PRODUCT= ${PORTNAME:tl}
NO_ARCH= yes
NO_BUILD= yes
.if !defined(WITHOUT_PHP_DEPENDS)
# Note: composer.json files in the source list pcre as a required
# extension, but pcre is compiled into PHP as standard on FreeBSD.
# spl, libsodium are only required in the bundled vendor code. PMA
# could, in principle, also use the PHP dbase extension, but it's not
# available for PHP >= 7.0 and of only minority interest.
USE_PHP= ctype filter hash iconv json mysqli session spl xml xmlwriter
.endif
# Note: default settings will pull in X11 client support. If you don't
# want this, either turn off GD in the config dialog, or else turn off
# FONTCONFIG in the graphics/gd port options.
OPTIONS_DEFINE= BZ2 CURL GD GMP MBSTRING OPCACHE OPENSSL \
SODIUM ZIP ZLIB
OPTIONS_DEFAULT= BZ2 GD MBSTRING OPENSSL ZIP ZLIB
BZ2_DESC= PHP bzip2 library support
CURL_DESC= PHP curl support
GD_DESC= PHP GD library support (requires X11)
GMP_DESC= PHP GMP library support
MBSTRING_DESC= PHP Multi-byte String support
OPCACHE_DESC= PHP Opcache support
OPENSSL_DESC= PHP OpenSSL support
PDF_DESC= PHP PDFlib support
SODIUM_DESC= PHP libsodium support (only available for PHP >= 7.2)
ZIP_DESC= PHP Zip compression support
ZLIB_DESC= PHP ZLIB support
.include <bsd.port.options.mk>
GROUPS?= ${WWWGRP}
CFG_FILE= config.inc.php
PLIST= ${WRKDIR}/plist
PLIST_SUB+= PMA_GRP=${GROUPS}
SUB_LIST+= PKGNAME=${PKGNAME} \
CFG_FILE=${WWWDIR}/${CFG_FILE}
SUB_FILES+= pkg-message
.if ${FLAVOR} != php80
OPTIONS_DEFINE+= PDF
.endif
.if !defined(WITHOUT_PHP_DEPENDS)
.for opt in ${OPTIONS_DEFINE}
. if ${PORT_OPTIONS:M${opt}}
USE_PHP+= ${opt:tl}
. endif
.endfor
.endif
.SILENT:
post-patch:
cd ${WRKSRC} ; \
${CP} ${FILESDIR}/${CFG_FILE}.sample ${WRKSRC}/${CFG_FILE}.sample ; \
${FIND} . ! -type d ! -name ${CFG_FILE}.sample ! -name '*.bak' | \
${SORT} | ${SED} -e "s,^\.,%%WWWDIR%%," >${PLIST} ; \
${CAT} ${PKGDIR}/pkg-plist-chunk >>${PLIST} ; \
for emptydir in $$( ${FIND} . -type d -empty -print | \
${SED} -e "s,^\.,%%WWWDIR%%," ) ; do \
${ECHO} "@dir $${emptydir}" >>${PLIST} ; \
done ; \
do-install:
cd ${WRKSRC} ; \
for src in $$( ${FIND} . ! -name .cvsignore ! -name '*.bak' ) ; do \
dst=${STAGEDIR}${WWWDIR}$${src#.} ; \
if ${TEST} -d "$$src" ; then \
${MKDIR} "$$dst" ; \
else \
${INSTALL_DATA} "$$src" "$$dst" ; \
fi \
done
@${MKDIR} ${STAGEDIR}${WWWDIR}/tmp
.include <bsd.port.mk>