diff options
author | Marco S Hyman <marc@cvs.openbsd.org> | 1998-06-24 18:15:09 +0000 |
---|---|---|
committer | Marco S Hyman <marc@cvs.openbsd.org> | 1998-06-24 18:15:09 +0000 |
commit | 147c88544ac34d9f27f4cd53c758231013881670 (patch) | |
tree | fbd9d62fb4dd4166e3845ad171a9c8ba740ad9c4 /share | |
parent | d2ca3afd28b6a51becc299e18f1759c478f6ae34 (diff) |
add ports.7, stolen from freebsd
Diffstat (limited to 'share')
-rw-r--r-- | share/man/man7/Makefile | 2 | ||||
-rw-r--r-- | share/man/man7/ports.7 | 280 |
2 files changed, 281 insertions, 1 deletions
diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile index be3db8c23d8..35c7fd573b3 100644 --- a/share/man/man7/Makefile +++ b/share/man/man7/Makefile @@ -4,7 +4,7 @@ # missing: eqnchar.7 man.7 ms.7 term.7 MAN= ascii.7 environ.7 hier.7 hostname.7 intro.7 mailaddr.7 \ - mdoc.7 mdoc.samples.7 operator.7 + mdoc.7 mdoc.samples.7 operator.7 ports.7 MLINKS= mdoc.7 mandoc.7 mdoc.samples.7 mandoc.samples.7 .include <bsd.prog.mk> diff --git a/share/man/man7/ports.7 b/share/man/man7/ports.7 new file mode 100644 index 00000000000..5892ef02de0 --- /dev/null +++ b/share/man/man7/ports.7 @@ -0,0 +1,280 @@ +.\" +.\" Copyright (c) 1997 David E. O'Brien +.\" +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $OpenBSD: ports.7,v 1.1 1998/06/24 18:15:08 marc Exp $ +.\" $FreeBSD: ports.7,v 1.7 1998/06/23 04:38:50 hoek Exp $ +.\" +.Dd January 25, 1998 +.Dt PORTS 7 +.Os OpenBSD 2.3 +.Sh NAME +.Nm ports +.Nd contributed applications +.Sh DESCRIPTION +The +.Nm OpenBSD Ports Collection +(shamelessly stolen from the FreeBSD Ports Collection) offers a simple way +for users and administrators to install applications. +Each +.Em port +contains any patches necessary to make the original +application source code compile and run on BSD. Compiling an +application is as simple as typing +.Ic make +in the port directory! The +.Ql Pa Makefile +automatically fetches the +application source code, either from a local disk or via ftp, unpacks it +on your system, applies the patches, and compiles it. If all goes well, +simply type +.Ic make install +to install the application. +.Pp +For more information about using ports, see +.Nm The OpenBSD Ports Mechanism +(http://www.openbsd.org/ports.html). +For information about creating new ports, see +.Nm Building an OpenBSD Port +(http://www.openbsd.org/porting.html). +Other excellent resources are the ports and porting sections of the +FreeBSD Handbook (http://www.freebsd.org/handbook/ports.html and +http://www.freebsd.org/handbook/porting.html) as well as the NetBSD +Package System documentation +(http://www.netbsd.org/Documentation/netbsd/Packages.txt). +.Pp +.Sh TARGETS +.Pp +Some of the targets work recursively through subdirectories. +This lets you, for example, install all of the net +ports. The targets that do this are +.Ar build , checksum , clean , configure , extract , fetch , install , +and +.Ar package . +.Pp +The following targets will be run automatically by each proceeding +target in order. That is, +.Ar build +will be run +.Pq if necessary +by +.Ar install , +and so on all the way to +.Ar fetch . +You will usually only target +.Ar install . +.Bl -tag -width configure +.It Ar fetch +Fetch all of the files needed to build this port from the site(s) +listed in MASTER_SITES and PATCH_SITES. See +.Ev FETCH_CMD +and +.Ev MASTER_SITE_OVERRIDE . +.It Ar checksum +Verify that the fetched distfile matches the one the port was tested against. +Defining +.Ev NO_CHECKSUM +will skip this step. +.It Ar depends +Install +.Pq or compile if only compilation is necessary +any dependencies of the current port. When called by the +.Ar extract +or +.Ar fetch +targets, this is run in piecemeal as +.Ar fetch-depends , +.Ar build-depends , +etc. Defining +.Ev NO_DEPENDS +will skip this step. +.It Ar extract +Expand the distfile into a work directory. +.It Ar patch +Apply any patches that are necessary for the port. +.It Ar configure +Configure the port. Some ports will ask you questions during +this stage. See +.Ev INTERACTIVE +and +.Ev BATCH . +.It Ar build +Build the the port. This is the same as calling the +.Ar all +target. +.It Ar install +Install the the port and register it with the package system. This +is all you really need to do. +.El +.Pp +The following targets are not run during the normal install process. +.Bl -tag -width fetch-list +.It Ar fetch-list +Show list of files needed to be fetched in order to build the port. +.It Ar depends-list package-depends +Print a list of all the compile and run dependencies, and dependencies +of those dependencies. +.It Ar clean +Remove the expanded source code. This recurses to dependencies unless +.Ev NOCLEANDEPENDS +is defined. +.It Ar distclean +Remove the port's distfile(s) and perform the +.Ar clean +operation. The +.Sq clean +portion recurses to dependencies unless +.Ev NOCLEANDEPENDS +is defined, but the +.Sq distclean +portion never recurses +.Pq this is perhaps a bug . +.It Ar reinstall +Use this to restore a port after using +.Xr pkg_delete 1 . +.It Ar package +Make a binary package for the port. The port will be installed if it +hasn't already been. The package is a .tgz file that you can use to +install the port on other machines with +.Xr pkg_add 1 . +If the directory specified by +.Ev PACKAGES +does not exist the package will be put into the current directory. +See +.Ev PKGREPOSITORY +and +.Ev PKGFILE . +.El +.Sh ENVIRONMENT VARIABLES +You can change all of these. +.Bl -tag -width MASTER_SITES +.It Ev PORTSDIR +Location of the ports tree. This is +.Pa /usr/ports +on +.\" .Fx +FreeBSD +and +.\" .Ox , +OpenBSD +and +.Pa /usr/pkgsrc +on +.Nx . +.It Ev DISTDIR +Where to find/put distfiles, normally +.Pa distfiles/ +in +.Ev PORTSDIR . +.It Ev PACKAGES +Used only for the +.Ar package +target; the base directory for the packages tree, normally +.Pa packages/ +in +.Ev PORTSDIR . +If this directory exists, the package tree will be (partially) constructed. +This directory does not have to exist; if it doesn't packages will be +placed into the current directory, or you can define one of +.Bl -tag -width PKGREPOSITORY +.It Ev PKGREPOSITORY +Directory to put the package in. +.It Ev PKGFILE +The full path to the package. +.El +.It Ev PREFIX +Where to install things in general +.Po +usually +.Pa /usr/local +or +.Pa /usr/X11R6 +.Pc +.It Ev MASTER_SITES +Primary sites for distribution files if not found locally. +.It Ev PATCH_SITES +Primary location(s) for distribution patch files if not found +locally. +.It Ev MASTER_SITE_OPENBSD +If set, go to the master OpenBSD site for all files. +.It Ev MASTER_SITE_FREEBSD +If set, go to the master FreeBSD site for all files. +.It Ev MASTER_SITE_OVERRIDE +Try going to this site for all files and patches, first. +.It Ev NOCLEANDEPENDS +If defined, don't let +.Sq clean +recurse to dependencies. +.It Ev FETCH_CMD +Command to use to fetch files. Normally +.Xr fetch 1 . +.It Ev FORCE_PKG_REGISTER +If set, overwrite any existing package registration on the system. +.It Ev MOTIFLIB +Location of libXm.{a,so}. +.It Ev PATCH_DEBUG +If defined, display verbose output when applying each patch. +.It Ev INTERACTIVE +If defined, only operate on a port if it requires interaction. +.It Ev BATCH +If defined, only operate on a port if it can be installed 100% automatically. +.El +.Sh FILES +.Bl -tag -width /usr/ports/xxxx -compact +.It Pa /usr/ports +The default ports directory (FreeBSD and OpenBSD). +.It Pa /usr/pkgsrc +The default ports directory (NetBSD). +.It Pa /usr/share/mk/bsd.port.mk +The big Kahuna. +.Sh SEE ALSO +.Xr make 1 , +.Xr pkg_add 1 , +.Xr pkg_create 1 , +.Xr pkg_delete 1 , +.Xr pkg_info 1 . +.Pp +The FreeBSD handbook. +.Sh AUTHORS +This man page was originated by +.An David O'Brien . +The FreeBSD ports collection is maintained by +.An Satoshi Asami +and the awesome ports team. The OpenBSD ports collection is maintained by +Marco S Hyman and a host of others found at ports@openbsd.org. +.Sh HISTORY +.Nm The Ports Collection +appeared in FreeBSD 1.0. +.Sh BUGS +Ports documentation is split over four places --- +.Pa /usr/share/mk/bsd.port.mk , +the +.Dq Ports Collection +section of the FreeBSD handbook, the +.Dq Porting Existing Software +section of the FreeBSD handbook, and +.Xr ports 7 . +OpenBSD adds a few web pages to further confuse the issue. +.Pp +This man page is too long. |