source: trunk/base/src/port/port.1 @ 14541

Last change on this file since 14541 was 14541, checked in by jberry, 15 years ago

Remove more vestiges of portall

  • Property svn:eol-style set to native
File size: 8.9 KB
Line 
1.\" port.1
2.\"
3.\" Copyright (c) 2002 Apple Computer, Inc.
4.\" All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. Neither the name of Apple Computer, Inc. nor the names of its
15.\"    contributors may be used to endorse or promote products derived from
16.\"    this software without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd August 31, 2005
31.Dt PORT 1 "Apple Computer, Inc."
32.Os
33.Sh NAME
34.Nm port
35.Nd build darwin ports
36.Sh SYNOPSIS
37.Nm
38.Op Fl vdqfonausbckt
39.Op Fl D Ar portdir
40.Ar target
41.Op Ar portname
42.Op Ar options ...
43.Op Ar variants ...
44.Sh DESCRIPTION
45.Nm
46is designed to read and execute the build instructions of a darwin port. If no
47.Ar portdir
48or
49.Ar portname
50is specified, the current working directory is assumed.
51If no
52.Ar target
53is specified, the usage is displayed.
54Port
55.Ar options
56are specified as key=value pairs and take precedence over individual port options and system-wide settings.
57.Pp
58Port
59.Ar variants
60are specified as +name, which indicates the variant is desired, and -name, which indicates the variant is not desired. In case of ambiguities, a port can be fully specified with the format
61.Ar version_revision+variants
62.Pp
63Installed ports can be activated or deactivated without being uninstalled. A port can be installed if another version/variant is installed but deactivated.
64.Pp
65The
66.Nm
67command knows several command line options and
68.Ar targets
69\&:
70.Sh OPTIONS
71.Bl -tag -width -indent
72.It Fl v
73verbose mode (generate verbose messages)
74.It Fl d
75debug mode (generate debugging messages, implies
76.Fl v )
77.It Fl q
78quiet mode (suppress messages)
79.It Fl c
80autoclean mode (execute clean after install)
81.It Fl k
82keep mode (don't autoclean after install)
83.It Fl n
84dont follow dependencies in upgrade (only for upgrading)
85.It Fl a
86upgrade all installed ports (only for upgrading)
87.It Fl u
88uninstall non-active ports when upgrading and uninstalling
89.It Fl D
90specify
91.Ar portdir
92.It Fl f
93force mode (ignore state file)
94.It Fl o
95honor state files older than Portfile
96.It Fl s
97source-only mode (only build and install from source, ignores all binary archives, does not create/recreate binary archives) (only applies when archive mode is enabled)
98.It Fl b
99binary-only mode (only build and install from binary archives, ignores source, fails when no archive present, and does not create/recreate binary archives from source) (only applies when archive mode is enabled)
100.It Fl t
101enable trace mode debug facilities on platforms that support it
102.El
103.Sh USER TARGETS
104Targets most commonly used by regular DarwinPorts users are:
105.Ss install
106Install and activate
107.Ar portname .
108.Ss uninstall
109Deactivate and uninstall
110.Ar portname .
111To uninstall all installed but inactive ports, specify
112.Fl u .
113For example:
114.Pp
115.Dl "port uninstall vim"
116.Dl "port -u uninstall"
117.Ss activate
118Activate the installed
119.Ar portname .
120.Ss deactivate
121Deactivate the installed
122.Ar portname .
123.Ss installed
124List all installed ports.
125.Ss outdated
126List the installed ports that need upgrading.
127.Ss upgrade
128Upgrade the installed
129.Ar portname .
130To upgrade all ports, specify
131.Fl a .
132For example:
133.Pp
134.Dl "port upgrade vim"
135.Dl "port -a upgrade"
136.Pp
137To upgrade
138.Ar portname
139wihtout following its dependencies, specify
140.Fl n .
141For example:
142.Pp
143.Dl "port -n upgrade ethereal"
144.Ss provides
145Determines which port owns a given file and can take either a relative or absolut path. For example:
146.Pp
147.Dl "port provides /opt/local/etc/irssi.conf"
148.Dl "port provides include/tiff.h"
149.Ss selfupdate
150Updates the DarwinPorts system, both the dports tree and if needed the base tools, installing the newest infrastructure if available. To update you would typically do:
151.Pp
152.Dl "sudo port -d selfupdate"
153.Ss sync
154Performs a sync operation only on the dports tree of a DarwinPorts installation, pulling in the latest revision available of the Portfiles. To update you would do:
155.Pp
156.Dl "sudo port -d sync"
157.Ss clean
158Clean the files used for building
159.Ar portname .
160To just remove the work files, specify
161.Fl -work .
162To remove the distribution files (tarballs, etc), specify
163.Fl -dist .
164To remove the archive(s) for the current version of a port, specify
165.Fl -archive .
166To remove the work files, distribution files and archives, specify
167.Fl -all .
168For example:
169.Pp
170.Dl "port clean --dist vim"
171.Dl "port clean --archive vim"
172.Pp
173To remove only certain version(s) of a port's archives (
174.Ar version
175is any valid UNIX glob pattern), you can use:
176.Pp
177.Dl "port clean --archive vim 6.2.114"
178.Pp
179or:
180.Pp
181.Dl "port clean --archive vim '6.*'"
182.Ss list
183List all available ports.
184.Ss search
185Search for an available port whose name matches a regular expression.
186.Pp
187.Dl "port search vim"
188.Pp
189.Ss info
190Displays the meta-information about an available
191.Ar portname .
192.Ss variants
193Lists the build variants available for
194.Ar portname .
195.Ss deps
196Lists the other ports that are required for building and running
197.Ar portname .
198.Ss contents
199Lists the files installed by
200.Ar portname .
201.Ss version
202Display the release number of the installed DarwinPorts infrastructure.
203.Sh DEVELOPER TARGETS
204The targets that are often used by Port developers are intended to provide access to the different phases of a Port's build process:
205.Ss unarchive
206Unpack the port from a pre-built binary archive. When archive mode is enabled, this command is called automatically, prior to
207.Ar fetch ,
208to check for an existing binary archive to unpack. If found, it is unpacked and all stages up to
209.Ar install
210are then skipped.
211.Ss fetch
212Fetches the distribution files required to build
213.Ar portname .
214.Ss extract
215Extracts the distribution files for
216.Ar portname .
217.Ss patch
218Applies any required patches to
219.Ar portname's
220extracted distribution files.
221.Ss configure
222Runs any configure process for
223.Ar portname .
224.Ss build
225Build
226.Ar portname .
227.Ss destroot
228Installs
229.Ar portname
230to a temporary directory.
231.Ss test
232Tests
233.Ar portname .
234.Ss archive
235Archive the port for a later
236.Ar unarchive .
237When archive mode is enabled, binary archives will be created automatically whenever an
238.Ar install
239is performed, or when the
240.Ar archive
241target is called explicitly.
242.Ss livecheck
243Check if the distfiles haven't change and can be fetched, and if the software hasn't been
244updated since the Portfile was last modified.
245.Sh PACKAGING TARGETS
246There are also targets for producing installable packages of ports:
247.Pp
248.Ss pkg
249Creates an OS X installer package of
250.Ar portname.
251.Ss mpkg
252Creates an OS X installer metapackage of
253.Ar portname
254and its dependencies.
255.Ss dmg
256Creates an internet-enabled disk image containing an OS X package of
257.Ar portname .
258.Ss rpmpackage
259Creates an RPM package of
260.Ar portname .
261.Sh EXAMPLE
262The following demonstrates invoking
263.Nm
264with the
265.Ar extract
266target on
267.Ar portdir
268\&"textproc/figlet" and extract.suffix set to ".tgz":
269.Pp
270.Dl "port extract -D textproc/figlet extract.suffix=.tgz"
271.Pp
272.Sh DIAGNOSTICS
273.Ex -std
274.Sh FILES
275.Bl -tag -width
276.It Va ${prefix}/etc/ports/ports.conf
277Global configuration file for the DarwinPorts system.
278.It Va ${prefix}/etc/ports/sources.conf
279Global listing of the dports/ trees used by DarwinPorts. This file also enables rsync synchronization.
280.It Va ${prefix}/etc/ports/variants.conf
281Global variants used when a port is installed.
282.It Va ~/.portsrc
283User configuration file for the DarwinPorts system. It overrides the global
284.Ar ports.conf
285file.
286.El
287.Sh SEE ALSO
288.Xr ports.conf 5 ,
289.Xr portfile 7 ,
290.Xr porthier 7 ,
291.Xr portstyle 7
292.Sh AUTHORS
293.An "Landon Fuller" Aq landonf@opendarwin.org
294.An "Kevin Van Vechten" Aq kevin@opendarwin.org
295.An "Jordan K. Hubbard" Aq jkh@opendarwin.org
296.An "Ole Guldberg Jensen" Aq olegb@opendarwin.org
297.An "Robert Shaw" Aq rshaw@opendarwin.org
298.An "Chris Ridd" Aq cjr@opendarwin.org
299.An "Juan Manuel Palacios" Aq jmpp@opendarwin.org
300.An "Matt Anton" Aq matt@opendarwin.org
Note: See TracBrowser for help on using the repository browser.