portindex man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

PORTINDEX(1)	      User Contributed Perl Documentation	  PORTINDEX(1)

NAME
       portindex -- generate an INDEX file from cached data

SYNOPSIS
       portindex [-hvqwWL] [-c dir] [-C file] [-T file] [-o file]

DESCRIPTION
       portindex processes the cached port description data into the INDEX-7,
       INDEX-8 or INDEX-9 files used by the ports system.  The cache contains
       a record of the one-line description of all ports generated by "make
       describe", indexed by the port origin directory.	 It also contains a
       record of the master-slave relationships between some ports and of
       which Makefiles are included by the port's Makefile, but that
       information is not used by portindex.

       The processing done by portindex consists of two phases.	 When
       generating an INDEX, in the first phase the various direct dependencies
       listed in the raw "make describe" output (FETCH_DEPENDS,
       EXTRACT_DEPENDS, PATCH_DEPENDS, BUILD_DEPENDS, RUN_DEPENDS,
       LIB_DEPENDS) are accumulated with the (previously accumulated)
       RUN_DEPENDS list for each dependency target.  Thus, for example, the
       final BUILD_DEPENDS dependency list will contain everything that the
       port depends on directly to build itself, plus all of the dependencies
       required for those build tools to run.

       In the second phase the accumulated dependencies are converted from
       lists of port origins to lists of package names, including version
       numbers. The data is already sorted, by virtue of the way the Btree
       cache files operate, so all that remains is to format it tidily and
       print it out.

       The processing done when generating a SHLIBS file is very similar, but
       in this case only the "LIB_DEPENDS" variable is considered, and library
       dependencies are accumulated and printed out as the list of ports
       providing the shared libraries depended on.

   Configuration Files
       portindex shares configuration files with cache-init, cache-update and
       find-updated.  Any configuration settings are taken from the following
       locations, where the later items on this list override the earlier:

       ·       Built-in settings from the FreeBSD::Portindex::Config perl
	       module.

       ·       The system wide configuration file /usr/local/etc/portindex.cfg

       ·       The per-user configuration file ${HOME}/.portindexrc (ignored
	       if the program is being run by the superuser)

       ·       The local configuration file, found in the current working
	       directory of the cache-init process ./.portindexrc (ignored if
	       the program is being run by the superuser)

       ·       The program command line.

       All of the configuration files are optional.  A summary of the
       resultant configuration options including the effect of any command
       line settings is printed as part of the help text when portindex is
       invoked with the "-h" option.

OPTIONS
       -h
       --help  Print a brief usage message and a summary of the configuration
	       settings after command line processing and then exit.

       -v
       --verbose
	       Turn on verbose output printed to "STDERR".  This is the
	       default.

       -w
       --warnings
	       Turn on warning messages about duplicate ports and ports
	       unreferenced from their catergory Makefile.  Default: off.

       -nowarnings
	       Turn off warning messages.  This is the default.

       -q
       --quiet
       --noverbose
	       Turn off verbose output to "STDERR".  Using both the -v amd -q
	       options together does not make any sense, but neither does it
	       generate an error.  The last mentioned of the two options will
	       prevail.

       -c dir
       --cache-dir=dir
	       The location of the portindex data cache, by default
	       /var/db/portindex.

       -C file
       --cache-file=file
	       Berkeley DB Btree file containing the cached and post-processed
	       values of a number of "make" variables for all of the ports in
	       the tree.  This file name will be relative to the cache
	       directory (-c option above) unless an absolute path is given.
	       Defaults to portindex-cache.db.

       -T file
       --timestamp-file=file
	       A file within the cache directory whose modification time marks
	       the last time that data was modified in or added to the cache.
	       Defaults to portindex-timestamp

       -o file
       --output=file
	       Filename to write the generated ports INDEX file to.  Setting
	       this to - means output to STDOUT, which is the default.

       -W
       --crunch-whitespace
	       Make the generated INDEX closer to the output of "make index"
	       by modifying the "COMMENT" field so that any sequence of
	       whitespace characters is collapsed into a single space.
	       Default: off.

       -L
       --shlibs
	       Instead of the normal INDEX file, generate an alternative
	       SHLIBS index of the available ports.  The SHLIBS file consists
	       of three columns separated by '|' characters.  The first two
	       columns are the same as in the INDEX file: the package name and
	       version, followed by the directory containing the port.	The
	       third column is a space separated list of the cumulative
	       "LIB_DEPENDS" dependencies the port has on other ports that
	       provide shared libraries.  The use of this is to identify the
	       ports that would need to be reinstalled given an ABI version
	       bump in some dependency shared library. eg.

	       % grep databases/db46 SHLIBS | cut -d '|' -f 1

FILES
       /usr/ports      The default ports directory.

       /var/db/portindex
		       The location of the data cache.

       portindex-cache.db
		       Btree file containing cached "make describe" output.

       __db.001, __db.002, __db.003
		       Files used as part of the internal workings of
		       BerkeleyDB, for memory pool management and DB locking.
		       Will be recreated automatically if deleted.

       portindex-timestamp
		       This file contains the last time and date that the
		       cache was updated or modified.

       /usr/local/etc/portindex.cfg
		       System-wide configuration file.

       ${HOME}/.portindexrc
		       Per-user configuration file

       ./.portindexrc  Local configuration file

SEE ALSO
       cache-init(1), cache-update(1), find-updated(1), cvsup(1), ports(7)

BUGS
       The INDEX file produced by portindex will not be identical to the
       result of running "make index" from the same ports tree.	 However, the
       differences are mostly cosmetic and seem to have no practical impact.

       The sort order of the entries in the generated INDEX file is generated
       as a side effect of the way that BDB Btree files work.  It is not
       eactly the same as produced by the sorting methods used in "make
       index".	For example, in portindex, "x11-clocks", "x11-fm",
       "x11-themes", "x11-toolkits" and "x11-wm" will all sort before "x11",
       whereas usually they would sort after.

       portindex uses the port origin as its unique key in the data cache.
       "make index" uses the package name.  Since certain ports modify their
       package name depending on the local settings and conditions, this can
       lead to package name collisions. Such collisions are weeded out of the
       generated INDEX file by "make index", but not by portindex.

       Unless the "--crunch-whitespace" option is given, portindex extracts
       the "COMMENT" lines from the "make describe" output exactly as shown.
       "make index" collapses multiple spaces to single.

perl v5.20.2			  2012-02-21			  PORTINDEX(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net