aboutsummaryrefslogtreecommitdiff
path: root/Tools/make_index
Commit message (Collapse)AuthorAgeFilesLines
* framework: Remove $FreeBSD$Mathieu Arnold2021-04-061-2/+0
| | | | Where appropriate fiddle with a few other things.
* - Fix 'make index' when system is built with WITHOUT_PORTSNAP byBryan Drewery2013-10-071-0/+180
| | | | | | | | | | falling back on the perl make_index if needed. With hat: portmgr Reported by: ade Notes: svn path=/head/; revision=329740
* Use the portsnap version of make_index instead of the perl version.Baptiste Daroussin2013-10-071-180/+0
| | | | | | | Submitted by: ak Notes: svn path=/head/; revision=329675
* Major optimizations for 'make index' and other recursive traversalKris Kennaway2008-07-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | targets. * Use /rescue/sh for index builds instead of /bin/sh, when it exists. The former is statically linked and faster to execute, which becomes significant when executing it tens of thousands of times. This trick can be used with other recursive targets by passing in __MAKE_SHELL. * Get rid of make variable assignments that use != command invocations in the critical path, using several methods: - rewriting logic to use shell or make builtins instead of external command executions - macroizing commands and executing them in the targets where they are needed instead of with every invocation of make - precomputing the results of invariant commands in bsd.port.subdir.mk and passing them in explicitly to child makes, and using this to avoid recalculation in all the children. NB: the commands are still run one per top-level subdirectory but this does not currently seem to be a major issue. They could be moved further up into the top-level Makefile at the cost of some cleanliness. - Committers are strongly discouraged from adding further "bare" != assignments to the ports tree, even in their own ports. One of the above strategies should be used to avoid future bloat. * Rewrite the core 'describe' target to work entirely within a single shell process using only builtin commands. The old version is retained as a backup for use on systems older than 603104, which does not have the make :u modifier. This cuts down the number of processes executed during the course of a 'make index' by an order of magnitude, and we are essentially now amortized to the minimum of a single make + sh instance per port, plus whatever commands the port makefile itself executes (which are usually unnecessary and bogus). * Less validation of the WWW: target is performed; this can become policed at a port level by portlint. Specifically we look at the second word of the first line beginning with "WWW:" in pkg-descr, and append "http://" to it unless it already begins with "http://", "https://" or "ftp://". Thanks to dougb for the idea of how to extract WWW: using shell builtins. * Use the "true" shell builtin instead of echo > /dev/null for a measurable decrease in CPU use. * Add a note about dubious escaping strategy in bsd.port.subdir.mk * Minor change in output of 'make describe': it no longer strips trailing CR characters from pkg-descr files with MSDOS CR/LF termination. Instead the makeindex perl script that post-processes make describe into the INDEX is tweaked to strip on input. The bottom line is that on my test hardware INDEX builds are now faster by more than a factor of 2 and with a reduction in system time by a factor of 4-8 depending on configuration. Notes: svn path=/head/; revision=217132
* Fix bogus comments. No code change.Mark Linimon2006-02-021-5/+5
| | | | Notes: svn path=/head/; revision=155040
* Remove traling spaces.Kirill Ponomarev2005-01-091-3/+3
| | | | Notes: svn path=/head/; revision=125941
* * Be even more explicit about partial ports trees being unsupportedKris Kennaway2004-07-141-13/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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] Notes: svn path=/head/; revision=113603
* Do a better job of stating which port we had problems with whileSteve Price2003-02-241-4/+4
| | | | | | | mapping directories to package names. Notes: svn path=/head/; revision=76403
* Check for duplicate entries in INDEX and warn about them.Kris Kennaway2002-08-311-7/+12
| | | | | | | | Submitted by: Martin Heinen <martin@sumuk.de> PR: ports/33196 (based on) Notes: svn path=/head/; revision=65355
* Tweak to catch missing directories from the Makefiles in the variousSteve Price2001-03-081-1/+5
| | | | | | | | | categories which were failing to be mapped from directory to port name because 'make index' can't know to run 'make describe' in directories it doesn't know exist. Notes: svn path=/head/; revision=39222
* Id->FreeBSD rename take 2David E. O'Brien1999-08-251-1/+1
| | | | | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise. Notes: svn path=/head/; revision=20940
* Correctly deal with the http field in index lines.Satoshi Asami1999-05-051-3/+3
| | | | | | | Submitted by: steve Notes: svn path=/head/; revision=18488
* (1) Make it clear that only I am allowed to commit to bsd.port.mk.Satoshi Asami1999-04-281-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (2) New variable USE_ZIP -- will change EXTRACT_SUFX to ".zip" and extract commands/arguments accordingly. Submitted by: jseger (3) Use ${GREP} in some places where grep was used. (4) A little update to the MASTER_SITES_GNU list. Submitted by: cpiazza@home.net (5) New target clean-for-cdrom-list and clean-restricted-list -- will print out commands to delete un-cdromable or unredistributable files. Save them into a shell script for later use. (6) Add CXXFLAGS="${CXXFLAGS}" to configure's environment. Submitted by: reg@shale.csir.co.za PR: 11353 (part 3/3) (7) Print out a warning if you try to install without being root. Abort if ${PREFIX} is not writable. (8) Add web site to INDEX as tenth field. Reviewed by: wosch, steve, scrappy Notes: svn path=/head/; revision=18174
* a print statement was added where it wasn't supposed to be, in a file thatMarc G. Fournier1999-03-131-2/+1
| | | | | | | I hadn't meant to change... Notes: svn path=/head/; revision=17158
* Commit all Y2K/WWW_SITE changes from today...Marc G. Fournier1999-03-111-1/+2
| | | | Notes: svn path=/head/; revision=17142
* Make this require perl version 5.002 or later to run.Steve Price1998-12-151-1/+3
| | | | | | | Noticed by: John Baldwin <jobaldwi@vt.edu> Notes: svn path=/head/; revision=15360
* Fast INDEX generation. See bsd.port.mk rev. 1.300 for details.Satoshi Asami1998-12-121-0/+117
Submitted by: steve Notes: svn path=/head/; revision=15302