1999-08-31 03:04:38 +00:00
|
|
|
|
# $FreeBSD$
|
1994-08-23 10:20:29 +00:00
|
|
|
|
#
|
1995-07-01 07:58:11 +00:00
|
|
|
|
|
2004-01-22 09:16:59 +00:00
|
|
|
|
SUBDIR += accessibility
|
2003-11-08 23:57:29 +00:00
|
|
|
|
SUBDIR += arabic
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += archivers
|
1996-10-24 11:20:46 +00:00
|
|
|
|
SUBDIR += astro
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += audio
|
1995-07-13 00:57:24 +00:00
|
|
|
|
SUBDIR += benchmarks
|
1997-12-13 05:55:08 +00:00
|
|
|
|
SUBDIR += biology
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += cad
|
1996-09-14 02:07:26 +00:00
|
|
|
|
SUBDIR += chinese
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += comms
|
1997-04-27 00:48:09 +00:00
|
|
|
|
SUBDIR += converters
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += databases
|
1998-08-07 23:25:58 +00:00
|
|
|
|
SUBDIR += deskutils
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += devel
|
2003-08-30 03:24:22 +00:00
|
|
|
|
SUBDIR += dns
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += editors
|
|
|
|
|
SUBDIR += emulators
|
2002-11-18 09:22:59 +00:00
|
|
|
|
SUBDIR += finance
|
2000-09-22 06:25:45 +00:00
|
|
|
|
SUBDIR += french
|
1999-08-02 10:42:26 +00:00
|
|
|
|
SUBDIR += ftp
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += games
|
1997-07-31 09:33:05 +00:00
|
|
|
|
SUBDIR += german
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += graphics
|
2000-07-31 00:09:42 +00:00
|
|
|
|
SUBDIR += hebrew
|
2002-11-18 09:22:59 +00:00
|
|
|
|
SUBDIR += hungarian
|
1999-06-26 22:29:57 +00:00
|
|
|
|
SUBDIR += irc
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += japanese
|
1999-06-26 22:29:57 +00:00
|
|
|
|
SUBDIR += java
|
1997-03-06 05:52:26 +00:00
|
|
|
|
SUBDIR += korean
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += lang
|
|
|
|
|
SUBDIR += mail
|
|
|
|
|
SUBDIR += math
|
1996-11-07 12:30:23 +00:00
|
|
|
|
SUBDIR += mbone
|
1995-11-27 03:50:07 +00:00
|
|
|
|
SUBDIR += misc
|
2002-11-18 09:22:59 +00:00
|
|
|
|
SUBDIR += multimedia
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += net
|
2004-02-23 04:42:13 +00:00
|
|
|
|
SUBDIR += net-mgmt
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += news
|
1999-01-09 08:52:31 +00:00
|
|
|
|
SUBDIR += palm
|
2001-04-22 16:47:55 +00:00
|
|
|
|
SUBDIR += picobsd
|
2003-08-19 09:53:15 +00:00
|
|
|
|
SUBDIR += polish
|
2002-11-18 09:22:59 +00:00
|
|
|
|
SUBDIR += portuguese
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += print
|
|
|
|
|
SUBDIR += russian
|
2001-03-24 21:40:17 +00:00
|
|
|
|
SUBDIR += science
|
1995-07-13 00:57:24 +00:00
|
|
|
|
SUBDIR += security
|
1997-08-19 07:10:14 +00:00
|
|
|
|
SUBDIR += shells
|
1995-07-13 00:57:24 +00:00
|
|
|
|
SUBDIR += sysutils
|
1997-04-27 00:48:09 +00:00
|
|
|
|
SUBDIR += textproc
|
2001-03-24 21:40:17 +00:00
|
|
|
|
SUBDIR += ukrainian
|
1996-12-05 11:09:04 +00:00
|
|
|
|
SUBDIR += vietnamese
|
1995-11-27 03:50:07 +00:00
|
|
|
|
SUBDIR += www
|
1995-07-01 07:58:11 +00:00
|
|
|
|
SUBDIR += x11
|
1998-08-07 23:25:58 +00:00
|
|
|
|
SUBDIR += x11-clocks
|
|
|
|
|
SUBDIR += x11-fm
|
|
|
|
|
SUBDIR += x11-fonts
|
1999-06-26 22:29:57 +00:00
|
|
|
|
SUBDIR += x11-servers
|
2004-02-20 02:59:12 +00:00
|
|
|
|
SUBDIR += x11-themes
|
1998-08-07 23:25:58 +00:00
|
|
|
|
SUBDIR += x11-toolkits
|
|
|
|
|
SUBDIR += x11-wm
|
1994-08-21 13:19:28 +00:00
|
|
|
|
|
1996-04-01 11:17:56 +00:00
|
|
|
|
PORTSTOP= yes
|
|
|
|
|
|
1994-08-22 11:26:08 +00:00
|
|
|
|
.include <bsd.port.subdir.mk>
|
1995-01-14 11:27:06 +00:00
|
|
|
|
|
1995-04-01 13:24:03 +00:00
|
|
|
|
index:
|
2002-12-04 17:17:48 +00:00
|
|
|
|
@rm -f ${.CURDIR}/${INDEXFILE}
|
|
|
|
|
@cd ${.CURDIR} && make ${.CURDIR}/${INDEXFILE}
|
1995-03-21 03:12:17 +00:00
|
|
|
|
|
2004-05-25 10:16:16 +00:00
|
|
|
|
fetchindex:
|
|
|
|
|
@cd ${.CURDIR} && fetch -am http://www.FreeBSD.org/ports/${INDEXFILE} && chmod a+r ${INDEXFILE}
|
|
|
|
|
|
- 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
|
|
|
|
INDEX_JOBS?= 2
|
|
|
|
|
|
* 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 !defined(INDEX_VERBOSE)
|
|
|
|
|
INDEX_ECHO_MSG= echo > /dev/null
|
|
|
|
|
INDEX_ECHO_1ST= echo -n
|
|
|
|
|
.else
|
|
|
|
|
INDEX_ECHO_MSG= echo 1>&2
|
|
|
|
|
INDEX_ECHO_1ST= echo
|
|
|
|
|
.endif
|
|
|
|
|
|
2002-12-04 17:17:48 +00:00
|
|
|
|
${.CURDIR}/${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
|
|
|
|
@${INDEX_ECHO_1ST} "Generating ${INDEXFILE} - please wait.."; \
|
- 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
|
|
|
|
if [ "${INDEX_PRISTINE}" != "" ]; then \
|
|
|
|
|
export LOCALBASE=/nonexistentlocal; \
|
|
|
|
|
export X11BASE=/nonexistentx; \
|
|
|
|
|
fi; \
|
|
|
|
|
tmpdir=`/usr/bin/mktemp -d -t index` || exit 1; \
|
|
|
|
|
trap "rm -rf $${tmpdir}; exit 1" 1 2 3 5 10 13 15; \
|
|
|
|
|
( cd ${.CURDIR} && make -j${INDEX_JOBS} INDEX_TMPDIR=$${tmpdir} BUILDING_INDEX=1 \
|
* 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
|
|
|
|
ECHO_MSG="${INDEX_ECHO_MSG}" 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
|
|
|
|
(rm -rf $${tmpdir} ; \
|
|
|
|
|
if [ "${INDEX_QUIET}" = "" ]; then \
|
|
|
|
|
echo; \
|
|
|
|
|
echo "********************************************************************"; \
|
|
|
|
|
echo "Before reporting this error, verify that you are running a supported"; \
|
|
|
|
|
echo "version of FreeBSD (see http://www.FreeBSD.org/ports/) and that you"; \
|
* Be even more explicit about partial ports trees being unsupported
for INDEX builds [1]
* Remove the parallel target from Makefile; this is heavily tied to
the package build cluster and can be better done in the makeparallel
script (commit to follow) [2]
* Extend the format of INDEX to separately list the
EXTRACT/PATCH/FETCH_DEPENDS instead of lumping them all in together
with BUILD_DEPENDS. The three new fields are appended to the end of
the record in that order. [2]
* Change BROKEN to IGNORE in BROKEN_WITH_MYSQL failure code [3]
* Support non-default PREFIX for perl 5.00503 [5]
* Use pkg_info -I instead of ls when searching for conflicts [6]
* Allow local customization of the port subdirectories by including
${.CURDIR}/Makefile.local in bsd.subdir.mk if it exists [7]
* Fix 'make search' when ${PORTSDIR} is a symlink to a directory name
containing extended regexp metacharacters [8]
Submitted by: linimon [1] [3], kris [2], lth [4], sem [5], eik [5] [6],
Roman Neuhauser <neuhauser@chello.cz> [7]
PR: 68299 [1], 67705 [3], 67264 [4], 59696 [5], 66568 [6],
68072 [7]
2004-07-14 08:18:16 +00:00
|
|
|
|
echo "have a complete and up-to-date ports collection. (INDEX builds are"; \
|
|
|
|
|
echo "not supported with partial or out-of-date ports collections -- in"; \
|
|
|
|
|
echo "particular, if you are using cvsup, you must cvsup the \"ports-all\""; \
|
|
|
|
|
echo "collection, and have no \"refuse\" files.) If that is the case, then"; \
|
|
|
|
|
echo "report the failure to ports@FreeBSD.org together with relevant"; \
|
|
|
|
|
echo "details of your ports configuration (including FreeBSD version,"; \
|
|
|
|
|
echo "your architecture, your environment, and your /etc/make.conf"; \
|
|
|
|
|
echo "settings, especially compiler flags and WITH/WITHOUT settings)."; \
|
|
|
|
|
echo; \
|
|
|
|
|
echo "Note: the latest pre-generated version of INDEX may be fetched"; \
|
|
|
|
|
echo "automatically with \"make fetchindex\"."; \
|
- 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 "********************************************************************"; \
|
|
|
|
|
echo; \
|
|
|
|
|
fi; \
|
|
|
|
|
exit 1); \
|
|
|
|
|
cat $${tmpdir}/${INDEXFILE}.desc.* | perl ${.CURDIR}/Tools/make_index | \
|
|
|
|
|
sed -e 's/ */ /g' -e 's/| */|/g' -e 's/ *|/|/g' -e 's./..g' | \
|
1999-07-23 09:36:55 +00:00
|
|
|
|
sort -t '|' +1 -2 | \
|
2002-12-04 17:17:48 +00:00
|
|
|
|
sed -e 's../.g' > ${.CURDIR}/${INDEXFILE}.tmp; \
|
- 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
|
|
|
|
if [ "${INDEX_PRISTINE}" != "" ]; then \
|
|
|
|
|
sed -e "s,$${LOCALBASE},/usr/local," -e "s,$${X11BASE},/usr/X11R6," \
|
|
|
|
|
${.CURDIR}/${INDEXFILE}.tmp > ${.CURDIR}/${INDEXFILE}; \
|
|
|
|
|
else \
|
|
|
|
|
mv ${.CURDIR}/${INDEXFILE}.tmp ${.CURDIR}/${INDEXFILE}; \
|
|
|
|
|
fi; \
|
|
|
|
|
rm -rf $${tmpdir}; \
|
|
|
|
|
echo " Done."
|
1995-03-21 03:12:17 +00:00
|
|
|
|
|
2002-12-04 17:17:48 +00:00
|
|
|
|
print-index: ${.CURDIR}/${INDEXFILE}
|
* Be even more explicit about partial ports trees being unsupported
for INDEX builds [1]
* Remove the parallel target from Makefile; this is heavily tied to
the package build cluster and can be better done in the makeparallel
script (commit to follow) [2]
* Extend the format of INDEX to separately list the
EXTRACT/PATCH/FETCH_DEPENDS instead of lumping them all in together
with BUILD_DEPENDS. The three new fields are appended to the end of
the record in that order. [2]
* Change BROKEN to IGNORE in BROKEN_WITH_MYSQL failure code [3]
* Support non-default PREFIX for perl 5.00503 [5]
* Use pkg_info -I instead of ls when searching for conflicts [6]
* Allow local customization of the port subdirectories by including
${.CURDIR}/Makefile.local in bsd.subdir.mk if it exists [7]
* Fix 'make search' when ${PORTSDIR} is a symlink to a directory name
containing extended regexp metacharacters [8]
Submitted by: linimon [1] [3], kris [2], lth [4], sem [5], eik [5] [6],
Roman Neuhauser <neuhauser@chello.cz> [7]
PR: 68299 [1], 67705 [3], 67264 [4], 59696 [5], 66568 [6],
68072 [7]
2004-07-14 08:18:16 +00:00
|
|
|
|
@awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nB-deps:\t%s\nR-deps:\t%s\nE-deps:\t%s\nP-deps:\t%s\nF-deps:\t%s\nWWW:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$11, $$12, $$13, $$10); }' < ${.CURDIR}/${INDEXFILE}
|
1999-06-01 02:55:43 +00:00
|
|
|
|
|
1999-06-04 17:30:31 +00:00
|
|
|
|
CVS?= cvs
|
2003-07-12 13:20:59 +00:00
|
|
|
|
SUP?= cvsup
|
2000-08-13 12:38:41 +00:00
|
|
|
|
.if defined(SUPHOST)
|
|
|
|
|
SUPFLAGS+= -h ${SUPHOST}
|
|
|
|
|
.endif
|
1999-06-01 02:55:43 +00:00
|
|
|
|
update:
|
2000-10-31 21:00:02 +00:00
|
|
|
|
.if defined(SUP_UPDATE) && defined(PORTSSUPFILE)
|
1999-06-01 02:55:43 +00:00
|
|
|
|
@echo "--------------------------------------------------------------"
|
|
|
|
|
@echo ">>> Running ${SUP}"
|
|
|
|
|
@echo "--------------------------------------------------------------"
|
|
|
|
|
@${SUP} ${SUPFLAGS} ${PORTSSUPFILE}
|
1999-06-04 17:30:31 +00:00
|
|
|
|
.elif defined(CVS_UPDATE)
|
1999-06-01 02:55:43 +00:00
|
|
|
|
@echo "--------------------------------------------------------------"
|
1999-06-04 17:30:31 +00:00
|
|
|
|
@echo ">>> Updating ${.CURDIR} from cvs repository" ${CVSROOT}
|
1999-06-01 02:55:43 +00:00
|
|
|
|
@echo "--------------------------------------------------------------"
|
2003-03-06 14:02:21 +00:00
|
|
|
|
cd ${.CURDIR}; ${CVS} -R -q update -A -P -d
|
2000-10-31 21:00:02 +00:00
|
|
|
|
.elif defined(SUP_UPDATE) && !defined(PORTSSUPFILE)
|
|
|
|
|
@${ECHO_MSG} "Error: Please define PORTSSUPFILE before doing make update."
|
|
|
|
|
@exit 1
|
1999-06-04 17:30:31 +00:00
|
|
|
|
.else
|
|
|
|
|
@${ECHO_MSG} "Error: Please define either SUP_UPDATE or CVS_UPDATE first."
|
1999-06-01 02:55:43 +00:00
|
|
|
|
.endif
|