14000f72fSDavid E. O'Brien.\" 24000f72fSDavid E. O'Brien.\" Copyright (c) 1997 David E. O'Brien 34000f72fSDavid E. O'Brien.\" 44000f72fSDavid E. O'Brien.\" All rights reserved. 54000f72fSDavid E. O'Brien.\" 64000f72fSDavid E. O'Brien.\" Redistribution and use in source and binary forms, with or without 74000f72fSDavid E. O'Brien.\" modification, are permitted provided that the following conditions 84000f72fSDavid E. O'Brien.\" are met: 94000f72fSDavid E. O'Brien.\" 1. Redistributions of source code must retain the above copyright 104000f72fSDavid E. O'Brien.\" notice, this list of conditions and the following disclaimer. 114000f72fSDavid E. O'Brien.\" 2. Redistributions in binary form must reproduce the above copyright 124000f72fSDavid E. O'Brien.\" notice, this list of conditions and the following disclaimer in the 134000f72fSDavid E. O'Brien.\" documentation and/or other materials provided with the distribution. 144000f72fSDavid E. O'Brien.\" 154000f72fSDavid E. O'Brien.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR 164000f72fSDavid E. O'Brien.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 174000f72fSDavid E. O'Brien.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 184000f72fSDavid E. O'Brien.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, 194000f72fSDavid E. O'Brien.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 204000f72fSDavid E. O'Brien.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 214000f72fSDavid E. O'Brien.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 224000f72fSDavid E. O'Brien.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 234000f72fSDavid E. O'Brien.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 244000f72fSDavid E. O'Brien.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 254000f72fSDavid E. O'Brien.\" 267f3dea24SPeter Wemm.\" $FreeBSD$ 274000f72fSDavid E. O'Brien.\" 28b66c141bSDavid E. O'Brien.Dd January 25, 1998 294000f72fSDavid E. O'Brien.Dt PORTS 7 303d45e180SRuslan Ermilov.Os 314000f72fSDavid E. O'Brien.Sh NAME 324000f72fSDavid E. O'Brien.Nm ports 334000f72fSDavid E. O'Brien.Nd contributed applications 344000f72fSDavid E. O'Brien.Sh DESCRIPTION 354000f72fSDavid E. O'BrienThe 36b5c508fbSRuslan Ermilov.Fx 370412d17cSRuslan ErmilovPorts Collection 384000f72fSDavid E. O'Brienoffers a simple way for users and 394000f72fSDavid E. O'Brienadministrators to install applications. 404000f72fSDavid E. O'BrienEach 4165dfa7aaSTim Vanderhoek.Em port 4265dfa7aaSTim Vanderhoekcontains any patches necessary to make the original 43753d686dSRuslan Ermilovapplication source code compile and run on 44753d686dSRuslan Ermilov.Bx . 45753d686dSRuslan ErmilovCompiling an 4665dfa7aaSTim Vanderhoekapplication is as simple as typing 470412d17cSRuslan Ermilov.Nm make Cm build 480412d17cSRuslan Ermilovin the port directory! 490412d17cSRuslan ErmilovThe 500412d17cSRuslan Ermilov.Pa Makefile 51e4b22b63SDavid E. O'Brienautomatically fetches the 520412d17cSRuslan Ermilovapplication source code, either from a local disk or via FTP, unpacks it 530412d17cSRuslan Ermilovon your system, applies the patches, and compiles it. 540412d17cSRuslan ErmilovIf all goes well, 554000f72fSDavid E. O'Briensimply type 560412d17cSRuslan Ermilov.Nm make Cm install 574000f72fSDavid E. O'Briento install the application. 584000f72fSDavid E. O'Brien.Pp 59b5c508fbSRuslan ErmilovIt is possible to download and use ports from the 60b5c508fbSRuslan Ermilov.Fx 61b5c508fbSRuslan Ermilovrepository 623fea87d2STim Vanderhoekthat are newer than the installed system; however it is important to 630412d17cSRuslan Ermilovinstall the appropriate 640412d17cSRuslan Ermilov.Dq "Upgrade Kit" 650412d17cSRuslan Ermilovfrom 660412d17cSRuslan Ermilov.Pa http://www.FreeBSD.org/ports/ 670412d17cSRuslan Ermilovfirst! 680412d17cSRuslan ErmilovThe 693fea87d2STim Vanderhoek.Xr portcheckout 1 703fea87d2STim Vanderhoekscript (also a port, of course!) will help to download new ports. 713fea87d2STim Vanderhoek.Pp 724000f72fSDavid E. O'BrienFor more information about using ports, see 730412d17cSRuslan Ermilov.Dq "Packages and Ports" 745d3d0230SMurray Stokelyin 750412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" , 76a5d31106SGiorgos Keramidas.Pa ( file:/usr/share/doc/en_US.ISO8859-1/books/handbook/ports.html 770412d17cSRuslan Ermilovor 78a5d31106SGiorgos Keramidas.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/ports.html ) . 794000f72fSDavid E. O'BrienFor information about creating new ports, see 800412d17cSRuslan Ermilov.%B "The Porter's Handbook" 810412d17cSRuslan Ermilov.Pa ( file:/usr/share/doc/porters-handbook/index.html 820412d17cSRuslan Ermilovor 831061be04SMarc Fonvieille.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/porters-handbook/ ) . 84e4b22b63SDavid E. O'Brien.Sh TARGETS 8565dfa7aaSTim VanderhoekSome of the targets work recursively through subdirectories. 860412d17cSRuslan ErmilovThis lets you, for example, install all of the 870412d17cSRuslan Ermilov.Dq Li biology 880412d17cSRuslan Ermilovports. 890412d17cSRuslan ErmilovThe targets that do this are 900412d17cSRuslan Ermilov.Cm build , checksum , clean , configure , 910412d17cSRuslan Ermilov.Cm depends , extract , fetch , install , 9265dfa7aaSTim Vanderhoekand 930412d17cSRuslan Ermilov.Cm package . 9465dfa7aaSTim Vanderhoek.Pp 9565dfa7aaSTim VanderhoekThe following targets will be run automatically by each proceeding 960412d17cSRuslan Ermilovtarget in order. 970412d17cSRuslan ErmilovThat is, 980412d17cSRuslan Ermilov.Cm build 9965dfa7aaSTim Vanderhoekwill be run 100c4d9468eSRuslan Ermilov(if necessary) 10165dfa7aaSTim Vanderhoekby 1020412d17cSRuslan Ermilov.Cm install , 10365dfa7aaSTim Vanderhoekand so on all the way to 1040412d17cSRuslan Ermilov.Cm fetch . 105019de50bSDima DorfmanUsually, you will only use the 1060412d17cSRuslan Ermilov.Cm install 107019de50bSDima Dorfmantarget. 1080412d17cSRuslan Ermilov.Bl -tag -width ".Cm configure" 1090412d17cSRuslan Ermilov.It Cm fetch 1100412d17cSRuslan ErmilovFetch all of the files needed to build this port from the sites 1110412d17cSRuslan Ermilovlisted in 1120412d17cSRuslan Ermilov.Va MASTER_SITES 11365dfa7aaSTim Vanderhoekand 1140412d17cSRuslan Ermilov.Va PATCH_SITES . 1150412d17cSRuslan ErmilovSee 1160412d17cSRuslan Ermilov.Va FETCH_CMD 1170412d17cSRuslan Ermilovand 1180412d17cSRuslan Ermilov.Va MASTER_SITE_OVERRIDE . 1190412d17cSRuslan Ermilov.It Cm checksum 120019de50bSDima DorfmanVerify that the fetched distfile's checksum matches the one the port was 121019de50bSDima Dorfmantested against. 12265dfa7aaSTim VanderhoekDefining 1230412d17cSRuslan Ermilov.Va NO_CHECKSUM 12465dfa7aaSTim Vanderhoekwill skip this step. 1250412d17cSRuslan Ermilov.It Cm depends 12665dfa7aaSTim VanderhoekInstall 127c4d9468eSRuslan Ermilov(or compile if only compilation is necessary) 1280412d17cSRuslan Ermilovany dependencies of the current port. 1290412d17cSRuslan ErmilovWhen called by the 1300412d17cSRuslan Ermilov.Cm extract 13165dfa7aaSTim Vanderhoekor 1320412d17cSRuslan Ermilov.Cm fetch 13365dfa7aaSTim Vanderhoektargets, this is run in piecemeal as 1340412d17cSRuslan Ermilov.Cm fetch-depends , build-depends , 1350412d17cSRuslan Ermilovetc. 1360412d17cSRuslan ErmilovDefining 1370412d17cSRuslan Ermilov.Va NO_DEPENDS 13865dfa7aaSTim Vanderhoekwill skip this step. 1390412d17cSRuslan Ermilov.It Cm extract 14065dfa7aaSTim VanderhoekExpand the distfile into a work directory. 1410412d17cSRuslan Ermilov.It Cm patch 14265dfa7aaSTim VanderhoekApply any patches that are necessary for the port. 1430412d17cSRuslan Ermilov.It Cm configure 1440412d17cSRuslan ErmilovConfigure the port. 1450412d17cSRuslan ErmilovSome ports will ask you questions during this stage. 1460412d17cSRuslan ErmilovSee 1470412d17cSRuslan Ermilov.Va INTERACTIVE 14865dfa7aaSTim Vanderhoekand 1490412d17cSRuslan Ermilov.Va BATCH . 1500412d17cSRuslan Ermilov.It Cm build 1510412d17cSRuslan ErmilovBuild the port. 1520412d17cSRuslan ErmilovThis is the same as calling the 1530412d17cSRuslan Ermilov.Cm all 15465dfa7aaSTim Vanderhoektarget. 1550412d17cSRuslan Ermilov.It Cm install 1560412d17cSRuslan ErmilovInstall the port and register it with the package system. 1570412d17cSRuslan ErmilovThis is all you really need to do. 15865dfa7aaSTim Vanderhoek.El 15965dfa7aaSTim Vanderhoek.Pp 16065dfa7aaSTim VanderhoekThe following targets are not run during the normal install process. 16156e37108SGiorgos Keramidas.Bl -tag -width ".Cm fetch-recursive" 1620412d17cSRuslan Ermilov.It Cm fetch-list 163e4b22b63SDavid E. O'BrienShow list of files needed to be fetched in order to build the port. 16456e37108SGiorgos Keramidas.It Cm fetch-recursive 16556e37108SGiorgos KeramidasFetch the distfiles of the port and all its dependencies. 1660412d17cSRuslan Ermilov.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list 16765dfa7aaSTim VanderhoekPrint a list of all the compile and run dependencies, and dependencies 16865dfa7aaSTim Vanderhoekof those dependencies. 1690412d17cSRuslan Ermilov.It Cm clean 1700412d17cSRuslan ErmilovRemove the expanded source code. 1710412d17cSRuslan ErmilovThis recurses to dependencies unless 1720412d17cSRuslan Ermilov.Va NOCLEANDEPENDS 17365dfa7aaSTim Vanderhoekis defined. 1740412d17cSRuslan Ermilov.It Cm distclean 1750412d17cSRuslan ErmilovRemove the port's distfiles and perform the 1760412d17cSRuslan Ermilov.Cm clean 177019de50bSDima Dorfmantarget. 178019de50bSDima DorfmanThe 1790412d17cSRuslan Ermilov.Cm clean 18065dfa7aaSTim Vanderhoekportion recurses to dependencies unless 1810412d17cSRuslan Ermilov.Va NOCLEANDEPENDS 18265dfa7aaSTim Vanderhoekis defined, but the 1830412d17cSRuslan Ermilov.Cm distclean 18465dfa7aaSTim Vanderhoekportion never recurses 185c4d9468eSRuslan Ermilov(this is perhaps a bug). 1860412d17cSRuslan Ermilov.It Cm reinstall 18765dfa7aaSTim VanderhoekUse this to restore a port after using 18865dfa7aaSTim Vanderhoek.Xr pkg_delete 1 18965dfa7aaSTim Vanderhoekwhen you should have used 1900412d17cSRuslan Ermilov.Cm deinstall . 1910412d17cSRuslan Ermilov.It Cm deinstall 19265dfa7aaSTim VanderhoekRemove an installed port from the system, similar to 19365dfa7aaSTim Vanderhoek.Xr pkg_delete 1 . 1940412d17cSRuslan Ermilov.It Cm package 1950412d17cSRuslan ErmilovMake a binary package for the port. 1960412d17cSRuslan ErmilovThe port will be installed if it has not already been. 1970412d17cSRuslan ErmilovThe package is a 19881c4ddbfSChristian Brueffer.Pa .tbz 1990412d17cSRuslan Ermilovfile that you can use to 20065dfa7aaSTim Vanderhoekinstall the port on other machines with 20165dfa7aaSTim Vanderhoek.Xr pkg_add 1 . 20265dfa7aaSTim VanderhoekIf the directory specified by 2030412d17cSRuslan Ermilov.Va PACKAGES 2040412d17cSRuslan Ermilovdoes not exist, the package will be put into the current directory. 20583d04c76STim VanderhoekSee 2060412d17cSRuslan Ermilov.Va PKGREPOSITORY 20783d04c76STim Vanderhoekand 2080412d17cSRuslan Ermilov.Va PKGFILE . 2090412d17cSRuslan Ermilov.It Cm readmes 21083d04c76STim VanderhoekCreate a port's 21183d04c76STim Vanderhoek.Pa README.html . 2126b4c0736STim VanderhoekThis can be used from 2136b4c0736STim Vanderhoek.Pa /usr/ports 2146b4c0736STim Vanderhoekto create a browsable web of all ports on your system! 2150412d17cSRuslan Ermilov.It Cm search 216019de50bSDima DorfmanSearch the 217019de50bSDima Dorfman.Pa INDEX 218019de50bSDima Dorfmanfile for the pattern specified by either the 2190412d17cSRuslan Ermilov.Va key 220019de50bSDima Dorfman(searches the port name, comment, and dependencies) or 2210412d17cSRuslan Ermilov.Va name 2220412d17cSRuslan Ermilov(searches the port name only) 2230412d17cSRuslan Ermilov.Xr make 1 2240412d17cSRuslan Ermilovvariable. 225019de50bSDima DorfmanFor example, one would type: 226019de50bSDima Dorfman.Pp 2270412d17cSRuslan Ermilov.Dl "cd /usr/ports && make search name=query" 228019de50bSDima Dorfman.Pp 229019de50bSDima Dorfmanto find all ports whose 230019de50bSDima Dorfmanname matches 2310412d17cSRuslan Ermilov.Dq Li query . 232019de50bSDima DorfmanResults include the matching ports' path, comment, maintainer, 233019de50bSDima Dorfmanbuild dependencies, and run dependencies. 2340412d17cSRuslan Ermilov.It Cm index 235019de50bSDima DorfmanCreate 236019de50bSDima Dorfman.Pa /usr/ports/INDEX , 237019de50bSDima Dorfmanwhich is used by the 2380412d17cSRuslan Ermilov.Cm pretty-print-* 239019de50bSDima Dorfmanand 2400412d17cSRuslan Ermilov.Cm search 241019de50bSDima Dorfmantargets. 2420412d17cSRuslan ErmilovWhile the master 2430412d17cSRuslan Ermilov.Pa INDEX 2440412d17cSRuslan Ermilovfile in the CVS repository is periodically 245019de50bSDima Dorfmanupdated, running the 2460412d17cSRuslan Ermilov.Cm index 2470412d17cSRuslan Ermilovtarget will ensure your 2480412d17cSRuslan Ermilov.Pa INDEX 2490412d17cSRuslan Ermilovfile is up to date with your ports tree. 2503136363fSRuslan Ermilov.El 251def37e7cSMike Pritchard.Sh ENVIRONMENT 25265dfa7aaSTim VanderhoekYou can change all of these. 2530412d17cSRuslan Ermilov.Bl -tag -width ".Va MASTER_SITES" 2540412d17cSRuslan Ermilov.It Va PORTSDIR 2550412d17cSRuslan ErmilovLocation of the ports tree. 2560412d17cSRuslan ErmilovThis is 25765dfa7aaSTim Vanderhoek.Pa /usr/ports 25865dfa7aaSTim Vanderhoekon 259b5c508fbSRuslan Ermilov.Fx 260e4b22b63SDavid E. O'Brienand 2610412d17cSRuslan Ermilov.Ox , 26265dfa7aaSTim Vanderhoekand 26365dfa7aaSTim Vanderhoek.Pa /usr/pkgsrc 26465dfa7aaSTim Vanderhoekon 26565dfa7aaSTim Vanderhoek.Nx . 2660412d17cSRuslan Ermilov.It Va WRKDIRPREFIX 2670412d17cSRuslan ErmilovWhere to create any temporary files. 2680412d17cSRuslan ErmilovUseful if 2690412d17cSRuslan Ermilov.Va PORTSDIR 2700412d17cSRuslan Ermilovis read-only (perhaps mounted from a CD-ROM). 2710412d17cSRuslan Ermilov.It Va DISTDIR 27265dfa7aaSTim VanderhoekWhere to find/put distfiles, normally 27365dfa7aaSTim Vanderhoek.Pa distfiles/ 27465dfa7aaSTim Vanderhoekin 2750412d17cSRuslan Ermilov.Va PORTSDIR . 2760412d17cSRuslan Ermilov.It Va PACKAGES 27765dfa7aaSTim VanderhoekUsed only for the 2780412d17cSRuslan Ermilov.Cm package 27965dfa7aaSTim Vanderhoektarget; the base directory for the packages tree, normally 28065dfa7aaSTim Vanderhoek.Pa packages/ 28165dfa7aaSTim Vanderhoekin 2820412d17cSRuslan Ermilov.Va PORTSDIR . 28365dfa7aaSTim VanderhoekIf this directory exists, the package tree will be (partially) constructed. 2840412d17cSRuslan ErmilovThis directory does not have to exist; if it does not, packages will be 28583d04c76STim Vanderhoekplaced into the current directory, or you can define one of 2860412d17cSRuslan Ermilov.Bl -tag -width ".Va PKGREPOSITORY" 2870412d17cSRuslan Ermilov.It Va PKGREPOSITORY 28883d04c76STim VanderhoekDirectory to put the package in. 2890412d17cSRuslan Ermilov.It Va PKGFILE 29065dfa7aaSTim VanderhoekThe full path to the package. 29165dfa7aaSTim Vanderhoek.El 2920412d17cSRuslan Ermilov.It Va PREFIX 29365dfa7aaSTim VanderhoekWhere to install things in general 294c4d9468eSRuslan Ermilov(usually 29565dfa7aaSTim Vanderhoek.Pa /usr/local 29665dfa7aaSTim Vanderhoekor 2970412d17cSRuslan Ermilov.Pa /usr/X11R6 ) . 2980412d17cSRuslan Ermilov.It Va MASTER_SITES 299e4b22b63SDavid E. O'BrienPrimary sites for distribution files if not found locally. 3000412d17cSRuslan Ermilov.It Va PATCH_SITES 3010412d17cSRuslan ErmilovPrimary locations for distribution patch files if not found 302e4b22b63SDavid E. O'Brienlocally. 3030412d17cSRuslan Ermilov.It Va MASTER_SITE_FREEBSD 304b5c508fbSRuslan ErmilovIf set, go to the master 305b5c508fbSRuslan Ermilov.Fx 306b5c508fbSRuslan Ermilovsite for all files. 3070412d17cSRuslan Ermilov.It Va MASTER_SITE_OVERRIDE 308b81d803eSRuslan ErmilovTry going to these sites for all files and patches, first. 3090412d17cSRuslan Ermilov.It Va NOCLEANDEPENDS 3100412d17cSRuslan ErmilovIf defined, do not let 3110412d17cSRuslan Ermilov.Cm clean 31265dfa7aaSTim Vanderhoekrecurse to dependencies. 3130412d17cSRuslan Ermilov.It Va FETCH_CMD 3140412d17cSRuslan ErmilovCommand to use to fetch files. 3150412d17cSRuslan ErmilovNormally 31665dfa7aaSTim Vanderhoek.Xr fetch 1 . 3170412d17cSRuslan Ermilov.It Va FORCE_PKG_REGISTER 31865dfa7aaSTim VanderhoekIf set, overwrite any existing package registration on the system. 3190412d17cSRuslan Ermilov.It Va MOTIFLIB 3200412d17cSRuslan ErmilovLocation of 3210412d17cSRuslan Ermilov.Pa libXm. Ns Brq Pa a , Ns Pa so . 3220412d17cSRuslan Ermilov.It Va INTERACTIVE 32365dfa7aaSTim VanderhoekIf defined, only operate on a port if it requires interaction. 3240412d17cSRuslan Ermilov.It Va BATCH 32565dfa7aaSTim VanderhoekIf defined, only operate on a port if it can be installed 100% automatically. 32665dfa7aaSTim Vanderhoek.El 3274000f72fSDavid E. O'Brien.Sh FILES 3280412d17cSRuslan Ermilov.Bl -tag -width ".Pa /usr/ports/Mk/bsd.port.mk" -compact 3294000f72fSDavid E. O'Brien.It Pa /usr/ports 330b5c508fbSRuslan ErmilovThe default ports directory 331c4d9468eSRuslan Ermilov.No ( Fx 332b5c508fbSRuslan Ermilovand 333c4d9468eSRuslan Ermilov.Ox ) . 334e4b22b63SDavid E. O'Brien.It Pa /usr/pkgsrc 335d013e3f5SRuslan ErmilovThe default ports directory 336d013e3f5SRuslan Ermilov.Pq Nx . 337652627f0STim Vanderhoek.It Pa /usr/ports/Mk/bsd.port.mk 33865dfa7aaSTim VanderhoekThe big Kahuna. 3393136363fSRuslan Ermilov.El 3404000f72fSDavid E. O'Brien.Sh SEE ALSO 3414000f72fSDavid E. O'Brien.Xr make 1 , 3424000f72fSDavid E. O'Brien.Xr pkg_add 1 , 3434000f72fSDavid E. O'Brien.Xr pkg_create 1 , 3444000f72fSDavid E. O'Brien.Xr pkg_delete 1 , 3453fea87d2STim Vanderhoek.Xr pkg_info 1 , 3467ec24193STim Vanderhoek.Xr pkg_version 1 347def37e7cSMike Pritchard.Pp 348def37e7cSMike PritchardThe following are part of the ports collection: 349def37e7cSMike Pritchard.Pp 350def37e7cSMike Pritchard.Xr pib 1 , 351def37e7cSMike Pritchard.Xr portcheckout 1 , 352ac8011f8SDavid E. O'Brien.Xr portlint 1 3530412d17cSRuslan Ermilov.Rs 3540412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" 3550412d17cSRuslan Ermilov.Re 35665dfa7aaSTim Vanderhoek.Pp 3570412d17cSRuslan Ermilov.Pa http://www.FreeBSD.org/ports 358c4d9468eSRuslan Ermilov(searchable index of all ports) 3594000f72fSDavid E. O'Brien.Sh AUTHORS 360f4d874a1SRuslan Ermilov.An -nosplit 361aaf1f16eSPhilippe CharnierThis man page was originated by 362aaf1f16eSPhilippe Charnier.An David O'Brien . 363aaf1f16eSPhilippe CharnierThe ports collection is maintained by 364aaf1f16eSPhilippe Charnier.An Satoshi Asami 365ac8011f8SDavid E. O'Brienand the Awesome Ports Team. 3664000f72fSDavid E. O'Brien.Sh HISTORY 3670412d17cSRuslan ErmilovThe Ports Collection 3684000f72fSDavid E. O'Brienappeared in 3694000f72fSDavid E. O'Brien.Fx 1.0 . 3706b4c0736STim VanderhoekIt has since spread to 3716b4c0736STim Vanderhoek.Nx 3726b4c0736STim Vanderhoekand 3736b4c0736STim Vanderhoek.Ox . 37465dfa7aaSTim Vanderhoek.Sh BUGS 3750412d17cSRuslan ErmilovPorts documentation is split over four places \(em 3762693c8b9STim Vanderhoek.Pa /usr/ports/Mk/bsd.port.mk , 3770412d17cSRuslan Ermilov.%B "The Porter's Handbook" , 37865dfa7aaSTim Vanderhoekthe 3790412d17cSRuslan Ermilov.Dq "Packages and Ports" 3805d3d0230SMurray Stokelychapter of 3810412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" , 3825d3d0230SMurray Stokelyand 383facc6767SRuslan Ermilovthis man page. 38465dfa7aaSTim Vanderhoek.Pp 38565dfa7aaSTim VanderhoekThis man page is too long. 386