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.\" 28*1b3fba16SEdward Tomasz Napierala.Dd July 5, 2018 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. 4086b83608SEdward Tomasz NapieralaIt is also used to build the packages, to be installed using 4186b83608SEdward Tomasz Napierala.Xr pkg 8 . 424000f72fSDavid E. O'BrienEach 4365dfa7aaSTim Vanderhoek.Em port 4465dfa7aaSTim Vanderhoekcontains any patches necessary to make the original 45753d686dSRuslan Ermilovapplication source code compile and run on 46481974c2SEitan Adler.Fx . 47753d686dSRuslan ErmilovCompiling an 4865dfa7aaSTim Vanderhoekapplication is as simple as typing 490412d17cSRuslan Ermilov.Nm make Cm build 500412d17cSRuslan Ermilovin the port directory! 510412d17cSRuslan ErmilovThe 520412d17cSRuslan Ermilov.Pa Makefile 53e4b22b63SDavid E. O'Brienautomatically fetches the 540412d17cSRuslan Ermilovapplication source code, either from a local disk or via FTP, unpacks it 550412d17cSRuslan Ermilovon your system, applies the patches, and compiles it. 560412d17cSRuslan ErmilovIf all goes well, 574000f72fSDavid E. O'Briensimply type 580412d17cSRuslan Ermilov.Nm make Cm install 594000f72fSDavid E. O'Briento install the application. 604000f72fSDavid E. O'Brien.Pp 618f9c7371SEdward Tomasz NapieralaFor more information about using ports, see the 628f9c7371SEdward Tomasz Napierala.Dq "Packages and Ports" section 635d3d0230SMurray Stokelyin 648f9c7371SEdward Tomasz Napierala.%B "The FreeBSD Handbook": 658f9c7371SEdward Tomasz Napierala.Pp 668f9c7371SEdward Tomasz Napierala.Lk https://www.FreeBSD.org/doc/en/books/handbook/ports.html 678f9c7371SEdward Tomasz Napierala.Pp 688f9c7371SEdward Tomasz NapieralaFor information about creating new ports, see: 698f9c7371SEdward Tomasz Napierala.%B "The Porter's Handbook": 708f9c7371SEdward Tomasz Napierala.Pp 718f9c7371SEdward Tomasz Napierala.Lk https://www.FreeBSD.org/doc/en/books/porters-handbook/ 72e4b22b63SDavid E. O'Brien.Sh TARGETS 7365dfa7aaSTim VanderhoekSome of the targets work recursively through subdirectories. 740412d17cSRuslan ErmilovThis lets you, for example, install all of the 750412d17cSRuslan Ermilov.Dq Li biology 760412d17cSRuslan Ermilovports. 770412d17cSRuslan ErmilovThe targets that do this are 780412d17cSRuslan Ermilov.Cm build , checksum , clean , configure , 790412d17cSRuslan Ermilov.Cm depends , extract , fetch , install , 8065dfa7aaSTim Vanderhoekand 810412d17cSRuslan Ermilov.Cm package . 8265dfa7aaSTim Vanderhoek.Pp 8365dfa7aaSTim VanderhoekThe following targets will be run automatically by each proceeding 840412d17cSRuslan Ermilovtarget in order. 850412d17cSRuslan ErmilovThat is, 860412d17cSRuslan Ermilov.Cm build 8765dfa7aaSTim Vanderhoekwill be run 88c4d9468eSRuslan Ermilov(if necessary) 8965dfa7aaSTim Vanderhoekby 900412d17cSRuslan Ermilov.Cm install , 9165dfa7aaSTim Vanderhoekand so on all the way to 920412d17cSRuslan Ermilov.Cm fetch . 93019de50bSDima DorfmanUsually, you will only use the 940412d17cSRuslan Ermilov.Cm install 95019de50bSDima Dorfmantarget. 960412d17cSRuslan Ermilov.Bl -tag -width ".Cm configure" 9703687bafSKirill Ponomarev.It Cm config 9803687bafSKirill PonomarevConfigure 9903687bafSKirill Ponomarev.Va OPTIONS 10003687bafSKirill Ponomarevfor this port using 101ae41fe61SEitan Adler.Xr dialog4ports 1 . 1020412d17cSRuslan Ermilov.It Cm fetch 1030412d17cSRuslan ErmilovFetch all of the files needed to build this port from the sites 1040412d17cSRuslan Ermilovlisted in 1050412d17cSRuslan Ermilov.Va MASTER_SITES 10665dfa7aaSTim Vanderhoekand 1070412d17cSRuslan Ermilov.Va PATCH_SITES . 1080412d17cSRuslan ErmilovSee 109e57fe046SKirill Ponomarev.Va FETCH_CMD , MASTER_SITE_OVERRIDE 1100412d17cSRuslan Ermilovand 111e57fe046SKirill Ponomarev.Va MASTER_SITE_BACKUP . 1120412d17cSRuslan Ermilov.It Cm checksum 113019de50bSDima DorfmanVerify that the fetched distfile's checksum matches the one the port was 114019de50bSDima Dorfmantested against. 11567900914SBenedict ReuschlingIf the distfile's checksum does not match, it also fetches the distfiles 11667900914SBenedict Reuschlingwhich are missing or failed the checksum calculation. 11765dfa7aaSTim VanderhoekDefining 1180412d17cSRuslan Ermilov.Va NO_CHECKSUM 11965dfa7aaSTim Vanderhoekwill skip this step. 1200412d17cSRuslan Ermilov.It Cm depends 12165dfa7aaSTim VanderhoekInstall 122c4d9468eSRuslan Ermilov(or compile if only compilation is necessary) 1230412d17cSRuslan Ermilovany dependencies of the current port. 1240412d17cSRuslan ErmilovWhen called by the 1250412d17cSRuslan Ermilov.Cm extract 12665dfa7aaSTim Vanderhoekor 1270412d17cSRuslan Ermilov.Cm fetch 12865dfa7aaSTim Vanderhoektargets, this is run in piecemeal as 1290412d17cSRuslan Ermilov.Cm fetch-depends , build-depends , 1300412d17cSRuslan Ermilovetc. 1310412d17cSRuslan ErmilovDefining 1320412d17cSRuslan Ermilov.Va NO_DEPENDS 13365dfa7aaSTim Vanderhoekwill skip this step. 1340412d17cSRuslan Ermilov.It Cm extract 13565dfa7aaSTim VanderhoekExpand the distfile into a work directory. 1360412d17cSRuslan Ermilov.It Cm patch 13765dfa7aaSTim VanderhoekApply any patches that are necessary for the port. 1380412d17cSRuslan Ermilov.It Cm configure 1390412d17cSRuslan ErmilovConfigure the port. 1400412d17cSRuslan ErmilovSome ports will ask you questions during this stage. 1410412d17cSRuslan ErmilovSee 1420412d17cSRuslan Ermilov.Va INTERACTIVE 14365dfa7aaSTim Vanderhoekand 1440412d17cSRuslan Ermilov.Va BATCH . 1450412d17cSRuslan Ermilov.It Cm build 1460412d17cSRuslan ErmilovBuild the port. 1470412d17cSRuslan ErmilovThis is the same as calling the 1480412d17cSRuslan Ermilov.Cm all 14965dfa7aaSTim Vanderhoektarget. 1500412d17cSRuslan Ermilov.It Cm install 1510412d17cSRuslan ErmilovInstall the port and register it with the package system. 1520412d17cSRuslan ErmilovThis is all you really need to do. 15365dfa7aaSTim Vanderhoek.El 15465dfa7aaSTim Vanderhoek.Pp 15565dfa7aaSTim VanderhoekThe following targets are not run during the normal install process. 15656e37108SGiorgos Keramidas.Bl -tag -width ".Cm fetch-recursive" 15703687bafSKirill Ponomarev.It Cm showconfig 15803687bafSKirill PonomarevDisplay 15903687bafSKirill Ponomarev.Va OPTIONS 16003687bafSKirill Ponomarevconfig for this port. 161a571610dSKirill Ponomarev.It Cm showconfig-recursive 162a571610dSKirill PonomarevDisplay 163a571610dSKirill Ponomarev.Va OPTIONS 164a571610dSKirill Ponomarevconfig for this port and all its dependencies. 16503687bafSKirill Ponomarev.It Cm rmconfig 16603687bafSKirill PonomarevRemove 16703687bafSKirill Ponomarev.Va OPTIONS 16803687bafSKirill Ponomarevconfig for this port. 169a571610dSKirill Ponomarev.It Cm rmconfig-recursive 170a571610dSKirill PonomarevRemove 171a571610dSKirill Ponomarev.Va OPTIONS 172a571610dSKirill Ponomarevconfig for this port and all its dependencies. 173a571610dSKirill Ponomarev.It Cm config-conditional 174a571610dSKirill PonomarevSkip the ports which have already had their 175a571610dSKirill Ponomarev.Va OPTIONS 176a571610dSKirill Ponomarevconfigured. 177039b8701STom Rhodes.It Cm config-recursive 178039b8701STom RhodesConfigure 179039b8701STom Rhodes.Va OPTIONS 180039b8701STom Rhodesfor this port and all its dependencies using 181ae41fe61SEitan Adler.Xr dialog4ports 1 . 1820412d17cSRuslan Ermilov.It Cm fetch-list 18303687bafSKirill PonomarevShow list of files to be fetched in order to build the port. 18456e37108SGiorgos Keramidas.It Cm fetch-recursive 18556e37108SGiorgos KeramidasFetch the distfiles of the port and all its dependencies. 186515ba752SChristian Brueffer.It Cm fetch-recursive-list 187515ba752SChristian BruefferShow list of files that would be retrieved by 188515ba752SChristian Brueffer.Cm fetch-recursive . 189d40caf29SThomas Abthorpe.It Cm run-depends-list , build-depends-list 190d40caf29SThomas AbthorpePrint a list of all the compile and run dependencies, and dependencies 191d40caf29SThomas Abthorpeof those dependencies, by port directory. 192039b8701STom Rhodes.It Cm all-depends-list 193039b8701STom RhodesPrint a list of all dependencies for the port. 1940412d17cSRuslan Ermilov.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list 19565dfa7aaSTim VanderhoekPrint a list of all the compile and run dependencies, and dependencies 196d40caf29SThomas Abthorpeof those dependencies, by port name and version. 197c8ff7e9eSPav Lucistnik.It Cm missing 198c8ff7e9eSPav LucistnikPrint a list of missing dependencies to be installed for the port. 1990412d17cSRuslan Ermilov.It Cm clean 2000412d17cSRuslan ErmilovRemove the expanded source code. 2010412d17cSRuslan ErmilovThis recurses to dependencies unless 2020412d17cSRuslan Ermilov.Va NOCLEANDEPENDS 20365dfa7aaSTim Vanderhoekis defined. 2040412d17cSRuslan Ermilov.It Cm distclean 2050412d17cSRuslan ErmilovRemove the port's distfiles and perform the 2060412d17cSRuslan Ermilov.Cm clean 207019de50bSDima Dorfmantarget. 208019de50bSDima DorfmanThe 2090412d17cSRuslan Ermilov.Cm clean 21065dfa7aaSTim Vanderhoekportion recurses to dependencies unless 2110412d17cSRuslan Ermilov.Va NOCLEANDEPENDS 21265dfa7aaSTim Vanderhoekis defined, but the 2130412d17cSRuslan Ermilov.Cm distclean 21465dfa7aaSTim Vanderhoekportion never recurses 215c4d9468eSRuslan Ermilov(this is perhaps a bug). 2160412d17cSRuslan Ermilov.It Cm reinstall 21765dfa7aaSTim VanderhoekUse this to restore a port after using 218225636dcSEdward Tomasz Napierala.Xr pkg-delete 8 21965dfa7aaSTim Vanderhoekwhen you should have used 2200412d17cSRuslan Ermilov.Cm deinstall . 2210412d17cSRuslan Ermilov.It Cm deinstall 22265dfa7aaSTim VanderhoekRemove an installed port from the system, similar to 223225636dcSEdward Tomasz Napierala.Xr pkg-delete 8 . 224515ba752SChristian Brueffer.It Cm deinstall-all 225515ba752SChristian BruefferRemove all installed ports with the same 226515ba752SChristian Brueffer.Va PKGORIGIN 227515ba752SChristian Bruefferfrom the system. 2280412d17cSRuslan Ermilov.It Cm package 2290412d17cSRuslan ErmilovMake a binary package for the port. 2300412d17cSRuslan ErmilovThe port will be installed if it has not already been. 2310412d17cSRuslan ErmilovThe package is a 23281c4ddbfSChristian Brueffer.Pa .tbz 2330412d17cSRuslan Ermilovfile that you can use to 23465dfa7aaSTim Vanderhoekinstall the port on other machines with 235225636dcSEdward Tomasz Napierala.Xr pkg-add 8 . 23665dfa7aaSTim VanderhoekIf the directory specified by 2370412d17cSRuslan Ermilov.Va PACKAGES 2380412d17cSRuslan Ermilovdoes not exist, the package will be put into the current directory. 23983d04c76STim VanderhoekSee 2400412d17cSRuslan Ermilov.Va PKGREPOSITORY 24183d04c76STim Vanderhoekand 2420412d17cSRuslan Ermilov.Va PKGFILE . 2438c3bfd69SChristian Brueffer.It Cm package-recursive 2448c3bfd69SChristian BruefferLike 2458c3bfd69SChristian Brueffer.Cm package , 2468c3bfd69SChristian Bruefferbut makes a package for each depending port as well. 247d40caf29SThomas Abthorpe.It Cm package-name 248d40caf29SThomas AbthorpePrints the name with version of the port. 2490412d17cSRuslan Ermilov.It Cm readmes 25083d04c76STim VanderhoekCreate a port's 25183d04c76STim Vanderhoek.Pa README.html . 2526b4c0736STim VanderhoekThis can be used from 2536b4c0736STim Vanderhoek.Pa /usr/ports 2546b4c0736STim Vanderhoekto create a browsable web of all ports on your system! 2550412d17cSRuslan Ermilov.It Cm search 256019de50bSDima DorfmanSearch the 257019de50bSDima Dorfman.Pa INDEX 25865d476e0SKirill Ponomarevfile for the pattern specified by the 2590412d17cSRuslan Ermilov.Va key 26065d476e0SKirill Ponomarev(searches the port name, comment, and dependencies), 2610412d17cSRuslan Ermilov.Va name 26265d476e0SKirill Ponomarev(searches the port name only), 26365d476e0SKirill Ponomarev.Va path 26465d476e0SKirill Ponomarev(searches the port path), 26565d476e0SKirill Ponomarev.Va info 26665d476e0SKirill Ponomarev(searches the port info), 26765d476e0SKirill Ponomarev.Va maint 26865d476e0SKirill Ponomarev(searches the port maintainer), 26965d476e0SKirill Ponomarev.Va cat 27065d476e0SKirill Ponomarev(searches the port category), 27165d476e0SKirill Ponomarev.Va bdeps 27265d476e0SKirill Ponomarev(searches the port build-time dependency), 27365d476e0SKirill Ponomarev.Va rdeps 2741ea65ec7SGabor Kovesdan(searches the port run-time dependency), 2751ea65ec7SGabor Kovesdan.Va www 2761ea65ec7SGabor Kovesdan(searches the port web site) 2770412d17cSRuslan Ermilov.Xr make 1 27865d476e0SKirill Ponomarevvariables, and their exclusion counterparts: 27965d476e0SKirill Ponomarev.Va xname , xkey 28065d476e0SKirill Ponomarevetc. 281019de50bSDima DorfmanFor example, one would type: 282019de50bSDima Dorfman.Pp 2830412d17cSRuslan Ermilov.Dl "cd /usr/ports && make search name=query" 284019de50bSDima Dorfman.Pp 285019de50bSDima Dorfmanto find all ports whose 286019de50bSDima Dorfmanname matches 2870412d17cSRuslan Ermilov.Dq Li query . 288019de50bSDima DorfmanResults include the matching ports' path, comment, maintainer, 289019de50bSDima Dorfmanbuild dependencies, and run dependencies. 29065d476e0SKirill Ponomarev.Bd -literal -offset indent 29165d476e0SKirill Ponomarevcd /usr/ports && make search name=pear- \e 29265d476e0SKirill Ponomarev xbdeps=apache 29365d476e0SKirill Ponomarev.Ed 29465d476e0SKirill Ponomarev.Pp 29565d476e0SKirill PonomarevTo find all ports whose 29665d476e0SKirill Ponomarevnames contain 29765d476e0SKirill Ponomarev.Dq Li pear- 29865d476e0SKirill Ponomarevand which do not have apache 29965d476e0SKirill Ponomarevlisted in build-time dependencies. 30065d476e0SKirill Ponomarev.Bd -literal -offset indent 30165d476e0SKirill Ponomarevcd /usr/ports && make search name=pear- \e 30265d476e0SKirill Ponomarev xname='ht(tp|ml)' 30365d476e0SKirill Ponomarev.Ed 30465d476e0SKirill Ponomarev.Pp 30565d476e0SKirill PonomarevTo find all ports whose names contain 30665d476e0SKirill Ponomarev.Dq Li pear- , 30765d476e0SKirill Ponomarevbut not 30865d476e0SKirill Ponomarev.Dq Li html 30965d476e0SKirill Ponomarevor 31065d476e0SKirill Ponomarev.Dq Li http . 31165d476e0SKirill Ponomarev.Bd -literal -offset indent 31265d476e0SKirill Ponomarevmake search key=apache display=name,path,info keylim=1 31365d476e0SKirill Ponomarev.Ed 31465d476e0SKirill Ponomarev.Pp 31565d476e0SKirill PonomarevTo find ports that contain 31665d476e0SKirill Ponomarev.Dq Li apache 31765d476e0SKirill Ponomarevin either of the name, path, info 31865d476e0SKirill Ponomarevfields, ignore the rest of the record. 3191ea65ec7SGabor Kovesdan.Pp 320f283c8f8SJens SchweikhardtBy default the search is not case-sensitive. 3211ea65ec7SGabor KovesdanIn order to make it case-sensitive you can use the 3221ea65ec7SGabor Kovesdan.Va icase 3231ea65ec7SGabor Kovesdanvariable: 3241ea65ec7SGabor Kovesdan.Bd -literal -offset indent 3251ea65ec7SGabor Kovesdanmake search name=p5-R icase=0 3261ea65ec7SGabor Kovesdan.Ed 327be3253caSMaxim Konovalov.It Cm quicksearch 328be3253caSMaxim KonovalovReduced 329be3253caSMaxim Konovalov.Cm search 330be3253caSMaxim Konovalovoutput. 331be3253caSMaxim KonovalovOnly display name, path and info. 33203687bafSKirill Ponomarev.It Cm describe 33303687bafSKirill PonomarevGenerate a one-line description of each port for use in the 33403687bafSKirill Ponomarev.Pa INDEX 33503687bafSKirill Ponomarevfile. 336724c0a23SChristian Brueffer.It Cm maintainer 337724c0a23SChristian BruefferDisplay the port maintainer's email address. 3380412d17cSRuslan Ermilov.It Cm index 339019de50bSDima DorfmanCreate 340019de50bSDima Dorfman.Pa /usr/ports/INDEX , 341019de50bSDima Dorfmanwhich is used by the 3420412d17cSRuslan Ermilov.Cm pretty-print-* 343019de50bSDima Dorfmanand 3440412d17cSRuslan Ermilov.Cm search 345019de50bSDima Dorfmantargets. 3467585929eSKirill PonomarevRunning the 3470412d17cSRuslan Ermilov.Cm index 3480412d17cSRuslan Ermilovtarget will ensure your 3490412d17cSRuslan Ermilov.Pa INDEX 3500412d17cSRuslan Ermilovfile is up to date with your ports tree. 3517585929eSKirill Ponomarev.It Cm fetchindex 3527585929eSKirill PonomarevFetch the 3537585929eSKirill Ponomarev.Pa INDEX 3547585929eSKirill Ponomarevfile from the 3557585929eSKirill Ponomarev.Fx 3567585929eSKirill Ponomarevcluster. 3573136363fSRuslan Ermilov.El 358def37e7cSMike Pritchard.Sh ENVIRONMENT 35965dfa7aaSTim VanderhoekYou can change all of these. 3600412d17cSRuslan Ermilov.Bl -tag -width ".Va MASTER_SITES" 3610412d17cSRuslan Ermilov.It Va PORTSDIR 3620412d17cSRuslan ErmilovLocation of the ports tree. 3630412d17cSRuslan ErmilovThis is 36465dfa7aaSTim Vanderhoek.Pa /usr/ports 36565dfa7aaSTim Vanderhoekon 366b5c508fbSRuslan Ermilov.Fx 367e4b22b63SDavid E. O'Brienand 3680412d17cSRuslan Ermilov.Ox , 36965dfa7aaSTim Vanderhoekand 37065dfa7aaSTim Vanderhoek.Pa /usr/pkgsrc 37165dfa7aaSTim Vanderhoekon 37265dfa7aaSTim Vanderhoek.Nx . 3730412d17cSRuslan Ermilov.It Va WRKDIRPREFIX 3740412d17cSRuslan ErmilovWhere to create any temporary files. 3750412d17cSRuslan ErmilovUseful if 3760412d17cSRuslan Ermilov.Va PORTSDIR 3770412d17cSRuslan Ermilovis read-only (perhaps mounted from a CD-ROM). 3780412d17cSRuslan Ermilov.It Va DISTDIR 37965dfa7aaSTim VanderhoekWhere to find/put distfiles, normally 38065dfa7aaSTim Vanderhoek.Pa distfiles/ 38165dfa7aaSTim Vanderhoekin 3820412d17cSRuslan Ermilov.Va PORTSDIR . 3830412d17cSRuslan Ermilov.It Va PACKAGES 38465dfa7aaSTim VanderhoekUsed only for the 3850412d17cSRuslan Ermilov.Cm package 38665dfa7aaSTim Vanderhoektarget; the base directory for the packages tree, normally 38765dfa7aaSTim Vanderhoek.Pa packages/ 38865dfa7aaSTim Vanderhoekin 3890412d17cSRuslan Ermilov.Va PORTSDIR . 39065dfa7aaSTim VanderhoekIf this directory exists, the package tree will be (partially) constructed. 3910412d17cSRuslan ErmilovThis directory does not have to exist; if it does not, packages will be 39283d04c76STim Vanderhoekplaced into the current directory, or you can define one of 3930412d17cSRuslan Ermilov.Bl -tag -width ".Va PKGREPOSITORY" 3940412d17cSRuslan Ermilov.It Va PKGREPOSITORY 39583d04c76STim VanderhoekDirectory to put the package in. 3960412d17cSRuslan Ermilov.It Va PKGFILE 39765dfa7aaSTim VanderhoekThe full path to the package. 39865dfa7aaSTim Vanderhoek.El 399eed1dcabSEitan Adler.It Va LOCALBASE 400eed1dcabSEitan AdlerWhere existing things are installed and where to search for files when 401eed1dcabSEitan Adlerresolving dependencies (usually 4029a0e6be2SXin LI.Pa /usr/local ) . 403eed1dcabSEitan Adler.It Va PREFIX 404eed1dcabSEitan AdlerWhere to install this port (usually set to the same as 405eed1dcabSEitan Adler.Va LOCALBASE ) . 4060412d17cSRuslan Ermilov.It Va MASTER_SITES 407e4b22b63SDavid E. O'BrienPrimary sites for distribution files if not found locally. 4080412d17cSRuslan Ermilov.It Va PATCH_SITES 4090412d17cSRuslan ErmilovPrimary locations for distribution patch files if not found 410e4b22b63SDavid E. O'Brienlocally. 4110412d17cSRuslan Ermilov.It Va MASTER_SITE_FREEBSD 412b5c508fbSRuslan ErmilovIf set, go to the master 413b5c508fbSRuslan Ermilov.Fx 414b5c508fbSRuslan Ermilovsite for all files. 4150412d17cSRuslan Ermilov.It Va MASTER_SITE_OVERRIDE 416b81d803eSRuslan ErmilovTry going to these sites for all files and patches, first. 417e57fe046SKirill Ponomarev.It Va MASTER_SITE_BACKUP 418e57fe046SKirill PonomarevTry going to these sites for all files and patches, last. 4191f568fb2SPav Lucistnik.It Va RANDOMIZE_MASTER_SITES 4201f568fb2SPav LucistnikTry the download locations in a random order. 4211f568fb2SPav Lucistnik.It Va MASTER_SORT 4221f568fb2SPav LucistnikSort the download locations according to user supplied pattern. 4231f568fb2SPav LucistnikExample: 4241f568fb2SPav Lucistnik.Dl .dk .sunet.se .se dk.php.net .no .de heanet.dl.sourceforge.net 425e57fe046SKirill Ponomarev.It Va MASTER_SITE_INDEX 426e57fe046SKirill PonomarevWhere to get 427e57fe046SKirill Ponomarev.Pa INDEX 428e57fe046SKirill Ponomarevsource built on 429e57fe046SKirill Ponomarev.Fx 430e57fe046SKirill Ponomarevcluster (for 431e57fe046SKirill Ponomarev.Cm fetchindex 432e57fe046SKirill Ponomarevtarget). 433e57fe046SKirill PonomarevDefaults to 434a2aef24aSEitan Adler.Pa https://www.FreeBSD.org/ports/ . 435e57fe046SKirill Ponomarev.It Va FETCHINDEX 436e57fe046SKirill PonomarevCommand to get 437e57fe046SKirill Ponomarev.Pa INDEX 438e57fe046SKirill Ponomarev(for 439e57fe046SKirill Ponomarev.Cm fetchindex 440e57fe046SKirill Ponomarevtarget). 441e57fe046SKirill PonomarevDefaults to 442e57fe046SKirill Ponomarev.Dq Nm fetch Fl am . 4430412d17cSRuslan Ermilov.It Va NOCLEANDEPENDS 4440412d17cSRuslan ErmilovIf defined, do not let 4450412d17cSRuslan Ermilov.Cm clean 44665dfa7aaSTim Vanderhoekrecurse to dependencies. 4470412d17cSRuslan Ermilov.It Va FETCH_CMD 4480412d17cSRuslan ErmilovCommand to use to fetch files. 4490412d17cSRuslan ErmilovNormally 45065dfa7aaSTim Vanderhoek.Xr fetch 1 . 4510412d17cSRuslan Ermilov.It Va FORCE_PKG_REGISTER 45265dfa7aaSTim VanderhoekIf set, overwrite any existing package registration on the system. 4530412d17cSRuslan Ermilov.It Va MOTIFLIB 4540412d17cSRuslan ErmilovLocation of 4550412d17cSRuslan Ermilov.Pa libXm. Ns Brq Pa a , Ns Pa so . 4560412d17cSRuslan Ermilov.It Va INTERACTIVE 45765dfa7aaSTim VanderhoekIf defined, only operate on a port if it requires interaction. 4580412d17cSRuslan Ermilov.It Va BATCH 45965dfa7aaSTim VanderhoekIf defined, only operate on a port if it can be installed 100% automatically. 460949f900dSSimon L. B. Nielsen.It Va DISABLE_VULNERABILITIES 461949f900dSSimon L. B. NielsenIf defined, disable check for security vulnerabilities using 4629ef6fea6SGlen Barber.Xr pkg-audit 8 463949f900dSSimon L. B. Nielsenwhen installing new ports. 464068abd55SGiorgos Keramidas.It Va NO_IGNORE 465068abd55SGiorgos KeramidasIf defined, allow installation of ports marked as 466068abd55SGiorgos Keramidas.Aq Va FORBIDDEN . 467068abd55SGiorgos KeramidasThe default behavior of the Ports framework is to abort when the 468068abd55SGiorgos Keramidasinstallation of a forbidden port is attempted. 469068abd55SGiorgos KeramidasOf course, these ports may not work as expected, but if you really know 470068abd55SGiorgos Keramidaswhat you are doing and are sure about installing a forbidden port, then 471068abd55SGiorgos Keramidas.Va NO_IGNORE 472068abd55SGiorgos Keramidaslets you do it. 473b7642c92SBenedict Reuschling.It Va NO_CHECKSUM 474b7642c92SBenedict ReuschlingIf defined, skip verifying the port's checksum. 4751583221bSGiorgos Keramidas.It Va TRYBROKEN 4761583221bSGiorgos KeramidasIf defined, attempt to build a port even if it is marked as 4771583221bSGiorgos Keramidas.Aq Va BROKEN . 478520a4bfdSGabor Kovesdan.It Va PORT_DBDIR 479520a4bfdSGabor KovesdanDirectory where the results of configuring 480520a4bfdSGabor Kovesdan.Va OPTIONS 481520a4bfdSGabor Kovesdanare stored. 482520a4bfdSGabor KovesdanDefaults to 483520a4bfdSGabor Kovesdan.Pa /var/db/ports . 484520a4bfdSGabor KovesdanEach port where 485520a4bfdSGabor Kovesdan.Va OPTIONS 486520a4bfdSGabor Kovesdanhave been configured will have a uniquely named sub-directory, containing a 487520a4bfdSGabor Kovesdansingle file 488520a4bfdSGabor Kovesdan.Pa options . 48965dfa7aaSTim Vanderhoek.El 49059be36b0SBenjamin Kaduk.Sh MAKE VARIABLES 49159be36b0SBenjamin KadukThe following list provides a name and short description for many of the 49259be36b0SBenjamin Kadukvariables that are used when building ports. 49359be36b0SBenjamin KadukMore information on these and other related variables may be found in 49459be36b0SBenjamin Kaduk.Pa ${PORTSDIR}/Mk/* 49559be36b0SBenjamin Kadukand the 49659be36b0SBenjamin Kaduk.Fx 49759be36b0SBenjamin KadukPorter's Handbook. 498bd5bd025STijl Coosemans.Bl -tag -width ".Va WITH_GHOSTSCRIPT_VER" 49959be36b0SBenjamin Kaduk.It Va WITH_OPENSSL_PORT 50059be36b0SBenjamin Kaduk.Pq Vt bool 50159be36b0SBenjamin KadukIf set, causes ports that make use of OpenSSL to use the OpenSSL from 50259be36b0SBenjamin Kadukports 50359be36b0SBenjamin Kaduk.Pq if available 50459be36b0SBenjamin Kadukinstead of the OpenSSL from the base system. 50559be36b0SBenjamin Kaduk.It Va WITH_DEBUG 50659be36b0SBenjamin Kaduk.Pq Vt bool 50759be36b0SBenjamin KadukIf set, debugging symbols are installed for ports binaries. 50859be36b0SBenjamin Kaduk.It Va WITH_DEBUG_PORTS 50959be36b0SBenjamin KadukA list of origins for which to set 51059be36b0SBenjamin Kaduk.Va WITH_DEBUG_PORTS . 51159be36b0SBenjamin Kaduk.It Va WITH_SSP_PORTS 51259be36b0SBenjamin Kaduk.Pq Vt bool 51359be36b0SBenjamin KadukIf set, enables 51459be36b0SBenjamin Kaduk.Fl fstack-protector 51559be36b0SBenjamin Kadukfor most ports. 51659be36b0SBenjamin Kaduk.It Va WITH_GHOSTSCRIPT_VER 51759be36b0SBenjamin KadukIf set, the version of ghostscript to be used by ports. 51859be36b0SBenjamin Kaduk.It Va WITH_CCACHE_BUILD 51959be36b0SBenjamin Kaduk.Pq Vt bool 52059be36b0SBenjamin KadukIf set, enables the use of 52159be36b0SBenjamin Kaduk.Xr ccache 1 52259be36b0SBenjamin Kadukfor building ports. 52359be36b0SBenjamin Kaduk.It Va CCACHE_DIR 52459be36b0SBenjamin KadukWhich directory to use for the ccache data. 52559be36b0SBenjamin Kaduk.El 5264000f72fSDavid E. O'Brien.Sh FILES 5270412d17cSRuslan Ermilov.Bl -tag -width ".Pa /usr/ports/Mk/bsd.port.mk" -compact 5284000f72fSDavid E. O'Brien.It Pa /usr/ports 529b5c508fbSRuslan ErmilovThe default ports directory 530652627f0STim Vanderhoek.It Pa /usr/ports/Mk/bsd.port.mk 53165dfa7aaSTim VanderhoekThe big Kahuna. 5323136363fSRuslan Ermilov.El 533*1b3fba16SEdward Tomasz Napierala.Sh EXAMPLES 534*1b3fba16SEdward Tomasz NapieralaBuild and install Emacs: 535*1b3fba16SEdward Tomasz Napierala.Bd -literal -offset indent 536*1b3fba16SEdward Tomasz Napieralacd /usr/ports/editors/emacs 537*1b3fba16SEdward Tomasz Napieralamake install 538*1b3fba16SEdward Tomasz Napierala.Ed 539*1b3fba16SEdward Tomasz Napierala.Pp 5404000f72fSDavid E. O'Brien.Sh SEE ALSO 5414000f72fSDavid E. O'Brien.Xr make 1 , 54259be36b0SBenjamin Kaduk.Xr make.conf 5 , 5437a36e6d2SEitan Adler.Xr pkg 8 , 5447a36e6d2SEitan Adler.Xr portsnap 8 545def37e7cSMike Pritchard.Pp 546def37e7cSMike PritchardThe following are part of the ports collection: 547def37e7cSMike Pritchard.Pp 5489ef6fea6SGlen Barber.Xr pkg 7 , 549ac8011f8SDavid E. O'Brien.Xr portlint 1 5500412d17cSRuslan Ermilov.Rs 5510412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" 5520412d17cSRuslan Ermilov.Re 55365dfa7aaSTim Vanderhoek.Pp 554a2aef24aSEitan Adler.Pa https://www.FreeBSD.org/ports 555c4d9468eSRuslan Ermilov(searchable index of all ports) 5564000f72fSDavid E. O'Brien.Sh HISTORY 5570412d17cSRuslan ErmilovThe Ports Collection 5584000f72fSDavid E. O'Brienappeared in 5594000f72fSDavid E. O'Brien.Fx 1.0 . 5606b4c0736STim VanderhoekIt has since spread to 5616b4c0736STim Vanderhoek.Nx 5626b4c0736STim Vanderhoekand 5636b4c0736STim Vanderhoek.Ox . 5649cbda590SRuslan Ermilov.Sh AUTHORS 5659cbda590SRuslan Ermilov.An -nosplit 5669cbda590SRuslan ErmilovThis manual page was originated by 5679cbda590SRuslan Ermilov.An David O'Brien . 56865dfa7aaSTim Vanderhoek.Sh BUGS 5690412d17cSRuslan ErmilovPorts documentation is split over four places \(em 5702693c8b9STim Vanderhoek.Pa /usr/ports/Mk/bsd.port.mk , 5710412d17cSRuslan Ermilov.%B "The Porter's Handbook" , 57265dfa7aaSTim Vanderhoekthe 5730412d17cSRuslan Ermilov.Dq "Packages and Ports" 5745d3d0230SMurray Stokelychapter of 5750412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" , 5765d3d0230SMurray Stokelyand 577949f900dSSimon L. B. Nielsenthis manual page. 578