DragonFly On-Line Manual Pages
porttree(1) DragonFly General Commands Manual porttree(1)
NAME
porttree - Show dependences of a FreeBSD port as a pseudo graphical tree
SYNOPSIS
porttree [-f | --fetch-depends] [-e | --extract-depends]
[-p | --patch-depends] [-b | --build-depends]
[-l | --lib-depends] [-r | --run-depends] [-n | --number-all]
[-s st | --style st] [-A | --all-ports] [-R | --reverse]
[-O | --others] [-S filename | --save filename]
[-U filename | --use-saved filename] [category/portname...]
DESCRIPTION
The porttree utility is a tool for visualizing dependences of a port and
ports dependent on the given ports if used with -A -R. Without any
options, all kinds of dependences will be tracked and shown, same as if
all of them are given. This will show, e.g. ports needed to patch a
port, which is necessary to fetch the given port. Only given types of
dependences will be used if any of them are present in the command line.
Use style 0 on a terminal without pseudo graphic chars (e.g.
ISO-8859-15), or switch the encoding of the terminal to utf-8, cp855, or
similar. E.g. gnome-terminal(1) allows to choose the encoding.
OPTIONS
The options are as follows:
-f | --fetch-depends
Show ports necessary to fetch the target port.
-e | --extract-depends
Show ports necessary to extract the target port.
-p | --patch-depends
Show ports necessary to patch the target port.
-b | --build-depends
Show ports necessary to build the target port.
-l | --lib-depends
Show ports installing libraries necessary for the target port.
-r | --run-depends
Show ports necessary to run the target port.
-n | --number-all
Number all lines of the output, even the lines with reference to
previously shown ports. By default, this lines are not numbered,
thus the biggest line number indicates the total number of
dependences.
-s st | --style st
Use pseudo graphic chars style st. Five styles are defined at the
moment:
-1 - (default) check for availability of Alternative Character Set
(ACS) in termcap/terminfo capabilities of the terminal where the
program is running and use it or fall back to the ASCII-only
mode. This part was written with help from Oliver Fromme.
0 - use usual chars only (like `|', ``', and `+').
1 - single line pseudo graphics. For a previously shown port name,
add after the name an arrow with the line number where it was
shown. Also, a branching to nowhere symbol is added before the
port name, if it has further dependences.
2 - same as 1, but use double line pseudo graphics.
3 - same as 1, but no indication of branching for previously shown
ports.
4 - same as 3, but use double line pseudo graphics.
5 - unconditionally use ACS pseudo graphics of vt100 terminal.
-A | --all-ports
Traverse whole ports tree, then show dependences of the given ports.
-R | --reverse
Show also reversed dependences, i.e. show ports depending on the
given one.
-O | --others
After the dependences of the given ports are shown, show also the not
previously shown ports with their dependences. Together with -A,
this can be used to show all ports.
-P dir | --save dir
Use the given directory to find the ports instead of the default
/usr/ports.
-S filename | --save filename
Save the interdependences data to the file filename.
-U | --unsave
Read the interdependences data from the file filename.
Try the current directory if no portname is given. Portnames are to be
given either as full pathnames or as category/port within the portsdir.
In the results, the portsdir is removed from the beginning of the
pathnames.
EXAMPLES
The following are examples of typical usage of the porttree command:
All dependences and dependents of gcc44, and save the data in the file
cache for future use:
porttree -A -R -S cache lang/gcc44
Same used on a console with default screenmap:
porttree -s 1 -AR -S cache lang/gcc44 | iconv -f utf-8 -t cp437
Using previously saved in the file cache data for python32:
porttree -U cache -R /usr/ports/lang/python32
AUTHORS
The program and this manual page were written by Vladimir Chukharev.
BUGS
Styles 3 and 4 use arrow chars which could not be converted by iconv(1)
to console charsets (e.g. cp437).
Practically no check is done for usefulness of used option combinations.
E.g. -A is silently ignored with -U filename. On the other hand, -S
filename overwrites a good saved file with nearly empty one if -A is not
given with it.
SEE ALSO
iconv(1), ports(7)
FreeBSD 8.2 August 19, 2011 FreeBSD 8.2