aboutsummaryrefslogtreecommitdiff
path: root/Mk/bsd.port.mk
diff options
context:
space:
mode:
authorKirill Ponomarev <krion@FreeBSD.org>2004-12-09 21:44:48 +0000
committerKirill Ponomarev <krion@FreeBSD.org>2004-12-09 21:44:48 +0000
commit21ee7168bce3d52a5cbdecc9d29e855fcead4532 (patch)
treef49243d26b11384b6be04dbd4ce325d7a950c853 /Mk/bsd.port.mk
parent7ff7a829a968ba5210dd7e619b80d6cbe5eb0df9 (diff)
downloadports-21ee7168bce3d52a5cbdecc9d29e855fcead4532.tar.gz
ports-21ee7168bce3d52a5cbdecc9d29e855fcead4532.zip
* Add new command macros: DATE, FMT, MKTEMP, OBJDUMP,
and use command macro SORT. [1] * Clean up the comments, and use 4 column tabs everywhere. [2] * Introduce 2 new variables: SUB_FILES and SUB_LIST. [3] * Document DEPRECATED and EXPIRATION_DATE variables. [4] * Sanitize the intermittent output by the build infrastructure so that cutting and pasting from it no longer interferes with GNATS-tags. [5] * Honour configure arguments for USE_XLIB if USE/WITH_LIBTOOL_ is used. [6] * Properly document 'describe' target. [7] * Fix pkg-plist handling for ports that set a non-standard PREFIX. [8] * Defaults INDEXFILE to INDEX-6 on 6-CURRENT (600000). [8] PR: ports/62298 [1], ports/73633 [2], ports/67151 [3], ports/74310 [4]. ports/74758 [5], ports/74536 [6], ports/74710 [7], ports/74691 [8] Submitted by: eik [1], edwin [2], Florent Thoumie <flz@xbsd.org>, sem [4], vs [5], ahze [6], linimon [7], kris [8]
Notes
Notes: svn path=/head/; revision=123583
Diffstat (limited to 'Mk/bsd.port.mk')
-rw-r--r--Mk/bsd.port.mk939
1 files changed, 528 insertions, 411 deletions
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index f4d955b86efb..5ac2b3f6718f 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -30,8 +30,8 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# is listed), a port is maintained by the subscribers of the ports@FreeBSD.org
# mailing list, and any correspondence should be directed there.
#
-# MAINTAINER - The e-mail address of the contact person for this port
-# (default: ports@FreeBSD.org).
+# MAINTAINER - The e-mail address of the contact person for this port.
+# Default: ports@FreeBSD.org
#
# These are meta-variables that are automatically set to the system
# you are running on. These are provided in case you need to take
@@ -73,46 +73,50 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# Optional.
# PKGNAMESUFFIX - Suffix to specify compilation options. Optional.
# UNIQUENAME - A name for your port that is globally unique. By default,
-# this is set to ${LATEST_LINK} when LATEST_LINK is set,
-# and to ${PKGNAMEPREFIX}${PORTNAME} otherwise.
-# DISTVERSION - Vendor version of the distribution (default: ${PORTVERSION})
+# this is set to ${LATEST_LINK} when LATEST_LINK is set,
+# and to ${PKGNAMEPREFIX}${PORTNAME} otherwise.
+# DISTVERSION - Vendor version of the distribution.
+# Default: ${PORTVERSION}
# DISTNAME - Name of port or distribution used in generating
-# WRKSRC and DISTFILES below (default:
+# WRKSRC and DISTFILES below.
+# Default:
# ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}${DISTVERSIONSUFFIX})
# CATEGORIES - A list of descriptive categories into which this port falls.
# Mandatory.
#
# These variable describe how to fetch files required for building the port.
#
-# DISTFILES - Name(s) of archive file(s) containing distribution
-# (default: ${DISTNAME}${EXTRACT_SUFX}). Set this to
-# an empty string if the port doesn't require it.
-# EXTRACT_SUFX - Suffix for archive names (default: .tar.bz2 if USE_BZIP2
-# is set, .zip if USE_ZIP is set, .tar.gz otherwise).
+# DISTFILES - Name(s) of archive file(s) containing distribution.
+# Set this to an empty string if the port doesn't require it.
+# Default: ${DISTNAME}${EXTRACT_SUFX}
+# EXTRACT_SUFX - Suffix for archive names
# You never have to set both DISTFILES and EXTRACT_SUFX.
+# Default: .tar.bz2 if USE_BZIP2 is set, .zip if USE_ZIP is
+# set, .tar.gz otherwise).
# MASTER_SITES - Primary location(s) for distribution files if not found
# locally. See bsd.sites.mk for common choices for
# MASTER_SITES.
-# MASTER_SITE_SUBDIR - Subdirectory of MASTER_SITES (default: empty).
-# Will sometimes need to be set to ${PORTNAME} for (e.g.)
-# MASTER_SITE_SOURCEFORGE. Only guaranteed to work for
-# choices of ${MASTER_SITES} defined in bsd.sites.mk.
+# MASTER_SITE_SUBDIR
+# - Subdirectory of MASTER_SITES. Will sometimes need to be
+# set to ${PORTNAME} for (e.g.) MASTER_SITE_SOURCEFORGE.
+# Only guaranteed to work for choices of ${MASTER_SITES}
+# defined in bsd.sites.mk.
+# Default: not set.
# PATCHFILES - Name(s) of additional files that contain distribution
-# patches (default: none). make will look for them at
-# PATCH_SITES (see below). They will automatically be
-# uncompressed before patching if the names end with
-# ".gz", ".bz2" or ".Z".
+# patches. Make will look for them at PATCH_SITES (see below).
+# They will automatically be uncompressed before patching if
+# the names end with ".gz", ".bz2" or ".Z".
+# Default: not set.
# PATCH_SITES - Primary location(s) for distribution patch files
# if not found locally.
-# DIST_SUBDIR - Suffix to ${DISTDIR} (default: none). If set, all
-# ${DISTFILES} and ${PATCHFILES} will be put in this
-# subdirectory of ${DISTDIR} (see below). Also they will
-# be fetched in this subdirectory from FreeBSD mirror sites.
+# DIST_SUBDIR - Suffix to ${DISTDIR}. If set, all ${DISTFILES} and
+# ${PATCHFILES} will be put in this subdirectory of
+# ${DISTDIR} (see below). Also they will be fetched in this
+# subdirectory from FreeBSD mirror sites.
# ALLFILES - All of ${DISTFILES} and ${PATCHFILES}.
-# IGNOREFILES - If some of the ${ALLFILES} are not checksum-able, set
-# this variable to their names (default: empty).
-# EXTRACT_ONLY - If defined, a subset of ${DISTFILES} you want to
-# actually extract (default: none).
+# IGNOREFILES - If set, don't perform checksum checks on these files.
+# EXTRACT_ONLY - If set, a subset of ${DISTFILES} you want to
+# actually extract.
#
# (NOTE: by convention, the MAINTAINER entry (see above) should go here.)
#
@@ -120,17 +124,20 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# the user's preferred location to fetch files from. You should
# rarely need to set these.
#
-# MASTER_SITE_BACKUP - Backup location(s) for distribution files and patch
+# MASTER_SITE_BACKUP
+# - Backup location(s) for distribution files and patch
# files if not found locally and ${MASTER_SITES}/${PATCH_SITES}
-# (default:
-# ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/)
-# MASTER_SITE_OVERRIDE - If set, override the MASTER_SITES setting with this
+# Default:
+# ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
+# MASTER_SITE_OVERRIDE
+# - If set, override the MASTER_SITES setting with this
# value.
-# MASTER_SITE_FREEBSD - If set, only use ${MASTER_SITE_BACKUP} for
+# MASTER_SITE_FREEBSD
+# - If set, only use ${MASTER_SITE_BACKUP} for
# MASTER_SITES.
-# CD_MOUNTPTS - List of CDROM mountpoints to look for distfiles under.
-# This variable supercedes CD_MOUNTPT, which is
-# obsolete.
+# CD_MOUNTPTS - List of CDROM mountpoints to look for distfiles under.
+# This variable supercedes CD_MOUNTPT, which is
+# obsolete.
#
# Set these if your port should not be built under certain circumstances.
# These are string variables; you should set them to the reason why
@@ -153,70 +160,80 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# BROKEN - Port is believed to be broken. Package builds will
# still be attempted on the bento package cluster to
# test this assumption.
+# DEPRECATED - Port is deprecated to install. Advisory only.
+# EXPIRATION_DATE
+# - If DEPRECATED is set, determines a date when
+# the port is planed to remove. The date format is
+# ISO 8601 (YYYY-MM-DD).
#
# In addition to RESTRICTED or NO_CDROM, if only a subset of distfiles
# or patchfiles have redistribution restrictions, set the following
# to the list of such files.
#
-# RESTRICTED_FILES - List of files that cannot be redistributed
-# (default: "${DISTFILES} ${PATCHFILES}" if RESTRICTED
-# or NO_CDROM is set, empty otherwise).
+# RESTRICTED_FILES
+# - List of files that cannot be redistributed.
+# Default: "${DISTFILES} ${PATCHFILES}" if RESTRICTED
+# or NO_CDROM is set, empty otherwise.
#
# These variables are booleans, so you don't need to set them to the reason.
#
-# IS_INTERACTIVE - Set this if your port needs to interact with the user
+# IS_INTERACTIVE
+# - Set this if your port needs to interact with the user
# during any step in a package build. User can then decide
# to skip this port by setting ${BATCH}, or compiling only
# the interactive ports by setting ${INTERACTIVE}.
-# (Default: not set.)
+# Default: not set.
# USE_SUBMAKE - Set this if you want that each of the port's main 6 targets
# (extract, patch, configure, build, install and package) to be
# executed in a separate make(1) process. Useful when one of
# the stages needs to influence make(1) variables of the later
# stages using ${WRKDIR}/Makefile.inc generated on the fly.
-# (Default: not set.)
+# Default: not set.
#
# Set these if your port only makes sense to certain architectures.
# They are lists containing names for them (e.g., "alpha i386").
# (Defaults: not set.)
#
-# ONLY_FOR_ARCHS - Only build ports if ${ARCH} matches one of these.
-# NOT_FOR_ARCHS - Only build ports if ${ARCH} doesn't match one of these.
+# ONLY_FOR_ARCHS
+# - Only build ports if ${ARCH} matches one of these.
+# NOT_FOR_ARCHS - Only build ports if ${ARCH} doesn't match one of these.
#
# These variables control options about how a port gets built and/or
# are shorthand notations for common sets of dependencies.
# Use these if your port uses some of the common software packages. By
# convention these should be set to 'yes', although they only need to be
-# defined. (Defaults: not set, unless explicitly indicated below.)
+# defined. Defaults: not set, unless explicitly indicated below.
#
# Note: the distinction between the USE_* and WANT_* variables, and the
# WITH_* and WITHOUT_* variables, are that the former are restricted to
# usage inside the ports framework, and the latter are reserved for user-
# settable options. (Setting USE_* in /etc/make.conf is always wrong).
#
-# USE_BZIP2 - Says that the port tarballs use bzip2, not gzip, for
+# USE_BZIP2 - If set, this port tarballs use bzip2, not gzip, for
# compression.
-# USE_ZIP - Says that the port distfile uses zip, not tar w/[bg]zip
+# USE_ZIP - If set, this port distfile uses zip, not tar w/[bg]zip
# for compression.
-# USE_GCC - Says that the port requires this version of gcc, either in
+# USE_GCC - If set, this port requires this version of gcc, either in
# the system or installed from a port.
-# USE_GMAKE - Says that the port uses gmake.
-# GMAKE - Set to path of GNU make if not in $PATH (default: gmake).
+# USE_GMAKE - If set, this port uses gmake.
+# GMAKE - Set to path of GNU make if not in $PATH.
+# Default: gmake
##
-# USE_GETOPT_LONG - Says that the port uses getopt_long. If OSVERSION
+# USE_GETOPT_LONG
+# - If set, this port uses getopt_long. If OSVERSION
# less than 500041, automatically adds devel/libgnugeopt
# to LIB_DEPENDS, and pass adjusted values of
# CPPFLAGS and LDFLAGS in CONFIGURE_ENV.
-# Default: not set.
##
-# USE_ICONV - Says that the port uses libiconv.
-# USE_GETTEXT - Says that the port uses GNU gettext (libintl).
+# USE_ICONV - If set, this port uses libiconv.
+# USE_GETTEXT - If set, this port uses GNU gettext (libintl).
##
-# USE_PERL5 - Says that the port uses perl5 in one or more of the extract,
-# patch, build, install or run phases.
-# USE_PERL5_BUILD - Says that the port uses perl5 in one or more of the extract,
-# patch, build or install phases.
-# USE_PERL5_RUN - Says that the port uses perl5 for running.
+# USE_PERL5 - If set, this port uses perl5 in one or more of the extract,
+# patch, build, install or run phases.
+# USE_PERL5_BUILD
+# - If set, this port uses perl5 in one or more of the extract,
+# patch, build or install phases.
+# USE_PERL5_RUN - If set, this port uses perl5 for running.
# PERL5 - Set to full path of perl5, either in the system or
# installed from a port.
# PERL - Set to full path of perl5, either in the system or
@@ -225,151 +242,146 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# PERL_VERSION - Full version of perl5 (see below for current value).
# PERL_VER - Short version of perl5 (see below for current value).
# PERL_LEVEL - Perl version as an integer of the form MNNNPP, where
-# M is major version, N is minor version, and P is
-# the patch level. E.g., PERL_VERSION=5.6.1 would give
-# a PERL_LEVEL of 500601. This can be used in comparisons
-# to determine if the version of perl is high enough,
-# whether a particular dependency is needed, etc.
+# M is major version, N is minor version, and P is
+# the patch level. E.g., PERL_VERSION=5.6.1 would give
+# a PERL_LEVEL of 500601. This can be used in comparisons
+# to determine if the version of perl is high enough,
+# whether a particular dependency is needed, etc.
# PERL_ARCH - Directory name of architecture dependent libraries
# (value: ${ARCH}-freebsd).
# PERL_PORT - Name of the perl port that is installed
# (value: perl5)
# SITE_PERL - Directory name where site specific perl packages go.
-# This value is added to PLIST_SUB.
-# PERL_MODBUILD - Use Module::Build to configure, build and install
-# port.
-#
-# USE_GHOSTSCRIPT - Says that the port needs ghostscript to both
-# build and run. Default: not set.
-# USE_GHOSTSCRIPT_BUILD - Says that the port needs ghostscript to build.
-# Default: not set.
-# USE_GHOSTSCRIPT_RUN - Says that the port needs ghostscript to run.
-# Default: not set.
-# GHOSTSCRIPT_PORT - The port that provides postscript functionality.
-# Some installations may wish to override the default
-# to specify a version without X11 and/or localized
-# versions for their nationality.
-# WITH_GHOSTSCRIPT_AFPL - If set to Yes, says to use the AFPL
-# version of the ghostscript software instead
-# of the GNU version, which is used otherwise.
+# This value is added to PLIST_SUB.
+# PERL_MODBUILD - Use Module::Build to configure, build and install port.
+##
+# USE_GHOSTSCRIPT
+# - If set, this port needs ghostscript to both
+# build and run.
+# USE_GHOSTSCRIPT_BUILD
+# - If set, this port needs ghostscript to build.
+# USE_GHOSTSCRIPT_RUN
+# - If set, this port needs ghostscript to run.
+# GHOSTSCRIPT_PORT
+# - The port that provides postscript functionality.
+# Some installations may wish to override the default
+# to specify a version without X11 and/or localized
+# versions for their nationality.
+# WITH_GHOSTSCRIPT_AFPL
+# - If set, this port uses the AFPL version of the ghostscript
+# software instead of the GNU version, which is used otherwise.
##
-# USE_BISON - Says that the port uses bison for building.
+# USE_BISON - If set, this port uses bison for building.
##
-# USE_IMAKE - Says that the port uses imake. Implies USE_X_PREFIX.
-# XMKMF - Set to path of `xmkmf' if not in $PATH (default: xmkmf -a ).
-# USE_X_PREFIX - Says that the port installs in ${X11BASE}. Implies USE_XLIB.
-# USE_XLIB - Says that the port uses the X libraries.
+# USE_IMAKE - If set, this port uses imake. Implies USE_X_PREFIX.
+# XMKMF - Set to path of `xmkmf' if not in $PATH
+# Default: xmkmf -a
+# USE_X_PREFIX - If set, this port installs in ${X11BASE}. Implies USE_XLIB.
+# USE_XLIB - If set, this port uses the X libraries.
#
-# USE_FREETYPE - Says that the port uses the freetype print libraries.
-# USE_GL - Says that the port uses libGL (not needed with XFree86 4.x
+# USE_FREETYPE - If set, this port uses the freetype print libraries.
+# USE_GL - If set, this port uses libGL (not needed with XFree86 4.x
# which already includes this functionality).
-# USE_MESA - Says that the port uses libGL/libglut (deprecated).
-# USE_MOTIF - Says that the port uses a Motif toolkit. Implies USE_XPM.
-# NO_OPENMOTIF - Says that the port uses a custom Motif toolkit
-# instead of Openmotif.
-# Used only when USE_MOTIF is set.
-# WANT_LESSTIF - Says that the port uses Lesstif as Motif toolkit.
-# Used only when USE_MOTIF is set. Implies
-# NO_OPENMOTIF.
-# USE_SDL - Says that the port uses the sdl libraries.
-# See bsd.sdl.mk for more information.
-# USE_XPM - Says that the port uses the xpm graphics libraries.
+# USE_MESA - If set, this port uses libGL/libglut (deprecated).
+# USE_MOTIF - If set, this port uses a Motif toolkit. Implies USE_XPM.
+# NO_OPENMOTIF - If set, this port uses a custom Motif toolkit
+# instead of Openmotif.
+# Used only when USE_MOTIF is set.
+# WANT_LESSTIF - If set, this port uses Lesstif as Motif toolkit.
+# Used only when USE_MOTIF is set. Implies
+# NO_OPENMOTIF.
##
-# USE_OPENSSL - Says that the port relies on the OpenSSL package.
-# Default: not set.
+# USE_SDL - If set, this port uses the sdl libraries.
+# See bsd.sdl.mk for more information.
+# USE_XPM - If set, this port uses the xpm graphics libraries.
##
-#
-# USE_OPENLDAP - Says that the port uses the OpenLDAP libraries
-# Implies: WANT_OPENLDAP_VER?=22
-# WANT_OPENLDAP_VER - Legal values are: 21, 22
-# If set to an unkown value, the port is marked BROKEN.
-# WANT_OPENLDAP_SASL - Says that the system should use OpenLDAP libraries
-# with SASL support.
-#
+# USE_OPENSSL - If set, this port relies on the OpenSSL package.
+##
+# USE_OPENLDAP - If set, this port uses the OpenLDAP libraries.
+# Implies: WANT_OPENLDAP_VER?=22
+# WANT_OPENLDAP_VER
+# - Legal values are: 21, 22
+# If set to an unkown value, the port is marked BROKEN.
+# WANT_OPENLDAP_SASL
+# - If set, the system should use OpenLDAP libraries
+# with SASL support.
##
-# USE_AUTOTOOLS - Says that the port uses various GNU autotools
-# (libtool, autoconf, autoheader, automake et al.)
-# See bsd.autotools.mk for more details.
-# XXX: not currently in active use - this is a placeholder.
+# USE_AUTOTOOLS - If set, this port uses various GNU autotools
+# (libtool, autoconf, autoheader, automake et al.)
+# See bsd.autotools.mk for more details.
+# XXX: not currently in active use - this is a placeholder.
##
-# USE_JAVA - Says that the port relies on the Java language.
+# USE_JAVA - If set, this port relies on the Java language.
# Implies inclusion of bsd.java.mk. (Also see
# that file for more information on USE_JAVA_*).
-# Default: not set.
-# USE_PYTHON - Says that the port relies on the Python language.
+# USE_PYTHON - If set, this port relies on the Python language.
# Implies inclusion of bsd.python.mk. (Also see
# that file for more information on USE_PYTHON_*
# and USE_PYDISTUTILS).
-# Default: not set.
-# USE_RUBY - Says that the port relies on the Ruby language.
+# USE_RUBY - If set, this port relies on the Ruby language.
# Implies inclusion of bsd.ruby.mk. (Also see
# that file for more information on USE_RUBY_*).
-# Default: not set.
-# USE_GNUSTEP - Says that the port relies on the GNUstep system.
-# Implies the inclusion of bsd.gnustep.mk.
-# (Also see that file for more information on
-# USE_GNUSTEP_*).
-# Default: not set.
+# USE_GNUSTEP - If set, this port relies on the GNUstep system.
+# Implies the inclusion of bsd.gnustep.mk.
+# (Also see that file for more information on
+# USE_GNUSTEP_*).
##
# USE_GNOME - A list of the Gnome dependencies the port has (e.g.,
# glib12, gtk12). Implies that the port needs Gnome.
# Implies inclusion of bsd.gnome.mk. See bsd.gnome.mk
# or http://www.FreeBSD.org/gnome/docs/porting.html
# for more details.
-# Default: not set.
-#
-# USE_KDEBASE_VER - Set to 3 to use the KDE windowing system.
-# Implies inclusion
-# of bsd.kde.mk. Default: not set.
-# USE_KDELIBS_VER - Set to 3 to use the KDE libraries.
-# Implies inclusion
-# of bsd.kde.mk. Default: not set.
-# USE_QT_VER - Set to 3 to use the QT libraries.
-# Implies inclusion of bsd.kde.mk. Default: not set.
-#
-# USE_LINUX - Set to yes to say the port needs emulators/linux_base.
-# Default: not set.
-# USE_LINUX_PREFIX - controls the action of PREFIX (see above).
-#
-#
-# USE_MYSQL - Add MySQL client dependency.
-# If no version is given (by the maintainer via the port or
-# by the user via defined variable), try to find the
-# currently installed version. Fall back to default if
-# necessary (MySQL4.0 = 40).
-#
-# DEFAULT_MYSQL_VER - MySQL default version. Can be overriden within a port.
-# Default: 40.
-#
-# WANT_MYSQL_VER - Maintainer can set an arbitrary version of MySQL by
-# using it.
-#
-# BROKEN_WITH_MYSQL - This variable can be defined if the ports doesn't support
-# one or more version of MySQL.
-#
-# MYSQL_VER - Internal variable for MySQL version.
-#
-# WITH_MYSQL_VER - User defined variable to set MySQL version.
-#
-# USE_RC_SUBR - Says the ports startup/shutdown script uses the common
-# routines found in etc/rc.subr and may need to
-# depend on the sysutils/rc_subr port.
-#
-# RC_SUBR - Set to path of rc.subr, defaults to ${LOCALBASE}/etc/rc.subr.
-#
-# USE_APACHE - Says that the port relies on an apache webserver.
-# APACHE_PORT - CATEGORY and portname of the prefered port for apache.
-# Default: www/apache13
-# If WITH_APACHE2 is defined defaults to www/apache2
+##
+# USE_KDEBASE_VER
+# - Set to 3 to use the KDE windowing system.
+# Implies inclusion of bsd.kde.mk.
+# USE_KDELIBS_VER
+# - Set to 3 to use the KDE libraries.
+# Implies inclusion of bsd.kde.mk.
+# USE_QT_VER - Set to 3 to use the QT libraries.
+# Implies inclusion of bsd.kde.mk.
+##
+# USE_LINUX - Set to yes to say the port needs emulators/linux_base.
+# USE_LINUX_PREFIX
+# - controls the action of PREFIX (see above).
+##
+# USE_MYSQL - Add MySQL client dependency.
+# If no version is given (by the maintainer via the port or
+# by the user via defined variable), try to find the
+# currently installed version. Fall back to default if
+# necessary (MySQL4.0 = 40).
+# DEFAULT_MYSQL_VER
+# - MySQL default version. Can be overriden within a port.
+# Default: 40.
+# WANT_MYSQL_VER
+# - Maintainer can set an arbitrary version of MySQL by using it.
+# BROKEN_WITH_MYSQL
+# - This variable can be defined if the ports doesn't support
+# one or more version of MySQL.
+# MYSQL_VER - Internal variable for MySQL version.
+# WITH_MYSQL_VER
+# - User defined variable to set MySQL version.
+##
+# USE_RC_SUBR - If set, the ports startup/shutdown script uses the common
+# routines found in etc/rc.subr and may need to
+# depend on the sysutils/rc_subr port.
+# RC_SUBR - Set to path of rc.subr.
+# Default: ${LOCALBASE}/etc/rc.subr.
+##
+# USE_APACHE - If set, this port relies on an apache webserver.
+# APACHE_PORT - CATEGORY and portname of the prefered port for apache.
+# Default: www/apache13
+# If WITH_APACHE2 is defined defaults to www/apache2
# APXS - Full path to the prefered apxs binary to configure
-# apache modules. Default: ${LOCALBASE}/sbin/apxs
-#
+# apache modules.
+# Default: ${LOCALBASE}/sbin/apxs
#
#
# Dependency checking. Use these if your port requires another port
# not in the list above. (Default: empty.)
#
-# EXTRACT_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
+# EXTRACT_DEPENDS
+# - A list of "path:dir[:target]" tuples of other ports this
# package depends on in the "extract" stage. "path" is
# the name of a file if it starts with a slash (/), an
# executable otherwise. make will test for the existence
@@ -378,7 +390,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# a "make all install" if it's not found. If the third
# field ("target") exists, it will be used instead of
# ${DEPENDS_TARGET}.
-# PATCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
+# PATCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
# package depends on in the "patch" stage. "path" is the
# name of a file if it starts with a slash (/), an
# executable otherwise. make will test for the existence
@@ -387,7 +399,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# a "make all install" if it's not found. If the third
# field ("target") exists, it will be used instead of
# ${DEPENDS_TARGET}.
-# FETCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
+# FETCH_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
# package depends in the "fetch" stage. "path" is the
# name of a file if it starts with a slash (/), an
# executable otherwise. make will test for the
@@ -396,7 +408,7 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# into "dir" to do a "make all install" if it's not
# found. If the third field ("target") exists, it will
# be used instead of ${DEPENDS_TARGET}.
-# BUILD_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
+# BUILD_DEPENDS - A list of "path:dir[:target]" tuples of other ports this
# package depends to build (between the "extract" and
# "build" stages, inclusive). The test done to
# determine the existence of the dependency is the
@@ -419,69 +431,80 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# things that don't fall into the above four categories.
# If the second field ("target") exists, it will be used
# instead of ${DEPENDS_TARGET}.
-# DEPENDS_TARGET - The default target to execute when a port is calling a
-# dependency (default: "install").
+# DEPENDS_TARGET
+# - The default target to execute when a port is calling a
+# dependency.
+# Default: install
#
# Conflict checking. Use if your port cannot be installed at the same time as
# another package.
#
-# CONFLICTS - A list of package name patterns that the port conflicts with.
-# It's possible to use any shell meta-characters for pattern
-# matching.
-# E.g. apache*-1.2* apache*-1.3.[012345] apache-*+ssl_*
-#
+# CONFLICTS - A list of package name patterns that the port conflicts with.
+# It's possible to use any shell meta-characters for pattern
+# matching.
+# E.g. apache*-1.2* apache*-1.3.[012345] apache-*+ssl_*
#
# Various directory definitions and variables to control them.
# You rarely need to redefine any of these except WRKSRC and NO_WRKSUBDIR.
#
-# X11BASE - Where X11 ports install things (default: /usr/X11R6).
-# LOCALBASE - Where non-X11 ports install things (default: /usr/local).
-# LINUXBASE - Where Linux ports install things (default: /compat/linux).
-# PREFIX - Where *this* port installs its files (default: ${X11BASE}
-# if USE_X_PREFIX is set, ${LINUXBASE} if USE_LINUX_PREFIX
-# is set, otherwise ${LOCALBASE}).
+# X11BASE - Where X11 ports install things.
+# Default: /usr/X11R6
+# LOCALBASE - Where non-X11 ports install things.
+# Default: /usr/local
+# LINUXBASE - Where Linux ports install things.
+# Default: /compat/linux
+# PREFIX - Where *this* port installs its files.
+# Default: ${X11BASE} if USE_X_PREFIX is set, ${LINUXBASE} if
+# USE_LINUX_PREFIX is set, otherwise ${LOCALBASE}
# MASTERDIR - Where the port finds patches, package files, etc. Define
# this is you have two or more ports that share most of the
-# files (default: ${.CURDIR}).
-# PORTSDIR - The root of the ports tree. (default: /usr/ports)
-# DISTDIR - Where to search for and store copies of original sources
-# (default: ${PORTSDIR}/distfiles).
+# files.
+# Default: ${.CURDIR}
+# PORTSDIR - The root of the ports tree.
+# Default: /usr/ports
+# DISTDIR - Where to search for and store copies of original sources
+# Default: ${PORTSDIR}/distfiles
# PACKAGES - A top level directory where all packages go (rather than
-# going locally to each port). (default: ${PORTSDIR}/packages).
+# going locally to each port).
+# Default: ${PORTSDIR}/packages
# WRKDIRPREFIX - The place to root the temporary working directory
-# hierarchy (default: none).
-# WRKDIR - A temporary working directory that gets *clobbered* on clean
-# (default: ${WRKDIRPREFIX}${.CURDIR}/work).
+# hierarchy.
+# Default: none
+# WRKDIR - A temporary working directory that gets *clobbered* on clean
+# Default: ${WRKDIRPREFIX}${.CURDIR}/work
# WRKSRC - A subdirectory of ${WRKDIR} where the distribution actually
-# unpacks to. (Default: ${WRKDIR}/${DISTNAME} unless
-# NO_WRKSUBDIR is set, in which case simply ${WRKDIR}).
+# unpacks to.
+# Default: ${WRKDIR}/${DISTNAME} unless NO_WRKSUBDIR is set,
+# in which case simply ${WRKDIR}
# NO_WRKSUBDIR - Assume port unpacks directly into ${WRKDIR}.
-# PATCHDIR - A directory containing any additional patches you made
-# to port this software to FreeBSD (default:
-# ${MASTERDIR}/files)
-# SCRIPTDIR - A directory containing any auxiliary scripts
-# (default: ${MASTERDIR}/scripts)
-# FILESDIR - A directory containing any miscellaneous additional files.
-# (default: ${MASTERDIR}/files)
-# PKGDIR - A directory containing any package creation files.
-# (default: ${MASTERDIR})
+# PATCHDIR - A directory containing any additional patches you made
+# to port this software to FreeBSD.
+# Default: ${MASTERDIR}/files
+# SCRIPTDIR - A directory containing any auxiliary scripts
+# Default: ${MASTERDIR}/scripts
+# FILESDIR - A directory containing any miscellaneous additional files.
+# Default: ${MASTERDIR}/files
+# PKGDIR - A directory containing any package creation files.
+# Default: ${MASTERDIR}
#
# Variables that serve as convenient "aliases" for your *-install targets.
# Use these like: "${INSTALL_PROGRAM} ${WRKSRC}/prog ${PREFIX}/bin".
#
-# INSTALL_PROGRAM - A command to install binary executables. (By
-# default, also strips them, unless ${STRIP} is
-# overridden to be the empty string).
-# INSTALL_SCRIPT - A command to install executable scripts.
-# INSTALL_DATA - A command to install sharable data.
-# INSTALL_MAN - A command to install manpages. May or not compress,
-# depending on the value of MANCOMPRESSED (see below).
+# INSTALL_PROGRAM
+# - A command to install binary executables. (By
+# default, also strips them, unless ${STRIP} is
+# overridden to be the empty string).
+# INSTALL_SCRIPT
+# - A command to install executable scripts.
+# INSTALL_DATA - A command to install sharable data.
+# INSTALL_MAN - A command to install manpages. May or not compress,
+# depending on the value of MANCOMPRESSED (see below).
#
# Boolean to control whether manpages are installed.
#
-# NO_INSTALL_MANPAGES - Says that the port doesn't want to install any
-# manpages (default: not set, i.e. manpages
-# are installed by default).
+# NO_INSTALL_MANPAGES
+# - If set, this port doesn't want to install any manpages.
+# Default: not set, i.e. manpages are installed by default).
#
# Set the following to specify all manpages that your port installs.
# These manpages will be automatically listed in ${PLIST}. Depending
@@ -498,58 +521,68 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# appropriate directories. (Use this even if the port
# installs its own manpage links so they will show up
# correctly in ${PLIST}.)
-# MANPREFIX - The directory prefix for ${MAN<sect>} and ${MLINKS}
-# (default: ${PREFIX}).
-# MAN<sect>PREFIX - If manual pages of some sections install in different
-# locations than others, use these (default: ${MANPREFIX}).
-# MANCOMPRESSED - This variable can take values "yes", "no" or
+# MANPREFIX - The directory prefix for ${MAN<sect>} and ${MLINKS}.
+# Default: ${PREFIX}
+# MAN<sect>PREFIX
+# - If manual pages of some sections install in different
+# locations than others, use these.
+# Default: ${MANPREFIX}
+# MANCOMPRESSED - This variable can take values "yes", "no" or
# "maybe". "yes" means manpages are installed
# compressed; "no" means they are not; "maybe" means
-# it changes depending on the value of
-# NOMANCOMPRESS. The default is "yes" if USE_IMAKE
-# is set and NO_INSTALL_MANPAGES is not set, and
-# "no" otherwise.
+# it changes depending on the value of NOMANCOMPRESS.
+# Default: "yes" if USE_IMAKE is set and NO_INSTALL_MANPAGES
+# is not set, and "no" otherwise.
#
# Set the following to specify all .info files your port installs.
#
# INFO - A list of .info files (omitting the trailing ".info");
# only one entry per document!
# INFO_PATH - Path, where all .info files will be installed by your
-# port, relative to ${PREFIX} (default: "share/info" if
-# ${PREFIX} is equal to /usr and "info" otherwise).
+# port, relative to ${PREFIX}
+# Default: "share/info" if ${PREFIX} is equal to /usr
+# and "info" otherwise).
#
# Set the following to specify all documentation your port installs into
# ${DOCSDIR}
#
# PORTDOCS - A list of files and directories relative to DOCSDIR.
-# Shell glob patterns can be used, directories include
-# the entire subtree of contained files and directories.
-# Should not be set when no documentation files are
-# installed (for example because NOPORTDOCS is defined).
-# Useful for dynamically generated documentation.
+# Shell glob patterns can be used, directories include
+# the entire subtree of contained files and directories.
+# Should not be set when no documentation files are
+# installed (for example because NOPORTDOCS is defined).
+# Useful for dynamically generated documentation.
#
# Default targets and their behaviors:
#
# fetch - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined)
# into ${DISTDIR} as necessary.
# fetch-list - Show list of files that would be retrieved by fetch.
-# fetch-recursive - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
+# fetch-recursive
+# - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
# for port and dependencies into ${DISTDIR} as necessary.
-# fetch-recursive-list - Show list of files that would be retrieved by
+# fetch-recursive-list
+# - Show list of files that would be retrieved by
# fetch-recursive.
-# fetch-required-list - Show list of files that would be retrieved by
+# fetch-required-list
+# - Show list of files that would be retrieved by
# fetch-required.
-# fetch-required - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
+# fetch-required
+# - Retrieves ${DISTFILES} (and ${PATCHFILES} if defined),
# for port and dependencies that are not already installed
# into ${DISTDIR}.
-# all-depends-list - Show all directories which are dependencies
-# for this port.
-# build-depends-list - Show all directories which are build-dependencies
-# for this port.
-# package-depends-list - Show all directories which are
-# package-dependencies for this port.
-# run-depends-list - Show all directories which are run-dependencies
-# for this port.
+# all-depends-list
+# - Show all directories which are dependencies
+# for this port.
+# build-depends-list
+# - Show all directories which are build-dependencies
+# for this port.
+# package-depends-list
+# - Show all directories which are
+# package-dependencies for this port.
+# run-depends-list
+# - Show all directories which are run-dependencies
+# for this port.
#
# extract - Unpacks ${DISTFILES} into ${WRKDIR}.
# patch - Apply any provided patches to the source.
@@ -562,22 +595,24 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# deinstall - Remove the installation.
# deinstall-all - Remove all installations with the same PKGORIGIN.
# package - Create a package from an _installed_ port.
-# package-recursive - Create a package for a port and _all_ of its dependancies.
+# package-recursive
+# - Create a package for a port and _all_ of its dependancies.
# describe - Try to generate a one-line description for each port for
# use in INDEX files and the like.
# checkpatch - Do a "patch -C" instead of a "patch". Note that it may
# give incorrect results if multiple patches deal with
# the same file.
# checksum - Use distinfo to ensure that your distfiles are valid.
-# checksum-recursive - Run checksum in this port and all dependencies.
+# checksum-recursive
+# - Run checksum in this port and all dependencies.
# makesum - Generate distinfo (only do this for your own ports!).
-# clean - Remove ${WRKDIR} and other temporary files used for building.
+# clean - Remove ${WRKDIR} and other temporary files used for building.
# clean-depends - Do a "make clean" for all dependencies.
-# config - Configure options for this port (using ${DIALOG}).
-# Automatically run prior to extract, patch, configure, build,
-# install, and package.
+# config - Configure options for this port (using ${DIALOG}).
+# Automatically run prior to extract, patch, configure, build,
+# install, and package.
# showconfig - Display options config for this port
-# rmconfig - Remove the options config for this port
+# rmconfig - Remove the options config for this port
#
# Default sequence for "all" is:
#
@@ -603,144 +638,178 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# Here are some variables used in various stages.
#
# For options:
-# OPTIONS - List of what WITH_<option> options this port accept. The
-# format is <option> "<description>" [on|off]
-# Example:
-# FLEXRESP "Flexible response to events" off
-# which tell that an option WITH_FLEXRESP exists for this port,
-# that by default it is not defined, and that the description to
-# show to a user in the config dialog is "Flexible response to
-# events". If you have more than one option, just chain them
-# into a single variable. NOTE: To make options work, you need
-# to include bsd.port.pre.mk before you start testing the
-# WITH_xyz variables.
+# OPTIONS - List of what WITH_<option> options this port accept. The
+# format is <option> "<description>" [on|off]
+# Example:
+# FLEXRESP "Flexible response to events" off
+# which tell that an option WITH_FLEXRESP exists for this port,
+# that by default it is not defined, and that the description to
+# show to a user in the config dialog is "Flexible response to
+# events". If you have more than one option, just chain them
+# into a single variable. NOTE: To make options work, you need
+# to include bsd.port.pre.mk before you start testing the
+# WITH_xyz variables.
#
# For fetch:
#
-# FETCH_CMD - Full path to ftp/http fetch command if not in $PATH
-# (default: "/usr/bin/fetch -ARr").
-# FETCH_BEFORE_ARGS -
-# Arguments to ${FETCH_CMD} before filename (default: none).
-# FETCH_AFTER_ARGS -
-# Arguments to ${FETCH_CMD} following filename (default: none).
-# FETCH_ENV - Environment to pass to ${FETCH_CMD} (default: none).
-# FETCH_REGET - Times to retry fetching of files on checksum errors (default: 1).
+# FETCH_CMD - Full path to ftp/http fetch command if not in $PATH.
+# Default: "/usr/bin/fetch -ARr"
+# FETCH_BEFORE_ARGS
+# - Arguments to ${FETCH_CMD} before filename.
+# Default: none
+# FETCH_AFTER_ARGS
+# - Arguments to ${FETCH_CMD} following filename.
+# Default: none
+# FETCH_ENV - Environment to pass to ${FETCH_CMD}.
+# Default: none
+# FETCH_REGET - Times to retry fetching of files on checksum errors.
+# Default: 1
#
# For extract:
#
-# EXTRACT_CMD - Command for extracting archive (default: "bzip2" if
-# USE_BZIP2 is set, "unzip" if USE_ZIP is set, "gzip"
-# otherwise).
-# EXTRACT_BEFORE_ARGS -
-# Arguments to ${EXTRACT_CMD} before filename
-# (default: "-dc").
-# EXTRACT_AFTER_ARGS -
-# Arguments to ${EXTRACT_CMD} following filename
-# (default: "| tar -xf -").
-# EXTRACT_PRESERVE_OWNERSHIP -
-# Normally, when run as "root", the extract stage will
+# EXTRACT_CMD - Command for extracting archive: "bzip2" if USE_BZIP2
+# is set, "unzip" if USE_ZIP is set, "gzip" otherwise.
+# EXTRACT_BEFORE_ARGS
+# - Arguments to ${EXTRACT_CMD} before filename.
+# Default: "-dc"
+# EXTRACT_AFTER_ARGS
+# - Arguments to ${EXTRACT_CMD} following filename.
+# default: "| tar -xf -"
+# EXTRACT_PRESERVE_OWNERSHIP
+# - Normally, when run as "root", the extract stage will
# change the owner and group of all files under ${WRKDIR}
# to 0:0. Set this variable if you want to turn off this
# feature.
#
# For makesum:
#
-# NO_SIZE - Don't record size data in distinfo, needed
+# NO_SIZE - Don't record size data in distinfo, needed
# when the master site does not report file
# sizes, or when multiple valid versions of
# a distfile, having different sizes, exist.
#
# For patch:
#
-# EXTRA_PATCHES - Define this variable if you have patches not in
+# EXTRA_PATCHES - Define this variable if you have patches not in
# ${PATCHDIR}. This usually happens when you need to
# do some pre-processing before some distribution
# patches can be applied. In that case, fetch them as
# extra distfiles, put the processed results in
# ${WRKDIR}, then point EXTRA_PATCHES to them.
-#
# The patches specified by this variable will be
# applied after the normal distribution patches but
# before those in ${PATCHDIR}.
-# PATCH_WRKSRC - Directory to apply patches in (default: ${WRKSRC}).
+# PATCH_WRKSRC - Directory to apply patches in.
+# Default: ${WRKSRC}
#
# For configure:
#
-# HAS_CONFIGURE - Says that the port has its own configure script. The
+# HAS_CONFIGURE - If set, this port has its own configure script. The
# configure stage will not do anything if this is not set.
-# GNU_CONFIGURE - Set if you are using GNU configure (optional). Implies
+# GNU_CONFIGURE - If set, you are using GNU configure (optional). Implies
# HAS_CONFIGURE.
-# PERL_CONFIGURE - Configure using Perl's MakeMaker. Implies USE_PERL5.
-# CONFIGURE_WRKSRC - Directory to run configure in (default: ${WRKSRC}).
-# CONFIGURE_SCRIPT - Name of configure script, relative to ${CONFIGURE_WRKSRC}
-# (default: "Makefile.PL" if PERL_CONFIGURE is set,
-# "configure" otherwise).
-# CONFIGURE_TARGET - The name of target to call when GNU_CONFIGURE is
-# defined (default: ${MACHINE_ARCH}-portbld-freebsd${OSREL}).
-# CONFIGURE_ARGS - Pass these args to configure if ${HAS_CONFIGURE} is set
-# (default: "--prefix=${PREFIX} ${CONFIGURE_TARGET}" if
+# PERL_CONFIGURE
+# - Configure using Perl's MakeMaker. Implies USE_PERL5.
+# CONFIGURE_WRKSRC
+# - Directory to run configure in.
+# Default: ${WRKSRC}
+# CONFIGURE_SCRIPT
+# - Name of configure script, relative to ${CONFIGURE_WRKSRC}.
+# Default: "Makefile.PL" if PERL_CONFIGURE is set,
+# "configure" otherwise.
+# CONFIGURE_TARGET
+# - The name of target to call when GNU_CONFIGURE is
+# defined.
+# Default: ${MACHINE_ARCH}-portbld-freebsd${OSREL}
+# CONFIGURE_ARGS
+# - Pass these args to configure if ${HAS_CONFIGURE} is set.
+# Default: "--prefix=${PREFIX} ${CONFIGURE_TARGET}" if
# GNU_CONFIGURE is set, "CC=${CC} CCFLAGS=${CFLAGS}
# PREFIX=${PREFIX} INSTALLPRIVLIB=${PREFIX}/lib
# INSTALLARCHLIB=${PREFIX}/lib" if PERL_CONFIGURE is set,
-# empty otherwise).
-# CONFIGURE_ENV - Pass these env (shell-like) to configure if
+# empty otherwise.
+# CONFIGURE_ENV - Pass these env (shell-like) to configure if
# ${HAS_CONFIGURE} is set.
-# CONFIGURE_LOG - The name of configure log file (default: config.log).
-# It will be printed to the screen if configure fails.
-# CONFIGURE_FAIL_MESSAGE - A message displayed to users when configure
-# fails (note: this assumes the do-configure
-# target has not been overwritten). This message
-# will be passed through /usr/bin/fmt before
-# being shown to the user.
+# CONFIGURE_LOG - The name of configure log file. It will be printed to
+# the screen if configure fails.
+# Default: config.log
+# CONFIGURE_FAIL_MESSAGE
+# - A message displayed to users when configure
+# fails (note: this assumes the do-configure
+# target has not been overwritten). This message
+# will be passed through /usr/bin/fmt before
+# being shown to the user.
#
# For build and install:
#
-# MAKEFILE - Name of the makefile (default: Makefile).
-# ALL_TARGET - Default target for sub-make in build stage (default: all).
-# BUILD_WRKSRC - Directory to do build in (default: ${WRKSRC}).
+# MAKEFILE - Name of the makefile.
+# Default: Makefile
+# ALL_TARGET - Default target for sub-make in build stage.
+# Default: all
+# BUILD_WRKSRC - Directory to do build in (default: ${WRKSRC}).
# MAKE_ENV - Additional environment vars passed to sub-make in build
-# and install stages (default: see below).
-# MAKE_ARGS - Any extra arguments to sub-make in build and install
-# stages (default: none).
+# and install stages.
+# Default: see below
+# MAKE_ARGS - Any extra arguments to sub-make in build and install stages.
+# Default: none
#
# For install:
#
-# INSTALL_TARGET - Default target for sub-make in install stage
-# (default: install).
-# INSTALL_WRKSRC - Directory to install from (default: ${WRKSRC}).
+# INSTALL_TARGET
+# - Default target for sub-make in install stage.
+# Default: install
+# INSTALL_WRKSRC
+# - Directory to install from
+# Default: ${WRKSRC}
# NO_MTREE - If set, will not invoke mtree from bsd.port.mk from
# the "install" target.
-# MTREE_FILE - The name of the mtree file (default: /etc/mtree/BSD.x11.dist
-# if USE_X_PREFIX is set, /etc/mtree/BSD.local.dist
-# otherwise.)
-# PLIST_DIRS - Directories to be added to packing list
-# PLIST_FILES - Files and symbolic links to be added to packing list
+# MTREE_FILE - The name of the mtree file.
+# Default: /etc/mtree/BSD.x11.dist if USE_X_PREFIX is set,
+# /etc/mtree/BSD.local.dist otherwise.
+# PLIST_DIRS - Directories to be added to packing list
+# PLIST_FILES - Files and symbolic links to be added to packing list
#
-# PLIST - Name of the `packing list' file (default: ${PKGDIR}/pkg-plist).
+# PLIST - Name of the `packing list' file.
# Change this to ${WRKDIR}/PLIST or something if you
# need to write to it. (It is not a good idea for a port
# to write to any file outside ${WRKDIR} during a normal
# build.)
+# Default: ${PKGDIR}/pkg-plist
# TMPPLIST - Name of the `packing list' file after processing
-# (default: ${WRKDIR}/.PLIST.mktmp).
+# Default: ${WRKDIR}/.PLIST.mktmp
# PLIST_SUB - List of "variable=value" pair for substitution in ${PLIST}
-# (default: see below).
-# INSTALLS_SHLIB - If set, bsd.port.mk will automatically run ldconfig commands
+# Default: see below
+#
+# SUB_FILES - Files that should be passed through sed and redirected to
+# ${WRKDIR}.
+# - For each file specified in SUB_FILES, there must be a
+# corresponding file in ${FILESDIR} whose suffix is ".in". For
+# instance, if the Makefile specifies "SUB_FILES= pkg-message"
+# then there must be a file called pkg-message.in in
+# ${FILESDIR}.
+# - The substitution process is the same as PLIST_FILES, as
+# described below except that any line beginning with @comment
+# is deleted.
+# SUB_LIST - List of "variable=value" pair for substitution in ${SUB_FILES}
+# Some pairs are added by default: eg. PREFIX=${PREFIX})
+#
+# INSTALLS_SHLIB
+# - If set, bsd.port.mk will automatically run ldconfig commands
# from post-install and also add appropriate @exec/@unexec
# directives to directories listed in LDCONFIG_DIRS.
-# LDCONFIG_DIRS - List of directories to run ldconfig if
-# INSTALLS_SHLIB is set (default: %%PREFIX%%/lib).
+# LDCONFIG_DIRS - List of directories to run ldconfig if INSTALLS_SHLIB is set.
# Note that this is passed through sed just like the
# rest of PLIST, so ${PLIST_SUB} substitutions also
# apply here. It is recommended that you use
# %%PREFIX%% for ${PREFIX}, %%LOCALBASE%% for
# ${LOCALBASE} and %%X11BASE%% for ${X11BASE}.
-# DOCSDIR - Name of the directory to install the packages docs in
-# (default: ${PREFIX}/share/doc/${PORTNAME}).
-# EXAMPLESDIR - Name of the directory to install the packages examples in
-# (default: ${PREFIX}/share/examples/${PORTNAME}).
-# DATADIR - Name of the directory to install the packages shared data
-# in (default: ${PREFIX}/share/${PORTNAME}).
+# Default: %%PREFIX%%/lib
+# DOCSDIR - Name of the directory to install the packages docs in.
+# Default: ${PREFIX}/share/doc/${PORTNAME}
+# EXAMPLESDIR - Name of the directory to install the packages examples in.
+# Default: ${PREFIX}/share/examples/${PORTNAME}
+# DATADIR - Name of the directory to install the packages shared data in.
+# Default: ${PREFIX}/share/${PORTNAME}
#
# Note that the install target will automatically add manpages (see
# above) and also substitute special sequences of characters (delimited
@@ -753,43 +822,51 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
#
# For package:
#
-# NO_LATEST_LINK - Do not install the "Latest" link for package. Define this
+# NO_LATEST_LINK
+# - Do not install the "Latest" link for package. Define this
# if this port is a beta version of another stable port
# which is also in the tree.
-# LATEST_LINK - Install the "Latest" link for the package as ___. Define
-# this if the "Latest" link name will be incorrectly determined.
+# LATEST_LINK - Install the "Latest" link for the package as ___. Define
+# this if the "Latest" link name will be incorrectly determined.
#
# This is used in all stages:
#
# SCRIPTS_ENV - Additional environment vars passed to scripts in
-# ${SCRIPTDIR} executed by bsd.port.mk (default: see below).
+# ${SCRIPTDIR} executed by bsd.port.mk.
+# Default: see below
#
# Finally, variables to change if you want a special behavior. These
# are for debugging purposes. Don't set them in your Makefile.
#
# ECHO_MSG - Used to print all the '===>' style prompts - override this
-# to turn them off (default: ${ECHO_CMD}).
+# to turn them off.
+# Default: ${ECHO_CMD}
# PATCH_DEBUG - If set, print out more information about the patches as
# it attempts to apply them.
# PKG_DBDIR - Where package installation is recorded; this directory
-# must not contain anything else (default: /var/db/pkg).
-# PORT_DBDIR - Where port configuration options are recorded
-# (default: /var/db/ports)
-# NO_PKG_REGISTER - Don't register a port installation as a package.
-# FORCE_PKG_REGISTER - If set, it will overwrite any existing package
+# must not contain anything else.
+# Default: /var/db/pkg
+# PORT_DBDIR - Where port configuration options are recorded.
+# Default: /var/db/ports
+# NO_PKG_REGISTER
+# - Don't register a port installation as a package.
+# FORCE_PKG_REGISTER
+# - If set, it will overwrite any existing package
# registration information in ${PKG_DBDIR}/${PKGNAME}.
# NO_DEPENDS - Don't verify build of dependencies.
# NO_CHECKSUM - Don't verify the checksum. Typically used when
# when you noticed the distfile you just fetched has
# a different checksum and you intend to verify if
# the port still works with it.
-# USE_PACKAGE_DEPENDS - Install dependencies from existing packages instead
+# USE_PACKAGE_DEPENDS
+# - Install dependencies from existing packages instead
# of building the port from scratch.
-# INSTALL_AS_USER - Define this to install as the current user, intended
-# for systems where you have no root access.
-# DISABLE_SIZE - Do not check the size of a distfile even if the SIZE field
-# has been specified in distinfo. This is useful
-# when using an alternate FETCH_CMD.
+# INSTALL_AS_USER
+# - Define this to install as the current user, intended
+# for systems where you have no root access.
+# DISABLE_SIZE - Do not check the size of a distfile even if the SIZE field
+# has been specified in distinfo. This is useful
+# when using an alternate FETCH_CMD.
#
# End of the list of all variables that need to be defined in a port.
# Most port authors should not need to understand anything after this point.
@@ -831,6 +908,7 @@ COMM?= /usr/bin/comm
CP?= /bin/cp
CPIO?= /usr/bin/cpio
CUT?= /usr/bin/cut
+DATE?= /bin/date
DC?= /usr/bin/dc
DIALOG?= /usr/bin/dialog
DIRNAME?= /usr/bin/dirname
@@ -839,6 +917,7 @@ EXPR?= /bin/expr
FALSE?= false # Shell builtin
FILE?= /usr/bin/file
FIND?= /usr/bin/find
+FMT?= /usr/bin/fmt
GREP?= /usr/bin/grep
GUNZIP_CMD?= /usr/bin/gunzip -f
GZCAT?= /usr/bin/gzcat
@@ -851,8 +930,10 @@ LDCONFIG?= /sbin/ldconfig
LN?= /bin/ln
LS?= /bin/ls
MKDIR?= /bin/mkdir -p
+MKTEMP?= /usr/bin/mktemp
MV?= /bin/mv
OBJCOPY?= /usr/bin/objcopy
+OBJDUMP?= /usr/bin/objdump
PASTE?= /usr/bin/paste
PAX?= /bin/pax
PRINTF?= /usr/bin/printf
@@ -1017,7 +1098,9 @@ X11BASE?= ${DESTDIR}/usr/X11R6
LINUXBASE?= ${DESTDIR}/compat/linux
DISTDIR?= ${PORTSDIR}/distfiles
_DISTDIR?= ${DISTDIR}/${DIST_SUBDIR}
-.if ${OSVERSION} >= 500036
+.if ${OSVERSION} >= 600000
+INDEXFILE?= INDEX-6
+.elif ${OSVERSION} >= 500036
INDEXFILE?= INDEX-5
.else
INDEXFILE?= INDEX
@@ -1227,6 +1310,8 @@ BUILD_WRKSRC?= ${WRKSRC}
INSTALL_WRKSRC?=${WRKSRC}
PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE} X11BASE=${X11BASE}
+SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} \
+ DATADIR=${DATADIR} DOCSDIR=${DOCSDIR} EXAMPLESDIR=${EXAMPLESDIR}
.if defined(WITHOUT_CPU_CFLAGS)
.if defined(_CPUCFLAGS)
@@ -1597,14 +1682,6 @@ BROKEN= "unknown MySQL version: ${MYSQL_VER}"
.endif # Check for correct libs
.endif # USE_MYSQL
-.if defined(USE_XLIB)
-LIB_DEPENDS+= X11.6:${X_LIBRARIES_PORT}
-# Add explicit X options to avoid problems with false positives in configure
-.if defined(GNU_CONFIGURE)
-CONFIGURE_ARGS+=--x-libraries=${X11BASE}/lib --x-includes=${X11BASE}/include
-.endif
-.endif
-
# XXX: (not yet): .if defined(USE_AUTOTOOLS)
.include "${PORTSDIR}/Mk/bsd.autotools.mk"
# XXX: (not yet): .endif
@@ -1626,6 +1703,14 @@ CONFIGURE_ARGS+=--x-libraries=${X11BASE}/lib --x-includes=${X11BASE}/include
USE_SUBMAKE= yes
.endif
+.if defined(USE_XLIB)
+LIB_DEPENDS+= X11.6:${X_LIBRARIES_PORT}
+# Add explicit X options to avoid problems with false positives in configure
+.if defined(GNU_CONFIGURE)
+CONFIGURE_ARGS+=--x-libraries=${X11BASE}/lib --x-includes=${X11BASE}/include
+.endif
+.endif
+
# Set the default for the installation of Postscript(TM)-
# compatible functionality.
.if !defined(WITHOUT_X11)
@@ -1903,7 +1988,7 @@ PKGINSTALLVER!= ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //'
DISABLE_CONFLICTS= YES
.endif
.if !defined(PKG_ARGS)
-PKG_ARGS= -v -c -${COMMENT:Q} -d ${DESCR} -f ${TMPPLIST} -p ${PREFIX} -P "`cd ${.CURDIR} && ${MAKE} package-depends | ${GREP} -v -E ${PKG_IGNORE_DEPENDS} | sort -u`" ${EXTRA_PKG_ARGS} $${_LATE_PKG_ARGS}
+PKG_ARGS= -v -c -${COMMENT:Q} -d ${DESCR} -f ${TMPPLIST} -p ${PREFIX} -P "`cd ${.CURDIR} && ${MAKE} package-depends | ${GREP} -v -E ${PKG_IGNORE_DEPENDS} | ${SORT} -u`" ${EXTRA_PKG_ARGS} $${_LATE_PKG_ARGS}
.if !defined(NO_MTREE)
PKG_ARGS+= -m ${MTREE_FILE}
.endif
@@ -2868,20 +2953,20 @@ check-vulnerable:
@if [ -f "${AUDITFILE}" ]; then \
audit_created=`${_EXTRACT_AUDITFILE} | \
${SED} -nEe "1s/^#CREATED: *([0-9]{4})-?([0-9]{2})-?([0-9]{2}).*$$/\1\2\3/p"`; \
- audit_expiry=`date -u -v-14d "+%Y%m%d"`; \
+ audit_expiry=`${DATE} -u -v-14d "+%Y%m%d"`; \
if [ "$$audit_created" -lt "$$audit_expiry" ]; then \
${ECHO_MSG} "===> WARNING: Vulnerability database out of date, checking anyway"; \
fi; \
vlist=`${_EXTRACT_AUDITFILE} | ${AWK} -F\| ' \
/^[^#]/ { \
if (!system("${PKG_VERSION} -T \"${PKGNAME}\" \"" $$1 "\"")) \
- print ">> " $$3 ".\n Reference: <" $$2 ">" \
+ print "=> " $$3 ".\n Reference: <" $$2 ">" \
} \
'`; \
if [ -n "$$vlist" ]; then \
${ECHO_MSG} "===> ${PKGNAME} has known vulnerabilities:"; \
${ECHO_MSG} "$$vlist"; \
- ${ECHO_MSG} ">> Please update your ports tree and try again."; \
+ ${ECHO_MSG} "=> Please update your ports tree and try again."; \
exit 1; \
fi; \
else \
@@ -2913,22 +2998,22 @@ do-fetch:
DIR=${DIST_SUBDIR}; \
pattern="$${DIR:+$$DIR/}`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \
if [ -L $$file -o -L $$filebasename ]; then \
- ${ECHO_MSG} ">> ${_DISTDIR}/$$file is a broken symlink."; \
- ${ECHO_MSG} ">> Perhaps a filesystem (most likely a CD) isn't mounted?"; \
- ${ECHO_MSG} ">> Please correct this problem and try again."; \
+ ${ECHO_MSG} "=> ${_DISTDIR}/$$file is a broken symlink."; \
+ ${ECHO_MSG} "=> Perhaps a filesystem (most likely a CD) isn't mounted?"; \
+ ${ECHO_MSG} "=> Please correct this problem and try again."; \
exit 1; \
fi ; \
if [ -f ${MD5_FILE} -a "x${NO_CHECKSUM}" = "x" ]; then \
if ! ${GREP} -q "^MD5 ($$pattern)" ${MD5_FILE}; then \
- ${ECHO_MSG} ">> $${DIR:+$$DIR/}$$file is not in ${MD5_FILE}."; \
- ${ECHO_MSG} ">> Either ${MD5_FILE} is out of date, or"; \
- ${ECHO_MSG} ">> $${DIR:+$$DIR/}$$file is spelled incorrectly."; \
+ ${ECHO_MSG} "=> $${DIR:+$$DIR/}$$file is not in ${MD5_FILE}."; \
+ ${ECHO_MSG} "=> Either ${MD5_FILE} is out of date, or"; \
+ ${ECHO_MSG} "=> $${DIR:+$$DIR/}$$file is spelled incorrectly."; \
exit 1; \
fi; \
fi; \
- ${ECHO_MSG} ">> $$file doesn't seem to exist in ${_DISTDIR}."; \
+ ${ECHO_MSG} "=> $$file doesn't seem to exist in ${_DISTDIR}."; \
if [ ! -w ${DISTDIR} ]; then \
- ${ECHO_MSG} ">> ${DISTDIR} is not writable by you; cannot fetch."; \
+ ${ECHO_MSG} "=> ${DISTDIR} is not writable by you; cannot fetch."; \
exit 1; \
fi; \
if [ ! -z "$$select" ] ; then \
@@ -2945,7 +3030,7 @@ do-fetch:
SORTED_MASTER_SITES_CMD_TMP="${SORTED_MASTER_SITES_DEFAULT_CMD}" ; \
fi ; \
for site in `eval $$SORTED_MASTER_SITES_CMD_TMP ${_RANDOMIZE_SITES}`; do \
- ${ECHO_MSG} ">> Attempting to fetch from $${site}."; \
+ ${ECHO_MSG} "=> Attempting to fetch from $${site}."; \
DIR=${DIST_SUBDIR}; \
CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
case $${file} in \
@@ -2957,8 +3042,8 @@ do-fetch:
continue 2; \
fi \
done; \
- ${ECHO_MSG} ">> Couldn't fetch it - please try to retrieve this";\
- ${ECHO_MSG} ">> port manually into ${_DISTDIR} and try again."; \
+ ${ECHO_MSG} "=> Couldn't fetch it - please try to retrieve this";\
+ ${ECHO_MSG} "=> port manually into ${_DISTDIR} and try again."; \
exit 1; \
fi \
done)
@@ -2978,12 +3063,12 @@ do-fetch:
done; \
if [ ! -f $$file -a ! -f $$filebasename -o "$$force_fetch" = "true" ]; then \
if [ -L $$file -o -L `${BASENAME} $$file` ]; then \
- ${ECHO_MSG} ">> ${_DISTDIR}/$$file is a broken symlink."; \
- ${ECHO_MSG} ">> Perhaps a filesystem (most likely a CD) isn't mounted?"; \
- ${ECHO_MSG} ">> Please correct this problem and try again."; \
+ ${ECHO_MSG} "=> ${_DISTDIR}/$$file is a broken symlink."; \
+ ${ECHO_MSG} "=> Perhaps a filesystem (most likely a CD) isn't mounted?"; \
+ ${ECHO_MSG} "=> Please correct this problem and try again."; \
exit 1; \
fi ; \
- ${ECHO_MSG} ">> $$file doesn't seem to exist in ${_DISTDIR}."; \
+ ${ECHO_MSG} "=> $$file doesn't seem to exist in ${_DISTDIR}."; \
if [ ! -z "$$select" ] ; then \
__PATCH_SITES_TMP= ; \
for group in $$select; do \
@@ -2998,7 +3083,7 @@ do-fetch:
SORTED_PATCH_SITES_CMD_TMP="${SORTED_PATCH_SITES_DEFAULT_CMD}" ; \
fi ; \
for site in `eval $$SORTED_PATCH_SITES_CMD_TMP`; do \
- ${ECHO_MSG} ">> Attempting to fetch from $${site}."; \
+ ${ECHO_MSG} "=> Attempting to fetch from $${site}."; \
DIR=${DIST_SUBDIR}; \
pattern="$${DIR:+$$DIR/}`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \
CKSIZE=`${GREP} "^SIZE ($$pattern)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
@@ -3011,8 +3096,8 @@ do-fetch:
continue 2; \
fi \
done; \
- ${ECHO_MSG} ">> Couldn't fetch it - please try to retrieve this";\
- ${ECHO_MSG} ">> port manually into ${_DISTDIR} and try again."; \
+ ${ECHO_MSG} "=> Couldn't fetch it - please try to retrieve this";\
+ ${ECHO_MSG} "=> port manually into ${_DISTDIR} and try again."; \
exit 1; \
fi \
done)
@@ -3085,9 +3170,9 @@ do-patch:
if ${PATCH} ${PATCH_ARGS} < $$i ; then \
PATCHES_APPLIED="$$PATCHES_APPLIED $$i" ; \
else \
- ${ECHO_MSG} `${ECHO_CMD} ">> Patch $$i failed to apply cleanly." | ${SED} "s|${PATCHDIR}/||"` ; \
+ ${ECHO_MSG} `${ECHO_CMD} "=> Patch $$i failed to apply cleanly." | ${SED} "s|${PATCHDIR}/||"` ; \
if [ x"$$PATCHES_APPLIED" != x"" ]; then \
- ${ECHO_MSG} `${ECHO_CMD} ">> Patch(es) $$PATCHES_APPLIED applied cleanly." | ${SED} "s|${PATCHDIR}/||g"` ; \
+ ${ECHO_MSG} `${ECHO_CMD} "=> Patch(es) $$PATCHES_APPLIED applied cleanly." | ${SED} "s|${PATCHDIR}/||g"` ; \
fi; \
${FALSE} ; \
fi; \
@@ -3126,7 +3211,7 @@ do-configure:
INSTALL_SCRIPT="${INSTALL_SCRIPT}" \
${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}; then \
${ECHO_CMD} "===> Script \"${CONFIGURE_SCRIPT}\" failed unexpectedly."; \
- (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | /usr/bin/fmt 75 79 ; \
+ (${ECHO_CMD} ${CONFIGURE_FAIL_MESSAGE}) | ${FMT} 75 79 ; \
${FALSE}; \
fi)
.endif
@@ -3225,7 +3310,7 @@ do-package: ${TMPPLIST}
@if [ -d ${PACKAGES} ]; then \
if [ ! -d ${PKGREPOSITORY} ]; then \
if ! ${MKDIR} ${PKGREPOSITORY}; then \
- ${ECHO_MSG} ">> Can't create directory ${PKGREPOSITORY}."; \
+ ${ECHO_MSG} "=> Can't create directory ${PKGREPOSITORY}."; \
exit 1; \
fi; \
fi; \
@@ -3261,7 +3346,7 @@ package-links: delete-package-links
@for cat in ${CATEGORIES}; do \
if [ ! -d ${PACKAGES}/$$cat ]; then \
if ! ${MKDIR} ${PACKAGES}/$$cat; then \
- ${ECHO_MSG} ">> Can't create directory ${PACKAGES}/$$cat."; \
+ ${ECHO_MSG} "=> Can't create directory ${PACKAGES}/$$cat."; \
exit 1; \
fi; \
fi; \
@@ -3270,7 +3355,7 @@ package-links: delete-package-links
.if !defined(NO_LATEST_LINK)
@if [ ! -d ${PKGLATESTREPOSITORY} ]; then \
if ! ${MKDIR} ${PKGLATESTREPOSITORY}; then \
- ${ECHO_MSG} ">> Can't create directory ${PKGLATESTREPOSITORY}."; \
+ ${ECHO_MSG} "=> Can't create directory ${PKGLATESTREPOSITORY}."; \
exit 1; \
fi; \
fi
@@ -3426,7 +3511,7 @@ security-check:
| ${XARGS} -0 -J % ${FIND} % -prune -perm -0002 \! -type l 2> /dev/null > ${WRKDIR}/.PLIST.writable; \
${TR} '\n' '\0' < ${WRKDIR}/.PLIST.flattened \
| ${XARGS} -0 -J % ${FIND} % -prune ! -type l -type f -print0 2> /dev/null \
- | ${XARGS} -0 -n 1 /usr/bin/objdump -R 2> /dev/null > ${WRKDIR}/.PLIST.objdump; \
+ | ${XARGS} -0 -n 1 ${OBJDUMP} -R 2> /dev/null > ${WRKDIR}/.PLIST.objdump; \
if \
! ${AWK} -v audit="$${PORTS_AUDIT}" -f ${PORTSDIR}/Tools/scripts/security-check.awk \
${WRKDIR}/.PLIST.flattened ${WRKDIR}/.PLIST.objdump ${WRKDIR}/.PLIST.setuid ${WRKDIR}/.PLIST.writable; \
@@ -3460,7 +3545,7 @@ security-check:
fi; \
for i in `${GREP} -v '^@' ${TMPPLIST}`; do \
if [ ! -L "${PREFIX}/$$i" -a -f "${PREFIX}/$$i" ]; then \
- /usr/bin/objdump -R ${PREFIX}/$$i > \
+ ${OBJDUMP} -R ${PREFIX}/$$i > \
${WRKDIR}/.PLIST.objdump 2> /dev/null; \
if [ -s ${WRKDIR}/.PLIST.objdump ] ; then \
${EGREP} " $$stupid_functions_regexp" \
@@ -3572,11 +3657,11 @@ _BUILD_SEQ= build-message pre-build pre-build-script do-build \
_INSTALL_DEP= build
_INSTALL_SEQ= install-message check-conflicts \
run-depends lib-depends pre-install pre-install-script \
- generate-plist check-already-installed
+ apply-slist generate-plist check-already-installed
_INSTALL_SUSEQ= check-umask install-mtree pre-su-install \
pre-su-install-script do-install post-install \
post-install-script add-plist-info add-plist-docs \
- compress-man run-ldconfig fake-pkg security-check
+ add-plist-post compress-man run-ldconfig fake-pkg security-check
_PACKAGE_DEP= install
_PACKAGE_SEQ= package-message pre-package pre-package-script \
do-package post-package-script
@@ -3973,10 +4058,10 @@ checksum: fetch
CKSUM=`${MD5} < $$file`; \
CKSUM2=`${GREP} "^MD5 ($$pattern)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
if [ -z "$$CKSUM2" ]; then \
- ${ECHO_MSG} ">> No checksum recorded for $$file."; \
+ ${ECHO_MSG} "=> No checksum recorded for $$file."; \
OK="false"; \
elif [ "$$CKSUM2" = "IGNORE" ]; then \
- ${ECHO_MSG} ">> Checksum for $$file is set to IGNORE in distinfo file even though"; \
+ ${ECHO_MSG} "=> Checksum for $$file is set to IGNORE in distinfo file even though"; \
${ECHO_MSG} " the file is not in the "'$$'"{IGNOREFILES} list."; \
OK="false"; \
else \
@@ -3988,9 +4073,9 @@ checksum: fetch
fi; \
done; \
if $$ckmatch; then \
- ${ECHO_MSG} ">> Checksum OK for $$file."; \
+ ${ECHO_MSG} "=> Checksum OK for $$file."; \
else \
- ${ECHO_MSG} ">> Checksum mismatch for $$file."; \
+ ${ECHO_MSG} "=> Checksum mismatch for $$file."; \
refetchlist="$$refetchlist$$file "; \
OK="$${OK:-retry}"; \
fi; \
@@ -4000,10 +4085,10 @@ checksum: fetch
pattern="`${ECHO_CMD} $$file | ${SED} -e 's/\./\\\\./g'`"; \
CKSUM2=`${GREP} "($$pattern)" ${MD5_FILE} | ${AWK} '{if(NR<2)print $$4}'`; \
if [ "$$CKSUM2" = "" ]; then \
- ${ECHO_MSG} ">> No checksum recorded for $$file, file is in "'$$'"{IGNOREFILES} list."; \
+ ${ECHO_MSG} "=> No checksum recorded for $$file, file is in "'$$'"{IGNOREFILES} list."; \
OK="false"; \
elif [ "$$CKSUM2" != "IGNORE" ]; then \
- ${ECHO_MSG} ">> Checksum for $$file is not set to IGNORE in distinfo file even though"; \
+ ${ECHO_MSG} "=> Checksum for $$file is not set to IGNORE in distinfo file even though"; \
${ECHO_MSG} " the file is in the "'$$'"{IGNOREFILES} list."; \
OK="false"; \
fi; \
@@ -4011,11 +4096,11 @@ checksum: fetch
if [ "$${OK:=true}" = "retry" ] && [ ${FETCH_REGET} -gt 0 ]; then \
${ECHO_MSG} "===> Refetch for ${FETCH_REGET} more times files: $$refetchlist"; \
if ( cd ${.CURDIR} && \
- ${MAKE} ${.MAKEFLAGS} FORCE_FETCH="$$refetchlist" FETCH_REGET="`expr ${FETCH_REGET} - 1`" fetch); then \
- if ( cd ${.CURDIR} && \
- ${MAKE} ${.MAKEFLAGS} FETCH_REGET="`expr ${FETCH_REGET} - 1`" checksum ); then \
- OK="true"; \
- fi; \
+ ${MAKE} ${.MAKEFLAGS} FORCE_FETCH="$$refetchlist" FETCH_REGET="`${EXPR} ${FETCH_REGET} - 1`" fetch); then \
+ if ( cd ${.CURDIR} && \
+ ${MAKE} ${.MAKEFLAGS} FETCH_REGET="`${EXPR} ${FETCH_REGET} - 1`" checksum ); then \
+ OK="true"; \
+ fi; \
fi; \
fi ; \
if [ "$$OK" != "true" -a ${FETCH_REGET} -eq 0 ]; then \
@@ -4029,7 +4114,7 @@ checksum: fetch
exit 1; \
fi); \
elif [ -n "${_CKSUMFILES:M*}" ]; then \
- ${ECHO_MSG} ">> No checksum file (${MD5_FILE})."; \
+ ${ECHO_MSG} "=> No checksum file (${MD5_FILE})."; \
fi
.endif
@@ -4128,7 +4213,7 @@ ${deptype:L}-depends:
if [ $$notfound != 0 ]; then \
${ECHO_MSG} "===> Verifying $$target for $$prog in $$dir"; \
if [ ! -d "$$dir" ]; then \
- ${ECHO_MSG} " >> No directory for $$prog. Skipping.."; \
+ ${ECHO_MSG} " => No directory for $$prog. Skipping.."; \
else \
if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \
subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
@@ -4184,7 +4269,7 @@ lib-depends:
if [ $$notfound != 0 ]; then \
${ECHO_MSG} "===> Verifying $$target for $$lib in $$dir"; \
if [ ! -d "$$dir" ]; then \
- ${ECHO_MSG} " >> No directory for $$lib. Skipping.."; \
+ ${ECHO_MSG} " => No directory for $$lib. Skipping.."; \
else \
if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \
subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
@@ -4221,7 +4306,7 @@ misc-depends:
${ECHO_MSG} "===> ${PKGNAME} depends on: $$dir"; \
${ECHO_MSG} "===> Verifying $$target for $$dir"; \
if [ ! -d $$dir ]; then \
- ${ECHO_MSG} " >> No directory for $$dir. Skipping.."; \
+ ${ECHO_MSG} " => No directory for $$dir. Skipping.."; \
else \
(cd $$dir; ${MAKE} $$target $$depends_args) ; \
fi \
@@ -4254,7 +4339,7 @@ ALL-DEPENDS-LIST= \
else \
${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
fi; \
- done | sort -u
+ done | ${SORT} -u
.if !target(clean-depends)
clean-depends:
@@ -4358,13 +4443,13 @@ build-depends-list:
.endif
BUILD-DEPENDS-LIST= \
- for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | sort -u) $$(${ECHO_CMD} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | sort -u); do \
+ for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | ${SORT} -u); do \
if [ -d $$dir ]; then \
${ECHO_CMD} $$dir; \
else \
${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
fi; \
- done | sort -u
+ done | ${SORT} -u
run-depends-list:
.if defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS)
@@ -4372,13 +4457,13 @@ run-depends-list:
.endif
RUN-DEPENDS-LIST= \
- for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':' | sort -u) $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':' | sort -u); do \
+ for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':' | ${SORT} -u); do \
if [ -d $$dir ]; then \
${ECHO_CMD} $$dir; \
else \
${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
fi; \
- done | sort -u
+ done | ${SORT} -u
# Package (recursive runtime) dependency list. Print out both directory names
# and package names.
@@ -4447,7 +4532,8 @@ package-recursive: package
# a large index. Format is:
#
# distribution-name|port-path|installation-prefix|comment| \
-# description-file|maintainer|categories|build deps|run deps|www site
+# description-file|maintainer|categories|extract-depends| \
+# patch-depends|fetch-depends|build-depends|run-depends|www site
.if !target(describe)
describe:
@@ -4576,6 +4662,25 @@ pretty-print-run-depends-list:
.endif
.endif
+_SUB_LIST_TEMP= ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/}
+.if !target(apply-slist)
+apply-slist:
+.if defined(SUB_FILES)
+.for file in ${SUB_FILES}
+.if !exists(${FILESDIR}/${file}.in)
+ @${ECHO_CMD} "** Missing ${FILESDIR}/${file}.in for ${PKGNAME}."; exit 1
+.else
+ @${SED} ${_SUB_LIST_TEMP} -e '/^@comment /d' ${FILESDIR}/${file}.in > ${WRKDIR}/${file}
+.endif
+.endfor
+.for i in pkg-message pkg-install pkg-deinstall pkg-req
+.if ${SUB_FILES:M${i}*}!=""
+${i:S/-//:U}= ${WRKDIR}/${SUB_FILES:M${i}*}
+.endif
+.endfor
+.endif
+.endif
+
# Generate packing list. Also tests to make sure all required package
# files exist.
@@ -4677,8 +4782,20 @@ add-plist-info:
@${ECHO_CMD} "@exec install-info %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \
>> ${TMPPLIST}
.endfor
-.if !defined(NO_MTREE)
+.if (${PREFIX} != "/usr")
@${ECHO_CMD} "@unexec if [ -f %D/${INFO_PATH}/dir ]; then if sed -e '1,/Menu:/d' %D/${INFO_PATH}/dir | grep -q '^[*] '; then true; else rm %D/${INFO_PATH}/dir; fi; fi" >> ${TMPPLIST}
+.if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${X11BASE} && ${PREFIX} != ${LINUXBASE})
+ @${ECHO_CMD} "@unexec rmdir %D/info 2> /dev/null || true" >> ${TMPPLIST}
+.endif
+.endif
+
+# If we're installing into a non-standard PREFIX, we need to remove that directory at
+# deinstall-time
+add-plist-post:
+.if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${X11BASE} && ${PREFIX} != ${LINUXBASE} && ${PREFIX} != "/usr")
+ @${ECHO_CMD} "@unexec rmdir %D 2> /dev/null || true" >> ${TMPPLIST}
+.else
+ @${DO_NADA}
.endif
# Compress (or uncompress) and symlink manpages.
@@ -4743,7 +4860,7 @@ fake-pkg:
if [ -f ${PKGMESSAGE} ]; then \
${CP} ${PKGMESSAGE} ${PKG_DBDIR}/${PKGNAME}/+DISPLAY; \
fi; \
- for dep in `${PKG_INFO} -qf ${PKGNAME} | ${GREP} -w ^@pkgdep | ${AWK} '{print $$2}' | sort -u`; do \
+ for dep in `${PKG_INFO} -qf ${PKGNAME} | ${GREP} -w ^@pkgdep | ${AWK} '{print $$2}' | ${SORT} -u`; do \
if [ -d ${PKG_DBDIR}/$$dep -a -z `${ECHO_CMD} $$dep | ${GREP} -E ${PKG_IGNORE_DEPENDS}` ]; then \
if ! ${GREP} ^${PKGNAME}$$ ${PKG_DBDIR}/$$dep/+REQUIRED_BY \
>/dev/null 2>&1; then \