From 48467145da243a662d8baf463ca7968d5ef41345 Mon Sep 17 00:00:00 2001 From: ahze Date: Wed, 23 Nov 2005 23:35:50 +0000 Subject: - A working copy of bsd.mozilla.mk! git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@5198 df743ca5-7f9a-e211-a948-0013205c9059 --- Mk/bsd.mozilla.mk | 20 +- Mk/bsd.port.mk | 5281 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 5296 insertions(+), 5 deletions(-) create mode 100644 Mk/bsd.port.mk (limited to 'Mk') diff --git a/Mk/bsd.mozilla.mk b/Mk/bsd.mozilla.mk index 1f28ba195..157ef7f1d 100644 --- a/Mk/bsd.mozilla.mk +++ b/Mk/bsd.mozilla.mk @@ -2,7 +2,7 @@ # ex:ts=4 # # $FreeBSD$ -# $MCom: ports/Mk/bsd.mozilla.mk,v 1.9 2005/11/13 05:35:10 ahze Exp $ +# $MCom: ports/Mk/bsd.mozilla.mk,v 1.10 2005/11/13 06:30:01 ahze Exp $ # # 4 column tabs prevent hair loss and tooth decay! @@ -69,20 +69,30 @@ GOOD_WITH_GECKO+= ${badgecko} . endif . endfor . if defined(GOOD_WITH_GECKO) -GECKO= #### CHANGE ME +. for gecko in ${GOOD_WITH_GECKO} +. if !defined(GECKO_FALLTHROUGH) +GECKO= ${gecko} +GECKO_FALLTHROUGH= true +. endif +. endfor . endif .endif .if !defined(GECKO) && defined(GOOD_USE_GECKO) -GECKO= #### CHANGE ME +. for gecko in ${GOOD_USE_GECKO} +. if !defined(GECKO_FALLTRHOUGH) +GECKO= ${gecko} +GECKO_FALLTRHOUGH= true +. endif +. endfor .endif .if defined(GECKO) && ${_GECKO_ALL:M${GECKO}}!="" . if ${_NEW_GCC_GECKO:M${GECKO}!="" USE_GCC?= 3.4+ . endif -BUILD_DEPENDS+= ${GECKO_${PLIST}}:${GECKO_${DEPENDS}} -RUN_DEPENDS+= ${GECKO_${PLIST}}:${GECKO_${DEPENDS}} +BUILD_DEPENDS+= ${${GECKO}_PLIST}:${${GECKO}_DEPENDS} +RUN_DEPENDS+= ${${GECKO}_PLIST}:${${GECKO}_DEPENDS} .else BROKEN="Bad use of USE_GECKO" .endif diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk new file mode 100644 index 000000000..ca33f8185 --- /dev/null +++ b/Mk/bsd.port.mk @@ -0,0 +1,5281 @@ +#-*- mode: makefile; tab-width: 4; -*- +# ex:ts=4 +# +# $FreeBSD: ports/Mk/bsd.port.mk,v 1.518 2005/11/08 09:02:51 clement Exp $ +# $NetBSD: $ +# +# bsd.port.mk - 940820 Jordan K. Hubbard. +# This file is in the public domain. +# +# Please view me with 4 column tabs! + +# This is the master file for the most common elements to all port +# Makefile in the ports system. For a more general overview of its +# use and importance, see the Porter's Handbook. + +# There are two different types of "maintainers" in the ports framework. +# The maintainer alias of the bsd.port.mk file is listed below in the +# FreeBSD_MAINTAINER entry. You should consult them if you have any +# questions/suggestions regarding this file. +# +# DO NOT COMMIT CHANGES TO THIS FILE BY YOURSELF, EVEN IF YOU DID NOT GET +# A RESPONSE FROM THE MAINTAINER(S) WITHIN A REASONABLE TIMEFRAME! ALL +# UNAUTHORISED CHANGES WILL BE UNCONDITIONALLY REVERTED! + +FreeBSD_MAINTAINER= portmgr@FreeBSD.org + +# For each port, the MAINTAINER variable is what you should consult for +# contact information on the person(s) to contact if you have questions/ +# suggestions about that specific port. By default (if no MAINTAINER +# 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 +# +# These are meta-variables that are automatically set to the system +# you are running on. These are provided in case you need to take +# different actions for different values. +# +# ARCH - The architecture of the target machine, such as would be +# returned by "uname -p". (Note: Ports should test against +# ARCH, and not the host machine's architecture which is +# MACHINE_ARCH, to enable ports to be cross-built.) +# OPSYS - Portability clause. This is the operating system the +# makefile is being used on. Automatically set to +# "FreeBSD," "NetBSD," or "OpenBSD" as appropriate. +# OSREL - The release version (numeric) of the operating system. +# OSVERSION - The value of __FreeBSD_version. +# PORTOBJFORMAT - The object format ("aout" or "elf"). +# +# This is the beginning of the list of all variables that need to be +# defined in a port, listed in order that they should be included +# to fit in with existing conventions. (Exception: MAINTAINER actually +# should appear after EXTRACT_ONLY and before MASTER_SITE_BACKUP). +# +# These variables are used to identify your port. +# +# PORTNAME - Name of software. Mandatory. +# PORTVERSION - Version of software. Mandatory when no DISTVERSION is given. +# PORTREVISION - Version of port. Optional. Commonly used to indicate +# that an update has happened that affects the port +# framework itself, but not the distributed software +# (e.g., local patches or Makefile changes). +# PORTEPOCH - Optional. In certain odd cases, the PORTREVISION logic +# can be fooled by ports that appear to go backwards +# numerically (e.g. if port-0.3 is newer than port-1998). +# In this case, incrementing PORTEPOCH forces the revision. +# Default: 0 (no effect). +# PKGNAME - Always defined as +# ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION}. +# Do not define this in your Makefile. +# PKGNAMEPREFIX - Prefix to specify that port is language-specific, etc. +# 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} +# DISTNAME - Name of port or distribution used in generating +# 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. +# 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. 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. 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}. 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 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.) +# +# These variables are typically set in /etc/make.conf to indicate +# 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 +# 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 +# value. +# 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. +# +# Set these if your port should not be built under certain circumstances. +# These are string variables; you should set them to the reason why +# they are necessary. +# +# RESTRICTED - Prevent the distribution of distfiles and packages to +# the FTP sites or on CDROM (e.g. forbidden by license +# considerations). +# NO_CDROM - Packages and distfiles may not go on CDROM (e.g. must +# not be re-sold) but can go on FTP sites. +# NO_PACKAGE - Port should not be packaged for ftp sites or CDROMs, +# but distfiles can be put on ftp sites and CDROMs. +# FORBIDDEN - Package build should not be attempted because of +# security vulnerabilities. +# IGNORE - Package build should be skipped entirely (e.g. +# because of serious unfixable problems in the build, +# because it cannot be manually fetched, etc). Error +# logs will not appear on pointyhat, so this should be +# used sparingly. +# BROKEN - Port is believed to be broken. Package builds will +# still be attempted on the pointyhat 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). +# +# DISABLE_VULNERABILITIES +# - If set, do not check if the port is listed in the +# vulnerabilities database. +# 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. +# +# 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 +# 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. +# 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. +# +# 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. +# +# Dependency checking. Use these if your port requires another port +# not in the list below. (Default: empty.) +# +# 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 +# (if it is a full pathname) or search for it in your +# $PATH (if it is an executable) and go 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}. +# 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 +# (if it is a full pathname) or search for it in your +# $PATH (if it is an executable) and go 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}. +# 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 +# existence (if it is a full pathname) or search for +# it in your $PATH (if it is an executable) and go +# 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 +# package depends to build (between the "extract" and +# "build" stages, inclusive). The test done to +# determine the existence of the dependency is the +# same as FETCH_DEPENDS. If the third field ("target") +# exists, it will be used instead of ${DEPENDS_TARGET}. +# RUN_DEPENDS - A list of "path:dir[:target]" tuples of other ports this +# package depends to run. The test done to determine +# the existence of the dependency is the same as +# FETCH_DEPENDS. This will be checked during the +# "install" stage and the name of the dependency will +# be put into the package as well. If the third field +# ("target") exists, it will be used instead of +# ${DEPENDS_TARGET}. +# LIB_DEPENDS - A list of "lib:dir[:target]" tuples of other ports this +# package depends on. "lib" is the name of a shared library. +# make will use "ldconfig -r" to search for the library. +# lib can contain extended regular expressions. +# DEPENDS - A list of "dir[:target]" tuples of other ports this +# package depends on being made first. Use this only for +# 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 +# +# 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. +# +# 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 - If set, this port tarballs use bzip2, not gzip, for +# compression. +# USE_ZIP - If set, this port distfile uses zip, not tar w/[bg]zip +# for compression. +# USE_GCC - If set, this port requires this version of gcc, either in +# the system or installed from a port. +# USE_GMAKE - If set, this port uses gmake. +# GMAKE - Set to path of GNU make if not in $PATH. +# Default: gmake +## +# 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. +## +# USE_ICONV - If set, this port uses libiconv. +# USE_GETTEXT - If set, this port uses GNU gettext (libintl). +## +# 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 +# installed from a port, but without the version number. +# Use this if you need to replace "#!" lines in scripts. +# 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. +# 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 +# - 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 - If set, this port uses bison for building. +## +# 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. In the USE_LINUX +# case the linux X libraries are referenced. +# +# 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 - 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_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_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, 23 +# 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_FAM - If set, this port uses the File Alteration Monitor. +# +# WANT_FAM_SYSTEM +# - Legal values are: fam (default), gamin +# If set to an unknown value, the port is marked BROKEN. +## +# 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 - 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_*). +# 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). +# 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_*). +# 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. +## +# 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-8. +# Set to value , if the port needs emulators/linux_base-. +# If set to "7", a dependency is registered to emulators/linux_base. +# Implies appropriate settings for NO_FILTER_SHLIBS, +# STRIP and STRIP_CMD. +# USE_LINUX_PREFIX +# - controls the action of PREFIX (see above). Only use this +# if the port is a linux infrastructure port (e.g. contains libs +# or a sound server which supports the FreeBSD native one), +# use the default or the X11 prefix if it's a leaf port +# (e.g. a game or program). +# Implies NO_MTREE=yes. +# OVERRIDE_LINUX_BASE_PORT - This specifies the default linux base to use, for valid values +# have a look at the description of USE_LINUX. This is an user-only +# variable. Don't use it in any port, it's meant to be used in +# make.conf. +# +# LINUX_BASE_PORT - This is a read-only variable, it gets set to a value which +# is usable in *_DEPENDS (e.g. BUILD_DEPENDS=${LINUX_BASE_PORT}). +# It honors USE_LINUX=foo and OVERRIDE_LINUX_BASE_PORT. +# 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. +# If this is set to a list of files, these files will be +# automatically added to ${SUB_FILES}, some %%VAR%%'s will +# automatically be expanded, they will be installed in +# ${PREFIX}/etc/rc.d and added to the packing list. +# pairs will be added to ${SUB_LIST}. These files will be +# installed in ${PREFIX}/etc/rc.d and added to the packing list. +# USE_RCORDER - List of rcNG startup scripts to be called early in the boot +# process. This acts exactly like USE_RC_SUBR except that +# scripts are installed in /etc/rc.d. +# RC_SUBR - Set to path of rc.subr. +# Default: ${LOCALBASE}/etc/rc.subr. +## +# USE_APACHE - If set, this port relies on an apache webserver. +# +# 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, separated by blanks. The names may include shell +# pattern meta-characters "*", "?", "[", "]", and "!". +# Example: 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} +# 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 +# PACKAGES - A top level directory where all packages go (rather than +# 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 +# WRKSRC - A subdirectory of ${WRKDIR} where the distribution actually +# 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} +# +# 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). +# +# Boolean to control whether manpages are installed. +# +# 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 +# on the setting of NOMANCOMPRESS, the make rules will compress the +# manpages for you. +# +# MAN - A list of manpages, categorized by section. For +# example, if your port has "man/man1/foo.1" and +# "man/mann/bar.n", set "MAN1=foo.1" and "MANN=bar.n". +# The available sections chars are "123456789LN". +# MLINKS - A list of tuples for creating links +# for manpages. For example, "MLINKS= a.1 b.1 c.3 d.3" +# will do an "ln -sf a.1 b.1" and "ln -sf c.3 d.3" in +# 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} and ${MLINKS}. +# Default: ${PREFIX} +# MANPREFIX +# - 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. +# 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). +# +# 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. +# +# 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), +# for port and dependencies into ${DISTDIR} as necessary. +# 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. +# 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. +# +# extract - Unpacks ${DISTFILES} into ${WRKDIR}. +# patch - Apply any provided patches to the source. +# configure - Runs either GNU configure, one or more local configure +# scripts or nothing, depending on what's available. +# build - Actually compile the sources. +# install - Install the results of a build. +# reinstall - Install the results of a build, ignoring "already installed" +# flag. +# 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. +# 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. +# makesum - Generate distinfo (only do this for your own ports!). +# 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-recursive +# - Configure options for this port for this port and all dependencies. +# showconfig - Display options config for this port. +# rmconfig - Remove the options config for this port. +# rmconfig-recursive +# - Remove the options config for this port and all dependencies. +# +# Default sequence for "all" is: +# +# check-sanity fetch checksum extract patch configure build +# +# Please read the comments in the targets section below; you +# should be able to use the pre-* or post-* targets/scripts +# (which are available for every stage except checksum) or +# override the do-* targets to do pretty much anything you want. +# +# NEVER override the "regular" targets unless you want to open +# a major can of worms. +# +# Set these variables if your port doesn't need some of the steps. +# Note that there are no NO_PATCH or NO_CONFIGURE variables because +# those steps are empty by default. NO_EXTRACT is not allowed anymore +# since we need to at least create ${WRKDIR}. Also, NO_CHECKSUM is a user +# variable and is not to be set in a port's Makefile. See above for NO_PACKAGE. +# +# NO_BUILD - Use a dummy (do-nothing) build target. +# NO_INSTALL - Use a dummy (do-nothing) install target. +# +# Here are some variables used in various stages. +# +# For options: +# OPTIONS - List of what WITH_