Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Aug 1998 06:04:36 -0700 (PDT)
From:      asami@FreeBSD.ORG (Satoshi Asami)
To:        ports@FreeBSD.ORG
Subject:   Re: final plist patch + major comment rewrite
Message-ID:  <199808221304.GAA14421@silvia.hip.berkeley.edu>
In-Reply-To: <199808221239.FAA14375@silvia.hip.berkeley.edu> (asami@cs.berkeley.edu)

next in thread | previous in thread | raw e-mail | index | archive | help
Eek!

As soon as I send it out, I realized that I completely forgot the
purpose of the documentation change -- to add descriptions of new
variables. ;)

Here, the updated one.  Sorry....

Satoshi
-------
Index: bsd.port.mk
===================================================================
RCS file: /usr/cvs/src/share/mk/bsd.port.mk,v
retrieving revision 1.227.2.46
diff -c -r1.227.2.46 bsd.port.mk
*** bsd.port.mk	1998/08/15 17:37:46	1.227.2.46
--- bsd.port.mk	1998/08/22 12:59:33
***************
*** 11,196 ****
  
  # There are two different types of "maintainers" in the whole ports
  # framework concept.  Maintainers of the bsd.port*.mk files
! # are listed below in the ${OSNAME}_MAINTAINER entries (this file
  # is used by multiple *BSD flavors).  You should consult them directly
  # if you have any questions/suggestions regarding this file since only
  # they are allowed to modify the master copies in the CVS repository!
  
  # 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 correspondece should be directed there.
  #
! FreeBSD_MAINTAINER=	asami@FreeBSD.ORG
! OpenBSD_MAINTAINER=	imp@OpenBSD.ORG
! 
! # Supported Variables and their behaviors:
  #
! # Variables that typically apply to all ports:
  # 
  # ARCH			- The architecture, as returned by "uname -m".
  # 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.
- # PORTSDIR		- The root of the ports tree.  Defaults:
- #					FreeBSD/OpenBSD: /usr/ports
- #					NetBSD:          /usr/opt
- # DISTDIR 		- Where to get gzip'd, tarballed copies of original sources
- #				  (default: ${PORTSDIR}/distfiles).
- # PREFIX		- Where to install things in general (default: /usr/local).
- # MASTER_SITES	- Primary location(s) for distribution files if not found
- #				  locally.
- # PATCH_SITES	- Primary location(s) for distribution patch files
- #				  (see PATCHFILES below) if not found locally.
  #
! # 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/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.
! # PACKAGES		- A top level directory where all packages go (rather than
! #				  going locally to each port). (default: ${PORTSDIR}/packages).
! # GMAKE			- Set to path of GNU make if not in $PATH (default: gmake).
! # AUTOCONF		- Set to path of GNU autoconf if not in $PATH (default: autoconf).
! # XMKMF			- Set to path of `xmkmf' if not in $PATH (default: xmkmf -a ).
! # MAINTAINER	- The e-mail address of the contact person for this port
! #				  (default: ports@FreeBSD.ORG).
  # CATEGORIES	- A list of descriptive categories into which this port falls.
  #
! # Variables that typically apply to an individual port.  Non-Boolean
! # variables without defaults are *mandatory*.
  #
- # WRKDIR 		- A temporary working directory that gets *clobbered* on clean
- #				  (default: ${.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}).
- # DISTNAME		- Name of port or distribution.
  # DISTFILES		- Name(s) of archive file(s) containing distribution
! #				  (default: ${DISTNAME}${EXTRACT_SUFX}).
  # PATCHFILES	- Name(s) of additional files that contain distribution
  #				  patches (default: none).  make will look for them at
! #				  PATCH_SITES (see above).  They will automatically be
  #				  uncompressed before patching if the names end with
  #				  ".gz" or ".Z".
  # DIST_SUBDIR	- Suffix to ${DISTDIR}.  If set, all ${DISTFILES} 
  #				  and ${PATCHFILES} will be put in this subdirectory of
! #				  ${DISTDIR}.  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.
- # PKGNAME		- Name of the package file to create if the DISTNAME 
- #				  isn't really relevant for the port/package
- #				  (default: ${DISTNAME}).
  # EXTRACT_ONLY	- If defined, a subset of ${DISTFILES} you want to
  #			  	  actually extract.
- # PATCHDIR 		- A directory containing any additional patches you made
- #				  to port this software to FreeBSD (default:
- #				  ${.CURDIR}/patches)
- # SCRIPTDIR 	- A directory containing any auxiliary scripts
- #				  (default: ${.CURDIR}/scripts)
- # FILESDIR 		- A directory containing any miscellaneous additional files.
- #				  (default: ${.CURDIR}/files)
- # PKGDIR 		- A direction containing any package creation files.
- #				  (default: ${.CURDIR}/pkg)
- # PKG_DBDIR		- Where package installation is recorded (default: /var/db/pkg)
- # FORCE_PKG_REGISTER - If set, it will overwrite any existing package
- #				  registration information in ${PKG_DBDIR}/${PKGNAME}.
- # 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.)
  #
! # NO_BUILD		- Use a dummy (do-nothing) build target.
! # NO_CDROM		- Port may not go on CDROM.  Set this string to reason.
! # NO_DESCRIBE	- Use a dummy (do-nothing) describe target.
! # NO_EXTRACT	- Use a dummy (do-nothing) extract target.
! # NO_INSTALL	- Use a dummy (do-nothing) install target.
! # NO_PACKAGE	- Use a dummy (do-nothing) package target.
! # 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.
! # NO_PKG_REGISTER - Don't register a port install as a package.
! # NO_WRKSUBDIR	- Assume port unpacks directly into ${WRKDIR}.
! # NO_WRKDIR		- There's no work directory at all; port does this someplace
! #				  else.
! # NO_DEPENDS	- Don't verify build of dependencies.
! # BROKEN		- Port is broken.  Set this string to the reason why.
! # RESTRICTED	- Port is restricted.  Set this string to the reason why.
  # USE_GMAKE		- Says that the port uses gmake.
  # USE_AUTOCONF	- Says that the port uses autoconf.  Implies GNU_CONFIGURE.
  # USE_PERL5		- Says that the port uses perl5 for building and running.
  # USE_IMAKE		- Says that the port uses imake.  Implies USE_X_PREFIX.
! # USE_X_PREFIX	- Says that the port installs in ${X11BASE}.  Implies USE_XLIB.
! # USE_XLIB		- Says that the port uses X libraries.
  # NO_INSTALL_MANPAGES - For imake ports that don't like the install.man
  #						target.
! # HAS_CONFIGURE	- Says that the port has its own configure script.
! # GNU_CONFIGURE	- Set if you are using GNU configure (optional).
! # CONFIGURE_SCRIPT - Name of configure script, defaults to 'configure'.
! # CONFIGURE_ARGS - Pass these args to configure if ${HAS_CONFIGURE} is set.
! # CONFIGURE_ENV - Pass these env (shell-like) to configure if
! #				  ${HAS_CONFIGURE} is set.
! # SCRIPTS_ENV	- Additional environment vars passed to scripts in
! #                 ${SCRIPTDIR} executed by bsd.port.mk.
! # MAKE_ENV		- Additional environment vars passed to sub-make in build
! #				  stage.
! # IS_INTERACTIVE - Set this if your port needs to interact with the user
! #				  during a build.  User can then decide to skip this port by
! #				  setting ${BATCH}, or compiling only the interactive ports
! #				  by setting ${INTERACTIVE}.
! # FETCH_DEPENDS - A list of "path:dir" pairs 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.
! # BUILD_DEPENDS - A list of "path:dir" pairs 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.
! # RUN_DEPENDS	- A list of "path:dir" pairs 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.
! # LIB_DEPENDS	- A list of "lib:dir" pairs 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.  Note that lib can be any regular expression,
  #				  and you need two backslashes in front of dots (.) to
  #				  supress its special meaning (e.g., use
  #				  "foo\\.2\\.:${PORTSDIR}/utils/foo" to match "libfoo.2.*").
! # DEPENDS		- A list of other ports this package depends on being
! #				  made first.  Use this for things that don't fall into
! #				  the above two categories.
! # EXTRACT_CMD	- Command for extracting archive (default: tar).
! # EXTRACT_SUFX	- Suffix for archive names (default: .tar.gz).
! # EXTRACT_BEFORE_ARGS -
! #				  Arguments to ${EXTRACT_CMD} before filename
! #				  (default: -xzf).
! # EXTRACT_AFTER_ARGS -
! #				  Arguments to ${EXTRACT_CMD} following filename
! #				  (default: none).
  #
! # FETCH_CMD		  - Full path to ftp/http fetch command if not in $PATH
! #				  (default: /usr/bin/fetch).
! # FETCH_BEFORE_ARGS -
! #				  Arguments to ${FETCH_CMD} before filename (default: none).
! # FETCH_AFTER_ARGS -
! #				  Arguments to ${FETCH_CMD} following filename (default: none).
  #
  # Motif support:
  #
  # REQUIRES_MOTIF - Set this in your port if it requires Motif.  It will  be
--- 11,198 ----
  
  # There are two different types of "maintainers" in the whole ports
  # framework concept.  Maintainers of the bsd.port*.mk files
! # are listed below in the ${OPSYS}_MAINTAINER entries (this file
  # is used by multiple *BSD flavors).  You should consult them directly
  # if you have any questions/suggestions regarding this file since only
  # they are allowed to modify the master copies in the CVS repository!
  
+ FreeBSD_MAINTAINER=	asami@FreeBSD.ORG
+ OpenBSD_MAINTAINER=	imp@OpenBSD.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 correspondece 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.
  # 
  # ARCH			- The architecture, as returned by "uname -m".
  # 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.
  #
! # These variables are used to identify your port.
! #
! # DISTNAME		- Name of port or distribution.
! # PKGNAME		- Name of the package file to create if the DISTNAME 
! #				  isn't really relevant for the port/package
! #				  (default: ${DISTNAME}).
  # CATEGORIES	- A list of descriptive categories into which this port falls.
  #
! # 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.gz).  You
! #				  never have to set both DISTFILES and EXTRACT_SUFX.
! # MASTER_SITES	- Primary location(s) for distribution files if not found
! #				  locally.
  # 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" or ".Z".
+ # 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 some of the ${ALLFILES} are not checksum-able, set
  #				  this variable to their names.
  # EXTRACT_ONLY	- If defined, a subset of ${DISTFILES} you want to
  #			  	  actually extract.
  #
! # These three variables are typically set in /etc/make.conf to indicate
! # the user's preferred location to fetch files from.
! #
! # 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/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.
! #
! # 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 restricted.
! #
! # RESTRICTED	- Port is restricted (e.g., contains cryptography, etc.).
! # NO_CDROM		- Port may not go on CDROM.
! # NO_PACKAGE	- Port should not be packaged but distfiles can be put on
! #				  ftp sites and CDROMs.
! # BROKEN		- Port is broken.
! #
! # This variable is a boolean, so you don't need to set it to the reason.
! #
! # IS_INTERACTIVE - Set this if your port needs to interact with the user
! #				  during a build.  User can then decide to skip this port by
! #				  setting ${BATCH}, or compiling only the interactive ports
! #				  by setting ${INTERACTIVE}.
! #
! # Use these if your port uses some of the common software packages.
! #
  # USE_GMAKE		- Says that the port uses gmake.
+ # GMAKE			- Set to path of GNU make if not in $PATH (default: gmake).
  # USE_AUTOCONF	- Says that the port uses autoconf.  Implies GNU_CONFIGURE.
+ # AUTOCONF		- Set to path of GNU autoconf if not in $PATH (default:
+ #				  autoconf).
  # USE_PERL5		- Says that the port uses perl5 for building and running.
+ # PERL_VERSION	- Full version of perl5 (see below for current value).
+ # PERL_VER		- Short version of perl5 (see below for current value).
  # 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 ).
  # NO_INSTALL_MANPAGES - For imake ports that don't like the install.man
  #						target.
! # USE_X_PREFIX	- Says that the port installs in ${X11BASE}.  Implies USE_XLIB.
! # USE_XLIB		- Says that the port uses X libraries.
! # USE_QT		- Says that the port uses the latest version of qt toolkit.
! #
! # Dependency checking.  Use these if your port requires another port
! # not in the list above.
! #
! # 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.  Note that lib can be any regular expression,
  #				  and you need two backslashes in front of dots (.) to
  #				  supress its special meaning (e.g., use
  #				  "foo\\.2\\.:${PORTSDIR}/utils/foo" to match "libfoo.2.*").
! #				  If the third field ("target") exists, it will be used
! #				  instead of ${DEPENDS_TARGET}.
! # 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").
  #
! # 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).
+ # PREFIX		- Where *this* port installs its files (default: ${X11BASE}
+ #				  if USE_X_PREFIX is set, otherwise ${LOCALBASE}).
+ # PORTSDIR		- The root of the ports tree.  Defaults:
+ #					FreeBSD/OpenBSD: /usr/ports
+ #					NetBSD:          /usr/opt
+ # DISTDIR 		- Where to get gzip'd, tarballed 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).
+ # WRKDIR 		- A temporary working directory that gets *clobbered* on clean
+ #				  (default: ${.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}.
+ # NO_WRKDIR		- There's no work directory at all; port does this someplace
+ #				  else.
+ # PATCHDIR 		- A directory containing any additional patches you made
+ #				  to port this software to FreeBSD (default:
+ #				  ${.CURDIR}/patches)
+ # SCRIPTDIR 	- A directory containing any auxiliary scripts
+ #				  (default: ${.CURDIR}/scripts)
+ # FILESDIR 		- A directory containing any miscellaneous additional files.
+ #				  (default: ${.CURDIR}/files)
+ # PKGDIR 		- A direction containing any package creation files.
+ #				  (default: ${.CURDIR}/pkg)
+ #
  # Motif support:
  #
  # REQUIRES_MOTIF - Set this in your port if it requires Motif.  It will  be
***************
*** 205,219 ****
  # MOTIF_ONLY	- If set, build Motif ports only.  (Not much use except for
  #				  building packages.)
  #
- # Variables to change if you want a special behavior:
- #
- # ECHO_MSG		- Used to print all the '===>' style prompts - override this
- #				  to turn them off (default: /bin/echo).
- # DEPENDS_TARGET - The target to execute when a port is calling a
- #				  dependency (default: "install").
- # PATCH_DEBUG	- If set, print out more information about the patches as
- #				  it attempts to apply them.
- #
  # Variables that serve as convenient "aliases" for your *-install targets.
  # Use these like: "${INSTALL_PROGRAM} ${WRKSRC}/prog ${PREFIX}/bin".
  #
--- 207,212 ----
***************
*** 222,236 ****
  # INSTALL_DATA	- A command to install sharable data.
  # INSTALL_MAN	- A command to install manpages (doesn't compress).
  #
! # If your port doesn't automatically compress manpages, set the following.
! # Depending on the setting of NOMANCOMPRESS, the make rules will compress
! # the manpages for you.
  #
  # MAN<sect>		- 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".
  # MANPREFIX		- The directory prefix for ${MAN<sect>} (default: ${PREFIX}).
  #
  # Default targets and their behaviors:
  #
--- 215,236 ----
  # INSTALL_DATA	- A command to install sharable data.
  # INSTALL_MAN	- A command to install manpages (doesn't compress).
  #
! # 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<sect>		- 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".
  # MANPREFIX		- The directory prefix for ${MAN<sect>} (default: ${PREFIX}).
+ # MAN<sect>PREFIX - If manual pages of some sections install in different
+ #				  locations than others, use these (default: ${MANPREFIX}).
+ # MANCOMPRESSED - Set this if the manpages are already compressed.  It is set
+ #				  by default if USE_IMAKE is defined.
+ # MANNOTCOMPRESSED - Set this if the manpages are not compressed even though
+ #				  USE_IMAKE is set.
  #
  # Default targets and their behaviors:
  #
***************
*** 264,269 ****
--- 264,369 ----
  #
  # 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 becuase
+ # those steps are empty by default.  Also, NO_CHECKSUM is a user variable
+ # and is not to be set in a port's Makefile.  See above for NO_PACKAGE.
+ #
+ # NO_EXTRACT	- Use a dummy (do-nothing) extract target.
+ # 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 fetch:
+ #
+ # FETCH_CMD		  - Full path to ftp/http fetch command if not in $PATH
+ #				  (default: /usr/bin/fetch).
+ # FETCH_BEFORE_ARGS -
+ #				  Arguments to ${FETCH_CMD} before filename (default: none).
+ # FETCH_AFTER_ARGS -
+ #				  Arguments to ${FETCH_CMD} following filename (default: none).
+ #
+ # For extract:
+ #
+ # EXTRACT_CMD	- Command for extracting archive (default: tar).
+ # EXTRACT_BEFORE_ARGS -
+ #				  Arguments to ${EXTRACT_CMD} before filename
+ #				  (default: -xzf).
+ # EXTRACT_AFTER_ARGS -
+ #				  Arguments to ${EXTRACT_CMD} following filename
+ #				  (default: none).
+ #
+ # For configure:
+ #
+ # HAS_CONFIGURE	- Says that the 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
+ #				  HAS_CONFIGURE.
+ # CONFIGURE_SCRIPT - Name of configure script (defaults: configure).
+ # CONFIGURE_ARGS - Pass these args to configure if ${HAS_CONFIGURE} is set.
+ # CONFIGURE_ENV - Pass these env (shell-like) to configure if
+ #				  ${HAS_CONFIGURE} is set.
+ #
+ # For build and install:
+ #
+ # MAKE_ENV		- Additional environment vars passed to sub-make in build
+ #				  and install stages (default: see below).
+ #
+ # For install:
+ #
+ # 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			- Name of the `packing list' file (default: ${PKGDIR}/PLIST).
+ #				  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.)
+ # TMPPLIST		- Name of the `packing list' file after processing
+ #				  (default: ${WRKDIR}/PLIST.mktmp).
+ # PLIST_SUB		- List of "variable=value" pair for substitution in ${PLIST}
+ # 				  (default: see below).
+ # 
+ # Note that the install target will automatically add manpages (see
+ # above) and also substitute special sequence of characters (delimited
+ # by "%%") as defined in PLIST_SUB to generate ${TMPPLIST}.  For
+ # instance, "OSREL=${OSREL}" in PLIST_SUB causes all occurrences of
+ # "%%OSREL%%" in ${PLIST} to be substituted by the value of OSREL.
+ # ${TMPPLIST} is generated between the do-install and post-install
+ # stages.  If you are generating the packing list on-the-fly, make
+ # sure it's generated by the end of do-install!
+ #
+ # For package:
+ #
+ # 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.
+ #
+ # This is used in all stages:
+ #
+ # SCRIPTS_ENV	- Additional environment vars passed to scripts in
+ #                 ${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: /bin/echo).
+ # PATCH_DEBUG	- If set, print out more information about the patches as
+ #				  it attempts to apply them.
+ # PKG_DBDIR		- Where package installation is recorded (default: /var/db/pkg)
+ # NO_PKG_REGISTER - Don't register a port install 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.
  
  # Get the architecture
  ARCH!=	uname -m
***************
*** 353,359 ****
  .endif
  
  .if defined(USE_IMAKE)
! USE_X_PREFIX=		yes
  .endif
  .if defined(USE_X_PREFIX)
  USE_XLIB=		yes
--- 453,462 ----
  .endif
  
  .if defined(USE_IMAKE)
! USE_X_PREFIX=	yes
! .if ${OPSYS} != "OpenBSD" && !defined(NO_INSTALL_MANPAGES) && !defined(MANNOTCOMPRESSED)
! MANCOMPRESSED=	yes
! .endif
  .endif
  .if defined(USE_X_PREFIX)
  USE_XLIB=		yes
***************
*** 424,430 ****
  
  MAKE_FLAGS?=	-f
  MAKEFILE?=		Makefile
! MAKE_ENV+=		PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} MOTIFLIB="${MOTIFLIB}" CFLAGS="${CFLAGS}"
  
  .if exists(/usr/bin/fetch)
  FETCH_CMD?=		/usr/bin/fetch
--- 527,533 ----
  
  MAKE_FLAGS?=	-f
  MAKEFILE?=		Makefile
! MAKE_ENV+=		PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} MOTIFLIB="${MOTIFLIB}" CFLAGS="${CFLAGS}" LIBDIR="${LIBDIR}"
  
  .if exists(/usr/bin/fetch)
  FETCH_CMD?=		/usr/bin/fetch
***************
*** 1121,1127 ****
  
  .if !target(do-package)
  do-package:
! 	@if [ -e ${PLIST} ]; then \
  		${ECHO_MSG} "===>  Building package for ${PKGNAME}"; \
  		if [ -d ${PACKAGES} ]; then \
  			if [ ! -d ${PKGREPOSITORY} ]; then \
--- 1224,1230 ----
  
  .if !target(do-package)
  do-package:
! 	@if [ -e ${TMPPLIST} ]; then \
  		${ECHO_MSG} "===>  Building package for ${PKGNAME}"; \
  		if [ -d ${PACKAGES} ]; then \
  			if [ ! -d ${PKGREPOSITORY} ]; then \
***************
*** 1229,1247 ****
  	fi
  .endif
  .endif
- .if (make(real-install) || make(real-package)) && exists(${PLIST})
- 	@>${TMPPLIST}
- .for man in ${__MANPAGES}
- 	@${ECHO} ${man} >> ${TMPPLIST}
- .endfor
- 	@${SED} ${_sedsubplist} ${PLIST} >> ${TMPPLIST}
- .endif
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/pre-/}
  	@if [ -f ${SCRIPTDIR}/${.TARGET:S/^real-/pre-/} ]; then \
  		cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \
  			${SCRIPTDIR}/${.TARGET:S/^real-/pre-/}; \
  	fi
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/do-/}
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/post-/}
  	@if [ -f ${SCRIPTDIR}/${.TARGET:S/^real-/post-/} ]; then \
  		cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \
--- 1332,1347 ----
  	fi
  .endif
  .endif
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/pre-/}
  	@if [ -f ${SCRIPTDIR}/${.TARGET:S/^real-/pre-/} ]; then \
  		cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \
  			${SCRIPTDIR}/${.TARGET:S/^real-/pre-/}; \
  	fi
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/do-/}
+ # put here so ports can change the contents of ${TMPPLIST} if necessary
+ .if make(real-install)
+ 	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} generate-plist
+ .endif
  	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/post-/}
  	@if [ -f ${SCRIPTDIR}/${.TARGET:S/^real-/post-/} ]; then \
  		cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \
***************
*** 1536,1542 ****
  		if [ -d $$dir ]; then \
  			(cd $$dir ; ${MAKE} package-name package-depends); \
  		else \
! 			${ECHO_MSG} "Warning: \"$$dir\" non-existent -- @pkgdep registration incomplete" >&2; \
  		fi; \
  	done
  .endif
--- 1636,1642 ----
  		if [ -d $$dir ]; then \
  			(cd $$dir ; ${MAKE} package-name package-depends); \
  		else \
! 			${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
  		fi; \
  	done
  .endif
***************
*** 1706,1712 ****
  .if !target(depends-list)
  depends-list:
  	@for dir in `${ECHO} "${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | sort -u` `${ECHO} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | sort -u`; do \
! 		(cd $$dir; ${MAKE} package-name depends-list); \
  	done
  .endif
  
--- 1806,1816 ----
  .if !target(depends-list)
  depends-list:
  	@for dir in `${ECHO} "${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | sort -u` `${ECHO} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | sort -u`; do \
! 		if [ -d $$dir ]; then \
! 			(cd $$dir ; ${MAKE} package-name depends-list); \
! 		else \
! 			${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
! 		fi; \
  	done
  .endif
  
***************
*** 1788,1800 ****
  .endif
  .endif
  
  # Fake installation of package so that user can pkg_delete it later.
  # Also, make sure that an installed port is recognized correctly in
  # accordance to the @pkgdep directive in the packing lists
  
  .if !target(fake-pkg)
  fake-pkg:
- 	@if [ ! -f ${TMPPLIST} -o ! -f ${COMMENT} -o ! -f ${DESCR} ]; then ${ECHO} "** Missing package files for ${PKGNAME} - installation not recorded."; exit 1; fi
  	@if [ ! -d ${PKG_DBDIR} ]; then ${RM} -f ${PKG_DBDIR}; ${MKDIR} ${PKG_DBDIR}; fi
  .if defined(FORCE_PKG_REGISTER)
  	@${RM} -rf ${PKG_DBDIR}/${PKGNAME}
--- 1892,1916 ----
  .endif
  .endif
  
+ # Generate packing list.  Also tests to make sure all required package
+ # files exist.
+ 
+ .if !target(generate-plist)
+ generate-plist:
+ 	@if [ ! -f ${PLIST} -o ! -f ${COMMENT} -o ! -f ${DESCR} ]; then ${ECHO} "** Missing package files for ${PKGNAME}."; exit 1; fi
+ 	@>${TMPPLIST}
+ .for man in ${__MANPAGES}
+ 	@${ECHO} ${man} >> ${TMPPLIST}
+ .endfor
+ 	@${SED} ${_sedsubplist} ${PLIST} >> ${TMPPLIST}
+ .endif
+ 
  # Fake installation of package so that user can pkg_delete it later.
  # Also, make sure that an installed port is recognized correctly in
  # accordance to the @pkgdep directive in the packing lists
  
  .if !target(fake-pkg)
  fake-pkg:
  	@if [ ! -d ${PKG_DBDIR} ]; then ${RM} -f ${PKG_DBDIR}; ${MKDIR} ${PKG_DBDIR}; fi
  .if defined(FORCE_PKG_REGISTER)
  	@${RM} -rf ${PKG_DBDIR}/${PKGNAME}

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199808221304.GAA14421>