1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00
freebsd-ports/Mk/bsd.port.subdir.mk

410 lines
11 KiB
Makefile
Raw Normal View History

# from: @(#)bsd.subdir.mk 5.9 (Berkeley) 2/1/91
# $FreeBSD$
1997-03-09 23:10:56 +00:00
#
# The include file <bsd.port.subdir.mk> contains the default targets
# for building ports subdirectories.
#
#
# +++ variables +++
#
# STRIP The flag passed to the install program to cause the binary
# to be stripped. This is to be used when building your
# own install script so that the entire system can be made
# stripped/not-stripped using a single knob. [-s]
#
# ECHO_MSG Used to print all the '===>' style prompts - override this
# to turn them off [echo].
#
# OPSYS Get the operating system type [`uname -s`]
#
# SUBDIR A list of subdirectories that should be built as well.
# Each of the targets will execute the same target in the
# subdirectories.
#
#
# +++ targets +++
#
# README.html:
# Creating README.html for package.
#
# afterinstall, all, beforeinstall, build, checksum, clean,
# clean-for-cdrom, clean-restricted,
# clean-for-cdrom-list, clean-restricted-list,
# configure, deinstall,
(0) Fast INDEX generation. Only print out the directory name and don't recurse in "make describe". The new INDEX target in ports/Makefile invokes a perl script to recurse and convert them into package names. While I'm here, change the name of targets and move them around a little bit for the sake of consistency. It is also probably worth noting here that the meaning of the "build dependency" list in INDEX has been changed slightly changed. The old list was "build depends and its build depends" -- not particularly useful if you had things like autoconf, which run-depend on gm4 (you install all the things listed here and you'll get an autoconf that won't run). It is now "build depends and its run depends" -- you install everything listed here, and you'll be able to build the port. Submitted by: steve (0') Fast README.html generation. It uses ports/INDEX to find dependencies instead of embarking on to a recursive loop. Submitted by: steve (1) Remove NO_WRKDIR and NO_EXTRACT. Their functionality are easily replacable with NO_WRKSUBDIR=t and EXTRACT_ONLY= (nothing on right side), and they get in the way of read-only port trees. (2) Surround first few variable definitions with ".if !defined()". This will make cross-compilation easier and also speed up make processes. (3) Call sysctl with absolute path. Prefer the one in /sbin over the one in /usr/sbin. (4) Add four new variables PKGINSTALL?= ${PKGDIR}/INSTALL PKGDEINSTALL?= ${PKGDIR}/DEINSTALL PKGREQ?= ${PKGDIR}/REQ PKGMESSAGE?= ${PKGDIR}/MESSAGE and use them in PKG_ARGS. Frobbing with PKG_ARGS directly is strongly discouraged. (5) Change PKG_SUFX to ".tar" (instead of ".tgz") if PKG_NOCOMPRESS is defined. This is intended only for our own use. (6) Add more sites to MASTER_SITE_GNU. Submitted by: billf (7) Override MANUAL_PACKAGE_BUILD if PARALLEL_PACKAGE_BUILD is defined. This is intended only for our own use. (8) Add new target "ignorelist" which will print out the package name if the port is not going to be built on this machine. This is intended only for our own use. (9) Make mtree a little quieter.
1998-12-12 07:39:30 +00:00
# depend, depends, describe, extract, fetch, fetch-list, ignorelist,
# install, maintainer, makesum, package, readmes, realinstall, reinstall,
# tags
1997-03-09 23:10:56 +00:00
#
# search:
# Search for ports using either 'make search key=<keyword>'
# or 'make search name=<keyword>'.
1997-03-09 23:10:56 +00:00
.MAIN: all
.if !defined(DEBUG_FLAGS)
STRIP?= -s
.endif
.if !defined(NOPRECIOUSMAKEVARS)
.if !defined(ARCH)
ARCH!= /usr/bin/uname -p
.endif
.if !defined(OSREL)
OSREL!= /usr/bin/uname -r | sed -e 's/[-(].*//'
.endif
.if !defined(OSVERSION)
.if exists(/sbin/sysctl)
OSVERSION!= /sbin/sysctl -n kern.osreldate
.else
OSVERSION!= /usr/sbin/sysctl -n kern.osreldate
.endif
.endif
.if !defined(PORTOBJFORMAT)
PORTOBJFORMAT!= test -x /usr/bin/objformat && /usr/bin/objformat || echo aout
.endif
.endif
* Add a new bsd.php.mk that takes the place of lang/php4/bsd.php.mk [1] * Remove trailing whitespace from bsd.port.mk [2] * Enhanced OPTIONS handling [3] * Add a USE_ICONV macro [4] * Add a USE_GETTEXT macro [5] * Add support for p5-Module::Build [6] * Enhance bsd.sdl.mk with WANT_SDL [7] * Remove NetBSD and OpenBSD bits from bsd.port.mk [8] * Correct a type in PKGDIR description in bsd.port.mk [9] * Add new DIRNAME macro [10] * Cleanup bsd.port.mk [11] * The default Perl for -CURRENT has been updated to 5.8.2 [12] * Optimize recursive operations on the ports tree [13] * Do not attempt to remove _CPUCFLAGS from CFLAGS if _CPUCFLAGS is not defined [14] * Remove sysutils/rc_subr dependency on -CURRENT [15] * Add MySQL 5.X support to the ports system [16] * Fix a comment typo related to MySQL [17] * Change PTHREAD_{CFLAGS,LIBS} behavior [18] * Do not check distfile size on FreeBSD < 4.8 [19] * Do not install ports with security vulnerabilities [20] * Use ${LOCALBASE}/sbin/pkg_* tools if found [21] * A new net-mgmt physical category has been added [22] * Stop relying on port.mkversion [23] * Fix a regression in checksum processing [24] * Allow PLIST_{DIRS,FILES} to make use of PLIST_SUB [25] * Switch to root to run config and rmconfig targets [26] * Add SIZE attributes for distfiles by default [27] PR: 61683 [3] 62131 [4] 61992 [5] 61621 [6] 61877 [7] 61401 [8] 61684 [10] 61684 61955 [11] 61857 [12] 61757 [14] 61454 [15] 60559 [16] 62039 [20] 62039 [21] 61856 [23] 61972 [27] Submitted by: ale [1] marcus [2] eik [3] trevor [4] trevor [5] skv [6] edwin [7] Markus Brueffer <brueffer@phoenix-systems.de> [8] trevor [9] eik [10] eik des [11] des [12] kris [13] marcus [14] Sergey Matveychuk <sem@ciam.ru> [15] ale [16] linimon [17] eischen netchild [18] marcus netchild [20] eik [21] wollman [22] des [23] marcus eik [24] marcus [25] marcus [26] trevor [27]
2004-02-04 04:27:04 +00:00
ID?= /usr/bin/id
UID!= ${ID} -u
LOCALBASE?= ${DESTDIR}/usr/local
.if exists(${LOCALBASE}/sbin/pkg_info)
PKG_INFO?= ${LOCALBASE}/sbin/pkg_info
.else
PKG_INFO?= /usr/sbin/pkg_info
.endif
SED?= /usr/bin/sed
PKGINSTALLVER!= ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //'
.if !defined(OPSYS)
OPSYS!= /usr/bin/uname -s
.endif
ECHO_MSG?= echo
# local customization of the ports tree
.if exists(${.CURDIR}/Makefile.local)
.include "${.CURDIR}/Makefile.local"
.endif
TARGETS+= all
TARGETS+= build
TARGETS+= checksum
TARGETS+= clean
TARGETS+= clean-for-cdrom
TARGETS+= clean-for-cdrom-list
TARGETS+= clean-restricted
TARGETS+= clean-restricted-list
TARGETS+= configure
TARGETS+= deinstall
TARGETS+= depend
TARGETS+= depends
TARGETS+= distclean
TARGETS+= extract
TARGETS+= fetch
TARGETS+= fetch-list
TARGETS+= ignorelist
TARGETS+= makesum
TARGETS+= maintainer
TARGETS+= package
TARGETS+= realinstall
TARGETS+= reinstall
TARGETS+= tags
.for __target in ${TARGETS}
.if !target(${__target})
.if defined(SUBDIR) && !empty(SUBDIR)
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
${__target}: ${SUBDIR:S/^/_/:S/$/.${__target}/}
.else
${__target}:
.endif
.endif
.endfor
.if defined(SUBDIR) && !empty(SUBDIR)
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
.for __target in ${TARGETS} checksubdirs describe readmes
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
${SUBDIR:S/^/_/:S/$/.${__target}/}: _SUBDIRUSE
.endfor
_SUBDIRUSE: .USE
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
@OK=""; sub=${.TARGET:S/^_//:R}; \
for dud in $$DUDS; do \
if [ $${dud} = $$sub ]; then \
OK="false"; \
${ECHO_MSG} "===> ${DIRPRFX}$$sub skipped"; \
fi; \
done; \
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
if test -d ${.CURDIR}/$${sub}.${MACHINE_ARCH}; then \
edir=$${sub}.${MACHINE_ARCH}; \
elif test -d ${.CURDIR}/$${sub}; then \
edir=$${sub}; \
else \
OK="false"; \
${ECHO_MSG} "===> ${DIRPRFX}$${sub} non-existent"; \
fi; \
if [ "$$OK" = "" ]; then \
${ECHO_MSG} "===> ${DIRPRFX}$${edir}"; \
cd ${.CURDIR}/$${edir}; \
${MAKE} -B ${.TARGET:E:realinstall=install} \
DIRPRFX=${DIRPRFX}$$edir/; \
fi
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
.for _subdir in ${SUBDIR:S/^/_/}
${_subdir}:: ${_subdir:S/$/.all/}
.endfor
1994-11-17 16:02:56 +00:00
.endif
.if !target(install)
.if !target(beforeinstall)
beforeinstall:
.endif
.if !target(afterinstall)
afterinstall:
.endif
install: afterinstall
afterinstall: realinstall
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
realinstall: beforeinstall ${SUBDIR:S/^/_/:S/$/.realinstall/}
.endif
IGNOREDIR= CVS Mk Templates Tools distfiles packages pkg
.if !target(checksubdirs)
.if defined(PORTSTOP)
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
checksubdirs: checksubdir ${SUBDIR:S/^/_/:S/$/.checksubdirs/}
.else
checksubdirs: checksubdir
.endif
.endif
.if !target(checksubdir)
checksubdir:
@for d in *; do \
if [ -d "$$d" ]; then \
found=0; \
for s in ${SUBDIR} ${IGNOREDIR}; do \
if [ "x$$s" = "x$$d" ]; then \
found=1; \
break; \
fi; \
done; \
if [ $$found = 0 ]; then \
${ECHO} "Warning: directory $$d not in SUBDIR"; \
fi; \
fi; \
done
@for s in ${SUBDIR}; do \
if ! [ -d ${.CURDIR}/$$s ]; then \
${ECHO} "Warning: directory $$s in SUBDIR does not exist"; \
fi \
done
.endif
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
.if !target(describe)
.if defined(PORTSTOP)
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
# This is a bit convoluted to deal with the fact that make will overlap I/O from child make processes
# if they write more than 2k: this will corrupt the INDEX file. make -P does not do this, but it adds
# extraneous output and redirects stderr, so we lose error reporting from child makes. Instead we have
# to roll our own implementation of make -P and make sure that each child make writes to their own file,
# which we will combine at the end. This gives substantial performance benefits over doing a make -j1
.if defined(BUILDING_INDEX)
describe: ${SUBDIR:S/^/describe./}
.for i in ${SUBDIR}
describe.$i:
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
@cd ${.CURDIR}; ${MAKE} -B ${i:S/^/_/:S/$/.describe/} > ${INDEX_TMPDIR}/${INDEXFILE}.desc.${i}
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
.endfor
.else
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
describe: ${SUBDIR:S/^/_/:S/$/.describe/}
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
.endif
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
.else
describe:
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
@for sub in ${SUBDIR}; do \
if test -d ${.CURDIR}/$${sub}; then \
${ECHO_MSG} "===> ${DIRPRFX}$${sub}"; \
cd ${.CURDIR}/$${sub}; \
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
${MAKE} -B describe || \
(echo "===> ${DIRPRFX}$${sub} failed" >&2; \
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
exit 1) ;\
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
else \
${ECHO_MSG} "===> ${DIRPRFX}$${sub} non-existent"; \
fi; \
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
done
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 09:14:10 +00:00
.endif
.endif
.if !target(readmes)
* Improve the test for the old ports directory layout [1] * Include SITE_PERL earlier [2] * Use the correct versions of autoconf and automake [3] * Add a PORTDOCS macro for automating installation of documentation files [4] * Define a default Fortran compiler for each version of USE_GCC [5] * Fix package builds when WRKDIRPREFIX is set [6] * Add more comment documentation on default targets [7] * Fix plist generation in certain cases [8] * Fix COMMENT/COMMENTFILE checking [9] * Use SU_CMD for deinstall and deinstall-all targets (provided INSTALL_AS_USER is not set) [10] * Define a default WWWOWN and WWWGRP [11] * Make INDEX builds work even when the port name is the same as a default target [12] * Fix the new share/nls/C links [13] * Don't look in ${LOCALBASE}/lib/compat/pkg for LIB_DEPENDS [14] * Document package-recursive [15] * Create a new virtual category, lisp [16] * Create a new real category, arabic * Add a new GCCVERSION macro for eaisly tracking compiler version changes [17] * Abstract out some of the common Apache bits [18] * Enable the use of USE_OPENLDAP after including bsd.port.pre.mk [19] * Add a new virtual category, pear [20] * Add support for randomizing MASTER_SITES [21] * Don't accept PORTVERSIONS that pkg_version can't handle [22] * Add support for dynamic pkg-install, pkg-deinstall, pkg-message, and pkg-req scripts [23] * Don't redirect stderr when running pkg_info -O. This may help troubleshoot mysterious "Error 1" messages. * Fix up the order of the various PKGNAME related macros to be consistent with portlint [24] PR: 21885 [1] 51588 [2] 55325 [3] 57778 [4] 55674 [5] 56096 [6] 56355 [7] 56533 [8] 57272 [9] 57378 [10] 57403 [11] 57438 [12] 57488 [13] 57664 [14] 57928 [15] 58232 [16] 58317 [17] 32604 [18] 57529 [19] 56582 [20] 48377 [21] 56960 [22] 58885 [23] 54351 [24] Submitted by: trevor [1] eik@fillmore-labs.com [2] rehsack@liwing.de, ade [3] eikemeier@fillmore-labs.com [4] thierry@pompo.net [5] Palle Girgensohn <girgen@pingpong.net> [6] edwin [7] leeym [8] edwin [9] fjoe [10] edwin [11] eikemeier@fillmore-labs.com [12] fuyuki@nigredo.org [13] eikemeier@fillmore-labs.com [14] freebsd@generalresources.com [15] linimon [16] linimon [17] dinoex [18] eikemeier@fillmore-labs.com [19] edwin [20] seanc [21] eikemeier@fillmore-labs.com [22] Reviewed by: eikemeier@fillmore-labs.com [23]
2003-11-07 08:51:46 +00:00
readmes: readme ${SUBDIR:S/^/_/:S/$/.readmes/}
.endif
.if !target(readme)
readme:
@rm -f README.html
@make README.html
.endif
.if (${OPSYS} == "NetBSD")
PORTSDIR ?= /usr/opt
.else
PORTSDIR ?= /usr/ports
.endif
TEMPLATES ?= ${PORTSDIR}/Templates
.if defined(PORTSTOP)
README= ${TEMPLATES}/README.top
.else
README= ${TEMPLATES}/README.category
.endif
COMMENTFILE?= ${.CURDIR}/pkg/COMMENT
DESCR?= ${.CURDIR}/pkg/DESCR
.if ${OSVERSION} >= 500036
INDEXFILE?= INDEX-5
.else
INDEXFILE?= INDEX
.endif
HTMLIFY= sed -e 's/&/\&amp;/g' -e 's/>/\&gt;/g' -e 's/</\&lt;/g'
package-name:
@echo ${.CURDIR} | sed -e 's^.*/^^'
README.html:
@echo "===> Creating README.html"
@> $@.tmp
.for entry in ${SUBDIR}
.if exists(${entry})
.if defined(PORTSTOP)
@echo -n '<a href="'${entry}/README.html'">'"`echo ${entry} | ${HTMLIFY}`"'</a>: ' >> $@.tmp
.else
@echo -n '<a href="'${entry}/README.html'">'"`cd ${entry}; make package-name | ${HTMLIFY}`</a>: " >> $@.tmp
.endif
@echo `cd ${entry}; make -V COMMENT` | ${HTMLIFY} >> $@.tmp
.endif
.endfor
@sort -t '>' +1 -2 $@.tmp > $@.tmp2
.if exists(${DESCR})
@${HTMLIFY} ${DESCR} > $@.tmp3
.else
@> $@.tmp3
.endif
.if defined(COMMENT)
- Allow processing of info files in non-standard locations; the INFO_PATH variable may be used to specify their location. It defaults to 'share/info' for the standard PREFIX, and 'info' when PREFIX == /usr. [1] - Remove the <category>/pkg/COMMENT files in favour of a COMMENT variable in <category>/Makefile [2] - Prevent patch breakage with VERSION_CONTROL=numbered [3] - Fix some instances of incorrect WRKDIRPREFIX handling. [4] - remove useless ${MKDIR} ${WRKSRC} in config target [5] - remove reference to OpenBSD [6] - Exempt devel/p5-Module-Build from the self-dependency in PERL_MODBUILD so that this port may use the option without getting an infinite dependency list [7] - The default PERL_ARCH is currently determined as a function of OSVERSION. It should however be a function of PERL_LEVEL since the correct value depends on what Perl version one has installed (older Perl versions use ${ARCH}-freebsd, newer versions use mach). [8] - Fix PORTDOCS on older (4.7, 5.0) systems [9] - Allow 'make parallel' to generate a working makefile when not all categories are present (this does not mean you'll be able to build all ports, unless you make sure they don't have external dependencies) [10] - Don't report symlinks as world-writable in the security check [11] - Fix a comment that was broken by a mismerged patch [12] - Clarify the meaning of USE_*, WANT_*, WITH_* and WITHOUT_* [13] - Don't set _CHKSUMFILES/_IGNOREFILES if CKSUMFILES/IGNOREFILES is empty and DIST_SUBDIR is set. [14] - Fix comment for DISTDIR [15] - Update the documentation of the USE_GL variable [16] - Check to see if NONEXISTENT exists, and fail with an error if it does [17] - Fix fetching of new distfiles in 'make makesum' when SIZE is set [18] - Consistently set MAKE_ENV when USE_GCC=3.2 or 3.3 are set [19] - Rework INDEX builds: [20] * Fix the bsd.port.subdir.mk code that is supposed to report index breakage (the fallback code wasn't actually being run because make would halt immediately following the error). This should help with INDEX error reports because it will immediately show the cause of failure, so we won't have to pull teeth to extract it from the submitter. * Streamline the 'make describe' code a bit. * Provide some basic instructions to the user when an index build fails, on when and how to report index build failures (turn this off with INDEX_QUIET=1) * Removed INDEX_NOSORT, because I couldn't imagine it to be very useful and it doesn't cost very much anyway. * Don't prevent INDEX builds from seeing the local host environment. Since a lot of users are using 'make index' thesedays they should get an index that reflects their local settings and installed ports. If you want to build a 'default' index that isn't influenced by local settings (e.g. for release builds), set the INDEX_PRISTINE variable. * Allows parallel INDEX builds (using make -j). The most obvious way of doing this doesn't work, because I/O from child makes is broken up into 2k chunks, and output lines from 'make describe' that exceed this length (*cough* GNOME *cough*) will be intertwined with the output of other makes, leading to a corrupted INDEX. The I/O interleaving can be disabled using 'make -P', but this inserts extraneous output of its own, and redirects stderr, making it useless for our purposes. Instead, I collect the output from the child make processes in temporary files and recombine them at the end. * The number of concurrent make processes to spawn can be set using INDEX_JOBS. By default this is set to 2, which seems to be a sweet spot for both single and dual-processor systems. On my tests I do not see any significant performance changes on UP, but on a dual 4.x system the build time drops by 47% (6 minute index builds on one test machine!). Depending on your disk and CPU hardware you might see further gains with INDEX_JOBS=4 or higher, so you might like to experiment to see what works best. On a dual 5.x system the performance gains do not seem to be as great (20-30%), but this is still a significant net win. PR: 55493 [1], 59651 [2], 61552 [3], 62247 [4], 62329 [5], 62337 [6], 62422 [7], 62441 [8], 62627 [9], 62983 [10], 63112 [11], 63297 [12], 63335 [13], 64029 [14], 64069 [15], 64236 [16], 64519 [17], 62958 [18], 64237 [19] Submitted by: lev [1], Matthew Seaman <m.seaman@infracaninophile.co.uk> [2], Joel Ray Holveck <joelh@piquan.org> [3], ade [4], Sergey Matveychuk <sem@ciam.ru> [5], markus [6], mat [7], des [8], eik [9], Dmitry Morozovsky <marck@rinet.ru> [10], Andrew <andrew@ugh.net.au> [11], vs [12], linimon [13], edwin [14][15], gerald [16], marcus[17][18], kris [19][20]
2004-04-02 07:25:23 +00:00
@echo "${COMMENT}" | ${HTMLIFY} > $@.tmp4
.else
.if exists(${COMMENTFILE})
@${HTMLIFY} ${COMMENTFILE} > $@.tmp4
.else
@> $@.tmp4
.endif
.endif
@cat ${README} | \
sed -e 's/%%CATEGORY%%/'"`basename ${.CURDIR}`"'/g' \
-e '/%%COMMENT%%/r$@.tmp4' \
-e '/%%COMMENT%%/d' \
-e '/%%DESCR%%/r$@.tmp3' \
-e '/%%DESCR%%/d' \
-e '/%%SUBDIR%%/r$@.tmp2' \
-e '/%%SUBDIR%%/d' \
> $@
@rm -f $@.tmp $@.tmp2 $@.tmp3 $@.tmp4
.if !defined(NOPRECIOUSMAKEVARS)
.MAKEFLAGS: \
ARCH="${ARCH:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
OPSYS="${OPSYS:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
OSREL="${OSREL:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
OSVERSION="${OSVERSION:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
* Add a new bsd.php.mk that takes the place of lang/php4/bsd.php.mk [1] * Remove trailing whitespace from bsd.port.mk [2] * Enhanced OPTIONS handling [3] * Add a USE_ICONV macro [4] * Add a USE_GETTEXT macro [5] * Add support for p5-Module::Build [6] * Enhance bsd.sdl.mk with WANT_SDL [7] * Remove NetBSD and OpenBSD bits from bsd.port.mk [8] * Correct a type in PKGDIR description in bsd.port.mk [9] * Add new DIRNAME macro [10] * Cleanup bsd.port.mk [11] * The default Perl for -CURRENT has been updated to 5.8.2 [12] * Optimize recursive operations on the ports tree [13] * Do not attempt to remove _CPUCFLAGS from CFLAGS if _CPUCFLAGS is not defined [14] * Remove sysutils/rc_subr dependency on -CURRENT [15] * Add MySQL 5.X support to the ports system [16] * Fix a comment typo related to MySQL [17] * Change PTHREAD_{CFLAGS,LIBS} behavior [18] * Do not check distfile size on FreeBSD < 4.8 [19] * Do not install ports with security vulnerabilities [20] * Use ${LOCALBASE}/sbin/pkg_* tools if found [21] * A new net-mgmt physical category has been added [22] * Stop relying on port.mkversion [23] * Fix a regression in checksum processing [24] * Allow PLIST_{DIRS,FILES} to make use of PLIST_SUB [25] * Switch to root to run config and rmconfig targets [26] * Add SIZE attributes for distfiles by default [27] PR: 61683 [3] 62131 [4] 61992 [5] 61621 [6] 61877 [7] 61401 [8] 61684 [10] 61684 61955 [11] 61857 [12] 61757 [14] 61454 [15] 60559 [16] 62039 [20] 62039 [21] 61856 [23] 61972 [27] Submitted by: ale [1] marcus [2] eik [3] trevor [4] trevor [5] skv [6] edwin [7] Markus Brueffer <brueffer@phoenix-systems.de> [8] trevor [9] eik [10] eik des [11] des [12] kris [13] marcus [14] Sergey Matveychuk <sem@ciam.ru> [15] ale [16] linimon [17] eischen netchild [18] marcus netchild [20] eik [21] wollman [22] des [23] marcus eik [24] marcus [25] marcus [26] trevor [27]
2004-02-04 04:27:04 +00:00
PORTOBJFORMAT="${PORTOBJFORMAT:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
UID="${UID:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
PKGINSTALLVER="${PKGINSTALLVER:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}"
.endif
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
PORTSEARCH_DISPLAY_FIELDS?=name,path,info,maint,index,bdeps,rdeps
PORTSEARCH_KEYLIM?=0
PORTSEARCH_XKEYLIM?=0
PORTSEARCH_IGNORECASE?=1
search: ${PORTSDIR}/${INDEXFILE}
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
@here=${.CURDIR}; \
cd ${PORTSDIR}; \
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
if [ -z "$$key" -a -z "$$xkey" -a \
-z "$$name" -a -z "$$xname" -a \
-z "$$path" -a -z "$$xpath" -a \
-z "$$info" -a -z "$$xinfo" -a \
-z "$$maint" -a -z "$$xmaint" -a \
-z "$$bdeps" -a -z "$$xbdeps" -a \
-z "$$rdeps" -a -z "$$xrdeps" ]; \
then \
echo "The search target requires a keyword parameter or name parameter,"; \
echo "e.g.: \"make search key=somekeyword\""; \
echo "or \"make search name=somekeyword\""; \
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
exit; \
fi; \
awk -F\| -v there="$$here/" -v top="$$(pwd -P)" \
-v key="$$key" -v xkey="$$xkey" \
-v name="$$name" -v xname="$$xname" \
-v path="$$path" -v xpath="$$xpath" \
-v info="$$info" -v xinfo="$$xinfo" \
-v maint="$$maint" -v xmaint="$$xmaint" \
-v cat="$$cat" -v xcat="$$xcat" \
-v bdeps="$$bdeps" -v xbdeps="$$xbdeps" \
-v rdeps="$$rdeps" -v xrdeps="$$xrdeps" \
-v icase="$${icase:-${PORTSEARCH_IGNORECASE}}" \
-v keylim="$${keylim:-${PORTSEARCH_KEYLIM}}" \
-v xkeylim="$${xkeylim:-${PORTSEARCH_XKEYLIM}}"\
-v display="$${display:-${PORTSEARCH_DISPLAY_FIELDS}}" \
'BEGIN { \
if (substr(there, 1, length(top)) == top) \
there = "${PORTSDIR}" substr(there, 1 + length(top)); \
therelen = length(there); \
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
IGNORECASE=icase; \
keylen = length(key); keylim = keylim && keylen; \
if (!keylim && keylen) \
parms[0] = key; \
xkeylen = length(xkey); xkeylim = xkeylim && xkeylen; \
if (!xkeylim && xkeylen) \
xparms[0] = xkey; \
if (length(name)) parms[1] = name; if (length(xname)) xparms[1] = xname; \
if (length(path)) parms[2] = path; if (length(xpath)) xparms[2] = xpath; \
if (length(info)) parms[4] = info; if (length(xinfo)) xparms[4] = xinfo; \
if (length(maint)) parms[6] = maint; if (length(xmaint)) xparms[6] = xmaint; \
if (length(cat)) parms[7] = cat; if (length(xcat)) xparms[7] = xcat; \
if (length(bdeps)) parms[8] = bdeps; if (length(xbdeps)) xparms[8] = xbdeps; \
if (length(rdeps)) parms[9] = rdeps; if (length(xrdeps)) xparms[9] = xrdeps; \
fields["name"] = 1; names[1] = "Port"; \
fields["path"] = 2; names[2] = "Path"; \
fields["info"] = 4; names[4] = "Info"; \
fields["maint"] = 6; names[6] = "Maint"; \
fields["cat"] = 7; names[7] = "Index"; \
fields["bdeps"] = 8; names[8] = "B-deps"; \
fields["rdeps"] = 9; names[9] = "R-deps"; \
split(display, d, /,[ \t]*/); \
for (i in d) { \
disp[fields[d[i]]] = 1; \
} \
} \
{ \
if (substr($$2, 1, therelen) != there) \
* Support verbose index builds with INDEX_VERBOSE [1] * Don't assume root is using /bin/sh when switching credentials to configure OPTIONS. [2] * Support glob expressions in USE_GETTEXT to allow more flexibility in the face of future gratuitous library version bumps by the gettext developers [3]: USE_GETTEXT=yEs # Works as before (case-insensitive) USE_GETTEXT=[5-7] # Accepts any of those libintl.so.x versions # in the LIB_DEPENDS * Correctly register dependencies when a non-system perl port is used on 4.x [4] * Extend 'make search' support to allow much more flexible searching. Syntax will be documented in CHANGES for brevity. [5] * Reorder the post-install-script target to before add-plist-info for consistency [6] * Various fixes to support port operations when a port directory exists under /usr/obj [7] * Extend USE_PERL5_BUILD and USE_PERL5 to add EXTRACT and PATCH dependencies since many ports require perl in those stages [8] * Move info file deregistration later in the deinstallation process so it works properly. [9] * Improve wording in EXPIRATION_DATE message. [10] * Fix dependencies for XFREE86_VERSION==3 (obtain imake from x11/XFree86 now that the former port is gone) [11] * While building index, treat non-existent dependencies as fatal. Previously the error was being hidden by the stderr redirection. [12] * Don't always retry BROKEN ports when package building (it is taking too much time to continually rebuild ports that are usually going to really be broken). Set TRYBROKEN if you want to attempt a build of a BROKEN port. [12] * Revert incorrect change from 1.487 relating to ALL-DEPENDS-LIST [13] PR: 24214 [1], 67529 [2], 63937 [3], 65554 [4], 40699 [5], 59162 [6], 63372 66567 [7], 63394 [8], 65304 [9], 65931 [10], 66565 [11], 66743 [13] Submitted by: roam [1], will [1], hrs [2], mi [3], ade [4], Roman Neuhauser <roman@bellavista.cz> [5], Sergey Matveychuk <sem@ciam.ru> [6], gad [7], adamw [8], kris [8][12], dinoex [9], Alexey Dokuchaev <danfe@regency.nsu.ru> [10], eik [11][13]
2004-06-10 07:30:19 +00:00
next; \
for (i in parms) \
if ($$i !~ parms[i]) \
next; \
for (i in xparms) \
if ($$i ~ xparms[i]) \
next; \
found = 0; \
for (i = 1; i < 10; i++) \
if (i in disp) { \
if (xkeylim && $$i ~ xkey) \
next; \
if (!found && keylim && $$i ~ key) \
found = 1; \
} \
if (keylim && !found) \
next; \
for (i = 1; i < 10; i++) \
if (i in disp) \
printf("%s:\t%s\n", names[i], $$i); \
print(""); \
}' ${PORTSDIR}/${INDEXFILE}