1*e057696cSSascha Wildner.\" 2*e057696cSSascha Wildner.\" Copyright (c) 1997 David E. O'Brien 3*e057696cSSascha Wildner.\" 4*e057696cSSascha Wildner.\" All rights reserved. 5*e057696cSSascha Wildner.\" 6*e057696cSSascha Wildner.\" Redistribution and use in source and binary forms, with or without 7*e057696cSSascha Wildner.\" modification, are permitted provided that the following conditions 8*e057696cSSascha Wildner.\" are met: 9*e057696cSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 10*e057696cSSascha Wildner.\" notice, this list of conditions and the following disclaimer. 11*e057696cSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 12*e057696cSSascha Wildner.\" notice, this list of conditions and the following disclaimer in the 13*e057696cSSascha Wildner.\" documentation and/or other materials provided with the distribution. 14*e057696cSSascha Wildner.\" 15*e057696cSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR 16*e057696cSSascha Wildner.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17*e057696cSSascha Wildner.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18*e057696cSSascha Wildner.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, 19*e057696cSSascha Wildner.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20*e057696cSSascha Wildner.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21*e057696cSSascha Wildner.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22*e057696cSSascha Wildner.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23*e057696cSSascha Wildner.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24*e057696cSSascha Wildner.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25*e057696cSSascha Wildner.\" 26*e057696cSSascha Wildner.\" $FreeBSD: src/share/man/man7/ports.7,v 1.76 2013/03/05 00:49:42 svnexp Exp $ 27*e057696cSSascha Wildner.\" 28*e057696cSSascha Wildner.Dd May 23, 2013 29*e057696cSSascha Wildner.Dt DPORTS 7 30*e057696cSSascha Wildner.Os 31*e057696cSSascha Wildner.Sh NAME 32*e057696cSSascha Wildner.Nm dports 33*e057696cSSascha Wildner.Nd contributed applications 34*e057696cSSascha Wildner.Sh DESCRIPTION 35*e057696cSSascha WildnerThe 36*e057696cSSascha Wildner.Dx 37*e057696cSSascha Wildnerdports collection 38*e057696cSSascha Wildneroffers a simple way for users and 39*e057696cSSascha Wildneradministrators to install applications. 40*e057696cSSascha Wildnerdports is based on 41*e057696cSSascha Wildner.Fx Ap s 42*e057696cSSascha Wildnerports collection and most of ports' documentation applies. 43*e057696cSSascha Wildner.Pp 44*e057696cSSascha WildnerEach 45*e057696cSSascha Wildner.Em port 46*e057696cSSascha Wildnercontains any patches necessary to make the original 47*e057696cSSascha Wildnerapplication source code compile and run on 48*e057696cSSascha Wildner.Dx . 49*e057696cSSascha WildnerCompiling an 50*e057696cSSascha Wildnerapplication is as simple as typing 51*e057696cSSascha Wildner.Nm make Cm build 52*e057696cSSascha Wildnerin the port directory! 53*e057696cSSascha WildnerThe 54*e057696cSSascha Wildner.Pa Makefile 55*e057696cSSascha Wildnerautomatically fetches the 56*e057696cSSascha Wildnerapplication source code, either from a local disk or via FTP, unpacks it 57*e057696cSSascha Wildneron your system, applies the patches, and compiles it. 58*e057696cSSascha WildnerIf all goes well, 59*e057696cSSascha Wildnersimply type 60*e057696cSSascha Wildner.Nm make Cm install 61*e057696cSSascha Wildnerto install the application. 62*e057696cSSascha Wildner.Pp 63*e057696cSSascha WildnerFor more information about using ports, see 64*e057696cSSascha Wildner.Dq "Packages and Ports" 65*e057696cSSascha Wildnerin 66*e057696cSSascha Wildner.%B "The FreeBSD Handbook" , 67*e057696cSSascha Wildner.Pa ( file:/usr/share/doc/en_US.ISO8859-1/books/handbook/ports.html 68*e057696cSSascha Wildneror 69*e057696cSSascha Wildner.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/ports.html ) . 70*e057696cSSascha WildnerFor information about creating new ports, see 71*e057696cSSascha Wildner.%B "The Porter's Handbook" 72*e057696cSSascha Wildner.Pa ( file:/usr/share/doc/en_US.ISO8859-1/books/porters-handbook/index.html 73*e057696cSSascha Wildneror 74*e057696cSSascha Wildner.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/porters-handbook/ ) . 75*e057696cSSascha Wildner.Sh TARGETS 76*e057696cSSascha WildnerSome of the targets work recursively through subdirectories. 77*e057696cSSascha WildnerThis lets you, for example, install all of the 78*e057696cSSascha Wildner.Dq Li biology 79*e057696cSSascha Wildnerports. 80*e057696cSSascha WildnerThe targets that do this are 81*e057696cSSascha Wildner.Cm build , checksum , clean , configure , 82*e057696cSSascha Wildner.Cm depends , extract , fetch , install , 83*e057696cSSascha Wildnerand 84*e057696cSSascha Wildner.Cm package . 85*e057696cSSascha Wildner.Pp 86*e057696cSSascha WildnerThe following targets will be run automatically by each proceeding 87*e057696cSSascha Wildnertarget in order. 88*e057696cSSascha WildnerThat is, 89*e057696cSSascha Wildner.Cm build 90*e057696cSSascha Wildnerwill be run 91*e057696cSSascha Wildner(if necessary) 92*e057696cSSascha Wildnerby 93*e057696cSSascha Wildner.Cm install , 94*e057696cSSascha Wildnerand so on all the way to 95*e057696cSSascha Wildner.Cm fetch . 96*e057696cSSascha WildnerUsually, you will only use the 97*e057696cSSascha Wildner.Cm install 98*e057696cSSascha Wildnertarget. 99*e057696cSSascha Wildner.Bl -tag -width ".Cm configure" 100*e057696cSSascha Wildner.It Cm config 101*e057696cSSascha WildnerConfigure 102*e057696cSSascha Wildner.Va OPTIONS 103*e057696cSSascha Wildnerfor this port using 104*e057696cSSascha Wildner.Xr dialog 1 . 105*e057696cSSascha Wildner.It Cm fetch 106*e057696cSSascha WildnerFetch all of the files needed to build this port from the sites 107*e057696cSSascha Wildnerlisted in 108*e057696cSSascha Wildner.Va MASTER_SITES 109*e057696cSSascha Wildnerand 110*e057696cSSascha Wildner.Va PATCH_SITES . 111*e057696cSSascha WildnerSee 112*e057696cSSascha Wildner.Va FETCH_CMD , MASTER_SITE_OVERRIDE 113*e057696cSSascha Wildnerand 114*e057696cSSascha Wildner.Va MASTER_SITE_BACKUP . 115*e057696cSSascha Wildner.It Cm checksum 116*e057696cSSascha WildnerVerify that the fetched distfile's checksum matches the one the port was 117*e057696cSSascha Wildnertested against. 118*e057696cSSascha WildnerIf the distfile's checksum does not match, it also fetches the distfiles 119*e057696cSSascha Wildnerwhich are missing or failed the checksum calculation. 120*e057696cSSascha WildnerDefining 121*e057696cSSascha Wildner.Va NO_CHECKSUM 122*e057696cSSascha Wildnerwill skip this step. 123*e057696cSSascha Wildner.It Cm depends 124*e057696cSSascha WildnerInstall 125*e057696cSSascha Wildner(or compile if only compilation is necessary) 126*e057696cSSascha Wildnerany dependencies of the current port. 127*e057696cSSascha WildnerWhen called by the 128*e057696cSSascha Wildner.Cm extract 129*e057696cSSascha Wildneror 130*e057696cSSascha Wildner.Cm fetch 131*e057696cSSascha Wildnertargets, this is run in piecemeal as 132*e057696cSSascha Wildner.Cm fetch-depends , build-depends , 133*e057696cSSascha Wildneretc. 134*e057696cSSascha WildnerDefining 135*e057696cSSascha Wildner.Va NO_DEPENDS 136*e057696cSSascha Wildnerwill skip this step. 137*e057696cSSascha Wildner.It Cm extract 138*e057696cSSascha WildnerExpand the distfile into a work directory. 139*e057696cSSascha Wildner.It Cm patch 140*e057696cSSascha WildnerApply any patches that are necessary for the port. 141*e057696cSSascha Wildner.It Cm configure 142*e057696cSSascha WildnerConfigure the port. 143*e057696cSSascha WildnerSome ports will ask you questions during this stage. 144*e057696cSSascha WildnerSee 145*e057696cSSascha Wildner.Va INTERACTIVE 146*e057696cSSascha Wildnerand 147*e057696cSSascha Wildner.Va BATCH . 148*e057696cSSascha Wildner.It Cm build 149*e057696cSSascha WildnerBuild the port. 150*e057696cSSascha WildnerThis is the same as calling the 151*e057696cSSascha Wildner.Cm all 152*e057696cSSascha Wildnertarget. 153*e057696cSSascha Wildner.It Cm install 154*e057696cSSascha WildnerInstall the port and register it with the package system. 155*e057696cSSascha WildnerThis is all you really need to do. 156*e057696cSSascha Wildner.El 157*e057696cSSascha Wildner.Pp 158*e057696cSSascha WildnerThe following targets are not run during the normal install process. 159*e057696cSSascha Wildner.Bl -tag -width ".Cm fetch-recursive" 160*e057696cSSascha Wildner.It Cm showconfig 161*e057696cSSascha WildnerDisplay 162*e057696cSSascha Wildner.Va OPTIONS 163*e057696cSSascha Wildnerconfig for this port. 164*e057696cSSascha Wildner.It Cm showconfig-recursive 165*e057696cSSascha WildnerDisplay 166*e057696cSSascha Wildner.Va OPTIONS 167*e057696cSSascha Wildnerconfig for this port and all its dependencies. 168*e057696cSSascha Wildner.It Cm rmconfig 169*e057696cSSascha WildnerRemove 170*e057696cSSascha Wildner.Va OPTIONS 171*e057696cSSascha Wildnerconfig for this port. 172*e057696cSSascha Wildner.It Cm rmconfig-recursive 173*e057696cSSascha WildnerRemove 174*e057696cSSascha Wildner.Va OPTIONS 175*e057696cSSascha Wildnerconfig for this port and all its dependencies. 176*e057696cSSascha Wildner.It Cm config-conditional 177*e057696cSSascha WildnerSkip the ports which have already had their 178*e057696cSSascha Wildner.Va OPTIONS 179*e057696cSSascha Wildnerconfigured. 180*e057696cSSascha Wildner.It Cm config-recursive 181*e057696cSSascha WildnerConfigure 182*e057696cSSascha Wildner.Va OPTIONS 183*e057696cSSascha Wildnerfor this port and all its dependencies using 184*e057696cSSascha Wildner.Xr dialog 1 . 185*e057696cSSascha Wildner.It Cm fetch-list 186*e057696cSSascha WildnerShow list of files to be fetched in order to build the port. 187*e057696cSSascha Wildner.It Cm fetch-recursive 188*e057696cSSascha WildnerFetch the distfiles of the port and all its dependencies. 189*e057696cSSascha Wildner.It Cm fetch-recursive-list 190*e057696cSSascha WildnerShow list of files that would be retrieved by 191*e057696cSSascha Wildner.Cm fetch-recursive . 192*e057696cSSascha Wildner.It Cm run-depends-list , build-depends-list 193*e057696cSSascha WildnerPrint a list of all the compile and run dependencies, and dependencies 194*e057696cSSascha Wildnerof those dependencies, by port directory. 195*e057696cSSascha Wildner.It Cm all-depends-list 196*e057696cSSascha WildnerPrint a list of all dependencies for the port. 197*e057696cSSascha Wildner.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list 198*e057696cSSascha WildnerPrint a list of all the compile and run dependencies, and dependencies 199*e057696cSSascha Wildnerof those dependencies, by port name and version. 200*e057696cSSascha Wildner.It Cm missing 201*e057696cSSascha WildnerPrint a list of missing dependencies to be installed for the port. 202*e057696cSSascha Wildner.It Cm clean 203*e057696cSSascha WildnerRemove the expanded source code. 204*e057696cSSascha WildnerThis recurses to dependencies unless 205*e057696cSSascha Wildner.Va NOCLEANDEPENDS 206*e057696cSSascha Wildneris defined. 207*e057696cSSascha Wildner.It Cm distclean 208*e057696cSSascha WildnerRemove the port's distfiles and perform the 209*e057696cSSascha Wildner.Cm clean 210*e057696cSSascha Wildnertarget. 211*e057696cSSascha WildnerThe 212*e057696cSSascha Wildner.Cm clean 213*e057696cSSascha Wildnerportion recurses to dependencies unless 214*e057696cSSascha Wildner.Va NOCLEANDEPENDS 215*e057696cSSascha Wildneris defined, but the 216*e057696cSSascha Wildner.Cm distclean 217*e057696cSSascha Wildnerportion never recurses 218*e057696cSSascha Wildner(this is perhaps a bug). 219*e057696cSSascha Wildner.It Cm reinstall 220*e057696cSSascha WildnerUse this to restore a port after using 221*e057696cSSascha Wildner.Xr pkg_delete 1 222*e057696cSSascha Wildnerwhen you should have used 223*e057696cSSascha Wildner.Cm deinstall . 224*e057696cSSascha Wildner.It Cm deinstall 225*e057696cSSascha WildnerRemove an installed port from the system, similar to 226*e057696cSSascha Wildner.Xr pkg_delete 1 . 227*e057696cSSascha Wildner.It Cm deinstall-all 228*e057696cSSascha WildnerRemove all installed ports with the same 229*e057696cSSascha Wildner.Va PKGORIGIN 230*e057696cSSascha Wildnerfrom the system. 231*e057696cSSascha Wildner.It Cm package 232*e057696cSSascha WildnerMake a binary package for the port. 233*e057696cSSascha WildnerThe port will be installed if it has not already been. 234*e057696cSSascha WildnerThe package is a 235*e057696cSSascha Wildner.Pa .tbz 236*e057696cSSascha Wildnerfile that you can use to 237*e057696cSSascha Wildnerinstall the port on other machines with 238*e057696cSSascha Wildner.Xr pkg_add 1 . 239*e057696cSSascha WildnerIf the directory specified by 240*e057696cSSascha Wildner.Va PACKAGES 241*e057696cSSascha Wildnerdoes not exist, the package will be put into the current directory. 242*e057696cSSascha WildnerSee 243*e057696cSSascha Wildner.Va PKGREPOSITORY 244*e057696cSSascha Wildnerand 245*e057696cSSascha Wildner.Va PKGFILE . 246*e057696cSSascha Wildner.It Cm package-recursive 247*e057696cSSascha WildnerLike 248*e057696cSSascha Wildner.Cm package , 249*e057696cSSascha Wildnerbut makes a package for each depending port as well. 250*e057696cSSascha Wildner.It Cm package-name 251*e057696cSSascha WildnerPrints the name with version of the port. 252*e057696cSSascha Wildner.It Cm readmes 253*e057696cSSascha WildnerCreate a port's 254*e057696cSSascha Wildner.Pa README.html . 255*e057696cSSascha WildnerThis can be used from 256*e057696cSSascha Wildner.Pa /usr/dports 257*e057696cSSascha Wildnerto create a browsable web of all ports on your system! 258*e057696cSSascha Wildner.\".It Cm search 259*e057696cSSascha Wildner.\"Search the 260*e057696cSSascha Wildner.\".Pa INDEX 261*e057696cSSascha Wildner.\"file for the pattern specified by the 262*e057696cSSascha Wildner.\".Va key 263*e057696cSSascha Wildner.\"(searches the port name, comment, and dependencies), 264*e057696cSSascha Wildner.\".Va name 265*e057696cSSascha Wildner.\"(searches the port name only), 266*e057696cSSascha Wildner.\".Va path 267*e057696cSSascha Wildner.\"(searches the port path), 268*e057696cSSascha Wildner.\".Va info 269*e057696cSSascha Wildner.\"(searches the port info), 270*e057696cSSascha Wildner.\".Va maint 271*e057696cSSascha Wildner.\"(searches the port maintainer), 272*e057696cSSascha Wildner.\".Va cat 273*e057696cSSascha Wildner.\"(searches the port category), 274*e057696cSSascha Wildner.\".Va bdeps 275*e057696cSSascha Wildner.\"(searches the port build-time dependency), 276*e057696cSSascha Wildner.\".Va rdeps 277*e057696cSSascha Wildner.\"(searches the port run-time dependency), 278*e057696cSSascha Wildner.\".Va www 279*e057696cSSascha Wildner.\"(searches the port web site) 280*e057696cSSascha Wildner.\".Xr make 1 281*e057696cSSascha Wildner.\"variables, and their exclusion counterparts: 282*e057696cSSascha Wildner.\".Va xname , xkey 283*e057696cSSascha Wildner.\"etc. 284*e057696cSSascha Wildner.\"For example, one would type: 285*e057696cSSascha Wildner.\".Pp 286*e057696cSSascha Wildner.\".Dl "cd /usr/dports && make search name=query" 287*e057696cSSascha Wildner.\".Pp 288*e057696cSSascha Wildner.\"to find all ports whose 289*e057696cSSascha Wildner.\"name matches 290*e057696cSSascha Wildner.\".Dq Li query . 291*e057696cSSascha Wildner.\"Results include the matching ports' path, comment, maintainer, 292*e057696cSSascha Wildner.\"build dependencies, and run dependencies. 293*e057696cSSascha Wildner.\".Bd -literal -offset indent 294*e057696cSSascha Wildner.\"cd /usr/dports && make search name=pear- \e 295*e057696cSSascha Wildner.\" xbdeps=apache 296*e057696cSSascha Wildner.\".Ed 297*e057696cSSascha Wildner.\".Pp 298*e057696cSSascha Wildner.\"To find all ports whose 299*e057696cSSascha Wildner.\"names contain 300*e057696cSSascha Wildner.\".Dq Li pear- 301*e057696cSSascha Wildner.\"and which do not have apache 302*e057696cSSascha Wildner.\"listed in build-time dependencies. 303*e057696cSSascha Wildner.\".Bd -literal -offset indent 304*e057696cSSascha Wildner.\"cd /usr/dports && make search name=pear- \e 305*e057696cSSascha Wildner.\" xname='ht(tp|ml)' 306*e057696cSSascha Wildner.\".Ed 307*e057696cSSascha Wildner.\".Pp 308*e057696cSSascha Wildner.\"To find all ports whose names contain 309*e057696cSSascha Wildner.\".Dq Li pear- , 310*e057696cSSascha Wildner.\"but not 311*e057696cSSascha Wildner.\".Dq Li html 312*e057696cSSascha Wildner.\"or 313*e057696cSSascha Wildner.\".Dq Li http . 314*e057696cSSascha Wildner.\".Bd -literal -offset indent 315*e057696cSSascha Wildner.\"make search key=apache display=name,path,info keylim=1 316*e057696cSSascha Wildner.\".Ed 317*e057696cSSascha Wildner.\".Pp 318*e057696cSSascha Wildner.\"To find ports that contain 319*e057696cSSascha Wildner.\".Dq Li apache 320*e057696cSSascha Wildner.\"in either of the name, path, info 321*e057696cSSascha Wildner.\"fields, ignore the rest of the record. 322*e057696cSSascha Wildner.\".Pp 323*e057696cSSascha Wildner.\"By default the search is not case-sensitive. 324*e057696cSSascha Wildner.\"In order to make it case-sensitive you can use the 325*e057696cSSascha Wildner.\".Va icase 326*e057696cSSascha Wildner.\"variable: 327*e057696cSSascha Wildner.\".Bd -literal -offset indent 328*e057696cSSascha Wildner.\"make search name=p5-R icase=0 329*e057696cSSascha Wildner.\".Ed 330*e057696cSSascha Wildner.\".It Cm quicksearch 331*e057696cSSascha Wildner.\"Reduced 332*e057696cSSascha Wildner.\".Cm search 333*e057696cSSascha Wildner.\"output. 334*e057696cSSascha Wildner.\"Only display name, path and info. 335*e057696cSSascha Wildner.It Cm describe 336*e057696cSSascha WildnerGenerate a one-line description of each port for use in the 337*e057696cSSascha Wildner.Pa INDEX 338*e057696cSSascha Wildnerfile. 339*e057696cSSascha Wildner.It Cm maintainer 340*e057696cSSascha WildnerDisplay the port maintainer's email address. 341*e057696cSSascha Wildner.\".It Cm index 342*e057696cSSascha Wildner.\"Create 343*e057696cSSascha Wildner.\".Pa /usr/dports/INDEX , 344*e057696cSSascha Wildner.\"which is used by the 345*e057696cSSascha Wildner.\".Cm pretty-print-* 346*e057696cSSascha Wildner.\"and 347*e057696cSSascha Wildner.\".Cm search 348*e057696cSSascha Wildner.\"targets. 349*e057696cSSascha Wildner.\"Running the 350*e057696cSSascha Wildner.\".Cm index 351*e057696cSSascha Wildner.\"target will ensure your 352*e057696cSSascha Wildner.\".Pa INDEX 353*e057696cSSascha Wildner.\"file is up to date with your ports tree. 354*e057696cSSascha Wildner.\".It Cm fetchindex 355*e057696cSSascha Wildner.\"Fetch the 356*e057696cSSascha Wildner.\".Pa INDEX 357*e057696cSSascha Wildner.\"file from the 358*e057696cSSascha Wildner.\".Fx 359*e057696cSSascha Wildner.\"cluster. 360*e057696cSSascha Wildner.El 361*e057696cSSascha Wildner.Sh ENVIRONMENT 362*e057696cSSascha WildnerYou can change all of these. 363*e057696cSSascha Wildner.Bl -tag -width ".Va MASTER_SITES" 364*e057696cSSascha Wildner.It Va PORTSDIR 365*e057696cSSascha WildnerLocation of the ports tree. 366*e057696cSSascha WildnerThis is 367*e057696cSSascha Wildner.Pa /usr/dports 368*e057696cSSascha Wildneron 369*e057696cSSascha Wildner.Dx , 370*e057696cSSascha Wildner.Pa /usr/ports 371*e057696cSSascha Wildneron 372*e057696cSSascha Wildner.Fx 373*e057696cSSascha Wildnerand 374*e057696cSSascha Wildner.Ox , 375*e057696cSSascha Wildnerand 376*e057696cSSascha Wildner.Pa /usr/pkgsrc 377*e057696cSSascha Wildneron 378*e057696cSSascha Wildner.Nx . 379*e057696cSSascha Wildner.It Va WRKDIRPREFIX 380*e057696cSSascha WildnerWhere to create any temporary files. 381*e057696cSSascha WildnerUseful if 382*e057696cSSascha Wildner.Va PORTSDIR 383*e057696cSSascha Wildneris read-only (perhaps mounted from a CD-ROM). 384*e057696cSSascha Wildner.It Va DISTDIR 385*e057696cSSascha WildnerWhere to find/put distfiles, normally 386*e057696cSSascha Wildner.Pa /usr/distfiles . 387*e057696cSSascha Wildner.It Va PACKAGES 388*e057696cSSascha WildnerUsed only for the 389*e057696cSSascha Wildner.Cm package 390*e057696cSSascha Wildnertarget; the base directory for the packages tree, normally 391*e057696cSSascha Wildner.Pa /usr/packages . 392*e057696cSSascha WildnerIf this directory exists, the package tree will be (partially) constructed. 393*e057696cSSascha WildnerThis directory does not have to exist; if it does not, packages will be 394*e057696cSSascha Wildnerplaced into the current directory, or you can define one of 395*e057696cSSascha Wildner.Bl -tag -width ".Va PKGREPOSITORY" 396*e057696cSSascha Wildner.It Va PKGREPOSITORY 397*e057696cSSascha WildnerDirectory to put the package in. 398*e057696cSSascha Wildner.It Va PKGFILE 399*e057696cSSascha WildnerThe full path to the package. 400*e057696cSSascha Wildner.El 401*e057696cSSascha Wildner.It Va LOCALBASE 402*e057696cSSascha WildnerWhere existing things are installed and where to search for files when 403*e057696cSSascha Wildnerresolving dependencies (usually 404*e057696cSSascha Wildner.Pa /usr/local ) . 405*e057696cSSascha Wildner.It Va PREFIX 406*e057696cSSascha WildnerWhere to install this port (usually set to the same as 407*e057696cSSascha Wildner.Va LOCALBASE ) . 408*e057696cSSascha Wildner.It Va MASTER_SITES 409*e057696cSSascha WildnerPrimary sites for distribution files if not found locally. 410*e057696cSSascha Wildner.It Va PATCH_SITES 411*e057696cSSascha WildnerPrimary locations for distribution patch files if not found 412*e057696cSSascha Wildnerlocally. 413*e057696cSSascha Wildner.It Va MASTER_SITE_FREEBSD 414*e057696cSSascha WildnerIf set, go to the master 415*e057696cSSascha Wildner.Fx 416*e057696cSSascha Wildnersite for all files. 417*e057696cSSascha Wildner.It Va MASTER_SITE_OVERRIDE 418*e057696cSSascha WildnerTry going to these sites for all files and patches, first. 419*e057696cSSascha Wildner.It Va MASTER_SITE_BACKUP 420*e057696cSSascha WildnerTry going to these sites for all files and patches, last. 421*e057696cSSascha Wildner.It Va RANDOMIZE_MASTER_SITES 422*e057696cSSascha WildnerTry the download locations in a random order. 423*e057696cSSascha Wildner.It Va MASTER_SORT 424*e057696cSSascha WildnerSort the download locations according to user supplied pattern. 425*e057696cSSascha WildnerExample: 426*e057696cSSascha Wildner.Dl .dk .sunet.se .se dk.php.net .no .de heanet.dl.sourceforge.net 427*e057696cSSascha Wildner.\".It Va MASTER_SITE_INDEX 428*e057696cSSascha Wildner.\"Where to get 429*e057696cSSascha Wildner.\".Pa INDEX 430*e057696cSSascha Wildner.\"source built on 431*e057696cSSascha Wildner.\".Fx 432*e057696cSSascha Wildner.\"cluster (for 433*e057696cSSascha Wildner.\".Cm fetchindex 434*e057696cSSascha Wildner.\"target). 435*e057696cSSascha Wildner.\"Defaults to 436*e057696cSSascha Wildner.\".Pa http://www.FreeBSD.org/ports/ . 437*e057696cSSascha Wildner.\".It Va FETCHINDEX 438*e057696cSSascha Wildner.\"Command to get 439*e057696cSSascha Wildner.\".Pa INDEX 440*e057696cSSascha Wildner.\"(for 441*e057696cSSascha Wildner.\".Cm fetchindex 442*e057696cSSascha Wildner.\"target). 443*e057696cSSascha Wildner.\"Defaults to 444*e057696cSSascha Wildner.\".Dq Nm fetch Fl am . 445*e057696cSSascha Wildner.It Va NOCLEANDEPENDS 446*e057696cSSascha WildnerIf defined, do not let 447*e057696cSSascha Wildner.Cm clean 448*e057696cSSascha Wildnerrecurse to dependencies. 449*e057696cSSascha Wildner.It Va FETCH_CMD 450*e057696cSSascha WildnerCommand to use to fetch files. 451*e057696cSSascha WildnerNormally 452*e057696cSSascha Wildner.Xr fetch 1 . 453*e057696cSSascha Wildner.It Va FORCE_PKG_REGISTER 454*e057696cSSascha WildnerIf set, overwrite any existing package registration on the system. 455*e057696cSSascha Wildner.It Va MOTIFLIB 456*e057696cSSascha WildnerLocation of 457*e057696cSSascha Wildner.Pa libXm. Ns Brq Pa a , Ns Pa so . 458*e057696cSSascha Wildner.It Va INTERACTIVE 459*e057696cSSascha WildnerIf defined, only operate on a port if it requires interaction. 460*e057696cSSascha Wildner.It Va BATCH 461*e057696cSSascha WildnerIf defined, only operate on a port if it can be installed 100% automatically. 462*e057696cSSascha Wildner.It Va DISABLE_VULNERABILITIES 463*e057696cSSascha WildnerIf defined, disable check for security vulnerabilities using 464*e057696cSSascha Wildner.Xr portaudit 1 Pq Pa ports/ports-mgmt/portaudit 465*e057696cSSascha Wildnerwhen installing new ports. 466*e057696cSSascha Wildner.It Va NO_IGNORE 467*e057696cSSascha WildnerIf defined, allow installation of ports marked as 468*e057696cSSascha Wildner.Aq Va FORBIDDEN . 469*e057696cSSascha WildnerThe default behavior of the Ports framework is to abort when the 470*e057696cSSascha Wildnerinstallation of a forbidden port is attempted. 471*e057696cSSascha WildnerOf course, these ports may not work as expected, but if you really know 472*e057696cSSascha Wildnerwhat you are doing and are sure about installing a forbidden port, then 473*e057696cSSascha Wildner.Va NO_IGNORE 474*e057696cSSascha Wildnerlets you do it. 475*e057696cSSascha Wildner.It Va NO_CHECKSUM 476*e057696cSSascha WildnerIf defined, skip verifying the port's checksum. 477*e057696cSSascha Wildner.It Va TRYBROKEN 478*e057696cSSascha WildnerIf defined, attempt to build a port even if it is marked as 479*e057696cSSascha Wildner.Aq Va BROKEN . 480*e057696cSSascha Wildner.It Va PORT_DBDIR 481*e057696cSSascha WildnerDirectory where the results of configuring 482*e057696cSSascha Wildner.Va OPTIONS 483*e057696cSSascha Wildnerare stored. 484*e057696cSSascha WildnerDefaults to 485*e057696cSSascha Wildner.Pa /var/db/ports . 486*e057696cSSascha WildnerEach port where 487*e057696cSSascha Wildner.Va OPTIONS 488*e057696cSSascha Wildnerhave been configured will have a uniquely named sub-directory, containing a 489*e057696cSSascha Wildnersingle file 490*e057696cSSascha Wildner.Pa options . 491*e057696cSSascha Wildner.El 492*e057696cSSascha Wildner.Sh FILES 493*e057696cSSascha Wildner.Bl -tag -width ".Pa /usr/dports/Mk/bsd.port.mk" -compact 494*e057696cSSascha Wildner.It Pa /usr/dports 495*e057696cSSascha WildnerThe default ports directory 496*e057696cSSascha Wildner.It Pa /usr/dports/Mk/bsd.port.mk 497*e057696cSSascha WildnerThe big Kahuna. 498*e057696cSSascha Wildner.El 499*e057696cSSascha Wildner.Sh SEE ALSO 500*e057696cSSascha Wildner.Xr make 1 , 501*e057696cSSascha Wildner.Xr pkg 8 502*e057696cSSascha Wildner.\".Xr portsnap 8 503*e057696cSSascha Wildner.Pp 504*e057696cSSascha WildnerThe following are part of the ports collection: 505*e057696cSSascha Wildner.Pp 506*e057696cSSascha Wildner.Xr portaudit 1 , 507*e057696cSSascha Wildner.Xr portlint 1 508*e057696cSSascha Wildner.Rs 509*e057696cSSascha Wildner.%B "The FreeBSD Handbook" 510*e057696cSSascha Wildner.Re 511*e057696cSSascha Wildner.Pp 512*e057696cSSascha Wildner.Pa http://www.FreeBSD.org/ports 513*e057696cSSascha Wildner(searchable index of all ports) 514*e057696cSSascha Wildner.Sh HISTORY 515*e057696cSSascha WildnerThe Ports Collection 516*e057696cSSascha Wildnerappeared in 517*e057696cSSascha Wildner.Fx 1.0 . 518*e057696cSSascha WildnerIt has since spread to 519*e057696cSSascha Wildner.Nx , 520*e057696cSSascha Wildner.Ox 521*e057696cSSascha Wildnerand 522*e057696cSSascha Wildner.Dx . 523*e057696cSSascha Wildner.Sh AUTHORS 524*e057696cSSascha Wildner.An -nosplit 525*e057696cSSascha WildnerThis manual page was originated by 526*e057696cSSascha Wildner.An David O'Brien . 527*e057696cSSascha Wildner.Sh BUGS 528*e057696cSSascha WildnerPorts documentation is split over four places \(em 529*e057696cSSascha Wildner.Pa /usr/dports/Mk/bsd.port.mk , 530*e057696cSSascha Wildner.%B "The Porter's Handbook" , 531*e057696cSSascha Wildnerthe 532*e057696cSSascha Wildner.Dq "Packages and Ports" 533*e057696cSSascha Wildnerchapter of 534*e057696cSSascha Wildner.%B "The FreeBSD Handbook" , 535*e057696cSSascha Wildnerand 536*e057696cSSascha Wildnerthis manual page. 537