xref: /freebsd/share/man/man7/ports.7 (revision d6ed0d3d310633ecf9294bc332e93f2766b24ded)
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*d6ed0d3dSBaptiste Daroussin.Dd July 22, 2021
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
38f1dd4984SEdward Tomasz Napieralaoffers a simple way to compile and install third party applications.
39f1dd4984SEdward Tomasz NapieralaIt is also used to build packages, to be installed using
4086b83608SEdward Tomasz Napierala.Xr pkg 8 .
41f1dd4984SEdward Tomasz Napierala.Pp
42f1dd4984SEdward Tomasz NapieralaThe ports tree, typically located at
43f1dd4984SEdward Tomasz Napierala.Pa /usr/ports ,
44f1dd4984SEdward Tomasz Napieralaconsists of subdirectories, one for each category; those in turn contain
45f1dd4984SEdward Tomasz Napieralaindividual ports.
46f1dd4984SEdward Tomasz NapieralaEach port is a directory with metadata and patches necessary to make
47f1dd4984SEdward Tomasz Napieralathe original application source code compile and run on
48481974c2SEitan Adler.Fx .
493d04377bSMateusz PiotrowskiCompiling an application is as simple as typing
503d04377bSMateusz Piotrowski.Dq Li "make build"
51f1dd4984SEdward Tomasz Napieralain the port directory.
520412d17cSRuslan ErmilovThe
530412d17cSRuslan Ermilov.Pa Makefile
54e4b22b63SDavid E. O'Brienautomatically fetches the
55f1dd4984SEdward Tomasz Napieralaapplication source code, either from a local disk or the network, unpacks it,
56f1dd4984SEdward Tomasz Napieralaapplies the patches, and compiles it.
57f1dd4984SEdward Tomasz NapieralaIt also recursively handles dependencies \(em other pieces of software
58f1dd4984SEdward Tomasz Napieralathe port depends on in order to build and work.
59f1dd4984SEdward Tomasz NapieralaAfterwards,
603d04377bSMateusz Piotrowski.Dq Li "make install"
61f1dd4984SEdward Tomasz Napieralainstalls the application.
624000f72fSDavid E. O'Brien.Pp
6322427dafSEdward Tomasz NapieralaThe
6422427dafSEdward Tomasz Napierala.Fx
6522427dafSEdward Tomasz NapieralaPorts Collection is maintained in several branches, which differ mostly
6622427dafSEdward Tomasz Napieralaby versions of software provided: the
6711f47f17SRene Ladan.Em main
6811f47f17SRene Ladanbranch contains all the latest changes and corresponds to the
6911f47f17SRene Ladan.Em latest
7011f47f17SRene Ladanpackage set, while the
7122427dafSEdward Tomasz Napierala.Em quarterly
7222427dafSEdward Tomasz Napieralabranches only provide critical fixes.
7322427dafSEdward Tomasz NapieralaThe
7411f47f17SRene Ladan.Em main
7511f47f17SRene Ladanbranch can be cloned and updated from the Git repository located at:
7622427dafSEdward Tomasz Napierala.Pp
7711f47f17SRene Ladan.Lk https://git.FreeBSD.org/ports.git
7811f47f17SRene Ladan.Pp
7911f47f17SRene Ladanso eg:
8011f47f17SRene Ladan.Pp
8111f47f17SRene Ladan.Cm git clone https://git.FreeBSD.org/ports.git
8222427dafSEdward Tomasz Napierala.Pp
8322427dafSEdward Tomasz NapieralaThe
8422427dafSEdward Tomasz Napierala.Em quarterly
8511f47f17SRene Ladanbranches can be found in Git as branches like
8611f47f17SRene Ladan.Pa yyyyQn
8711f47f17SRene Ladan, where
8811f47f17SRene Ladan.Em yyyy
8911f47f17SRene Ladanindicates the year and
9011f47f17SRene Ladan.Em n
9111f47f17SRene Ladanindicates the quarter
9211f47f17SRene Ladan.Po 1 to 4
9311f47f17SRene Ladan.Pc , eg:
9422427dafSEdward Tomasz Napierala.Pp
9511f47f17SRene Ladan.Cm git clone -b 2021Q2 https://git.FreeBSD.org/ports.git
9622427dafSEdward Tomasz Napierala.Pp
9722427dafSEdward Tomasz NapieralaIt is generally a good idea to use the
9822427dafSEdward Tomasz Napierala.Nm
9922427dafSEdward Tomasz Napieralabranch that matches the
10022427dafSEdward Tomasz Napierala.Xr pkg 8
10122427dafSEdward Tomasz Napieralarepository being used.
10222427dafSEdward Tomasz NapieralaBy default, for
10322427dafSEdward Tomasz Napierala.Fx CURRENT
10422427dafSEdward Tomasz Napieralathe
10522427dafSEdward Tomasz Napierala.Xr pkg 8
10622427dafSEdward Tomasz Napieralais configured to install packages built from the
10711f47f17SRene Ladan.Em main
10822427dafSEdward Tomasz Napieralabranch, while for
10922427dafSEdward Tomasz Napierala.Fx STABLE
11022427dafSEdward Tomasz Napieralaor RELEASE versions it is configured to install packages built from
11122427dafSEdward Tomasz Napieralathe latest
11222427dafSEdward Tomasz Napierala.Em quarterly
11322427dafSEdward Tomasz Napieralabranch.
11422427dafSEdward Tomasz NapieralaCurrently configured
11522427dafSEdward Tomasz Napierala.Xr pkg 8
11622427dafSEdward Tomasz Napieralarepository can be verified by looking at the
11722427dafSEdward Tomasz Napierala.Em url
11822427dafSEdward Tomasz Napieralafield in
11922427dafSEdward Tomasz Napierala.Cm pkg -vv
12022427dafSEdward Tomasz Napieralaoutput.
12122427dafSEdward Tomasz Napierala.Pp
1228f9c7371SEdward Tomasz NapieralaFor more information about using ports, see the
1238f9c7371SEdward Tomasz Napierala.Dq "Packages and Ports" section
1245d3d0230SMurray Stokelyin
1253d04377bSMateusz Piotrowski.Sm off
1263d04377bSMateusz Piotrowski.%B "The FreeBSD Handbook"
1273d04377bSMateusz Piotrowski.No \&:
1283d04377bSMateusz Piotrowski.Sm on
1298f9c7371SEdward Tomasz Napierala.Pp
1308dfb0024SLi-Wen Hsu.Lk https://docs.FreeBSD.org/en/books/handbook/ports/
1318f9c7371SEdward Tomasz Napierala.Pp
132f1dd4984SEdward Tomasz NapieralaFor information about creating new ports, see
1333d04377bSMateusz Piotrowski.Sm off
1343d04377bSMateusz Piotrowski.%B "The Porter's Handbook"
1353d04377bSMateusz Piotrowski.No \&:
1363d04377bSMateusz Piotrowski.Sm on
1378f9c7371SEdward Tomasz Napierala.Pp
1388dfb0024SLi-Wen Hsu.Lk https://docs.FreeBSD.org/en/books/porters-handbook/
139e4b22b63SDavid E. O'Brien.Sh TARGETS
140f1dd4984SEdward Tomasz NapieralaSome of the
141f1dd4984SEdward Tomasz Napierala.Xr make 1
142f1dd4984SEdward Tomasz Napieralatargets work recursively through subdirectories.
1430412d17cSRuslan ErmilovThis lets you, for example, install all of the
1440412d17cSRuslan Ermilov.Dq Li biology
1453d04377bSMateusz Piotrowskiports with one command.
1460412d17cSRuslan ErmilovThe targets that do this are
1470412d17cSRuslan Ermilov.Cm build , checksum , clean , configure ,
1480412d17cSRuslan Ermilov.Cm depends , extract , fetch , install ,
14965dfa7aaSTim Vanderhoekand
1500412d17cSRuslan Ermilov.Cm package .
15165dfa7aaSTim Vanderhoek.Pp
15265dfa7aaSTim VanderhoekThe following targets will be run automatically by each proceeding
1530412d17cSRuslan Ermilovtarget in order.
1540412d17cSRuslan ErmilovThat is,
1550412d17cSRuslan Ermilov.Cm build
1563d04377bSMateusz Piotrowskiwill be run (if necessary) by
1570412d17cSRuslan Ermilov.Cm install ,
15865dfa7aaSTim Vanderhoekand so on all the way to
1590412d17cSRuslan Ermilov.Cm fetch .
160019de50bSDima DorfmanUsually, you will only use the
1610412d17cSRuslan Ermilov.Cm install
162019de50bSDima Dorfmantarget.
1630412d17cSRuslan Ermilov.Bl -tag -width ".Cm configure"
16403687bafSKirill Ponomarev.It Cm config
16503687bafSKirill PonomarevConfigure
16603687bafSKirill Ponomarev.Va OPTIONS
16703687bafSKirill Ponomarevfor this port using
168ae41fe61SEitan Adler.Xr dialog4ports 1 .
1690412d17cSRuslan Ermilov.It Cm fetch
1700412d17cSRuslan ErmilovFetch all of the files needed to build this port from the sites
1710412d17cSRuslan Ermilovlisted in
1720412d17cSRuslan Ermilov.Va MASTER_SITES
17365dfa7aaSTim Vanderhoekand
1740412d17cSRuslan Ermilov.Va PATCH_SITES .
1750412d17cSRuslan ErmilovSee
176e57fe046SKirill Ponomarev.Va FETCH_CMD , MASTER_SITE_OVERRIDE
1770412d17cSRuslan Ermilovand
178e57fe046SKirill Ponomarev.Va MASTER_SITE_BACKUP .
1790412d17cSRuslan Ermilov.It Cm checksum
180019de50bSDima DorfmanVerify that the fetched distfile's checksum matches the one the port was
181019de50bSDima Dorfmantested against.
18267900914SBenedict ReuschlingIf the distfile's checksum does not match, it also fetches the distfiles
18367900914SBenedict Reuschlingwhich are missing or failed the checksum calculation.
18465dfa7aaSTim VanderhoekDefining
1850412d17cSRuslan Ermilov.Va NO_CHECKSUM
18665dfa7aaSTim Vanderhoekwill skip this step.
1870412d17cSRuslan Ermilov.It Cm depends
18865dfa7aaSTim VanderhoekInstall
189c4d9468eSRuslan Ermilov(or compile if only compilation is necessary)
1900412d17cSRuslan Ermilovany dependencies of the current port.
1910412d17cSRuslan ErmilovWhen called by the
1920412d17cSRuslan Ermilov.Cm extract
19365dfa7aaSTim Vanderhoekor
1940412d17cSRuslan Ermilov.Cm fetch
19565dfa7aaSTim Vanderhoektargets, this is run in piecemeal as
1960412d17cSRuslan Ermilov.Cm fetch-depends , build-depends ,
1970412d17cSRuslan Ermilovetc.
1980412d17cSRuslan ErmilovDefining
1990412d17cSRuslan Ermilov.Va NO_DEPENDS
20065dfa7aaSTim Vanderhoekwill skip this step.
2010412d17cSRuslan Ermilov.It Cm extract
20265dfa7aaSTim VanderhoekExpand the distfile into a work directory.
2030412d17cSRuslan Ermilov.It Cm patch
20465dfa7aaSTim VanderhoekApply any patches that are necessary for the port.
2050412d17cSRuslan Ermilov.It Cm configure
2060412d17cSRuslan ErmilovConfigure the port.
2070412d17cSRuslan ErmilovSome ports will ask you questions during this stage.
2080412d17cSRuslan ErmilovSee
2090412d17cSRuslan Ermilov.Va INTERACTIVE
21065dfa7aaSTim Vanderhoekand
2110412d17cSRuslan Ermilov.Va BATCH .
2120412d17cSRuslan Ermilov.It Cm build
2130412d17cSRuslan ErmilovBuild the port.
2140412d17cSRuslan ErmilovThis is the same as calling the
2150412d17cSRuslan Ermilov.Cm all
21665dfa7aaSTim Vanderhoektarget.
2170412d17cSRuslan Ermilov.It Cm install
2180412d17cSRuslan ErmilovInstall the port and register it with the package system.
2190412d17cSRuslan ErmilovThis is all you really need to do.
22049ddfdecSFernando Apesteguía.It Cm install-missing-packages
22149ddfdecSFernando ApesteguíaInstall missing dependencies from packages instead of building them.
22265dfa7aaSTim Vanderhoek.El
22365dfa7aaSTim Vanderhoek.Pp
22465dfa7aaSTim VanderhoekThe following targets are not run during the normal install process.
22556e37108SGiorgos Keramidas.Bl -tag -width ".Cm fetch-recursive"
22603687bafSKirill Ponomarev.It Cm showconfig
22703687bafSKirill PonomarevDisplay
22803687bafSKirill Ponomarev.Va OPTIONS
22903687bafSKirill Ponomarevconfig for this port.
230a571610dSKirill Ponomarev.It Cm showconfig-recursive
231a571610dSKirill PonomarevDisplay
232a571610dSKirill Ponomarev.Va OPTIONS
233a571610dSKirill Ponomarevconfig for this port and all its dependencies.
23403687bafSKirill Ponomarev.It Cm rmconfig
23503687bafSKirill PonomarevRemove
23603687bafSKirill Ponomarev.Va OPTIONS
23703687bafSKirill Ponomarevconfig for this port.
238a571610dSKirill Ponomarev.It Cm rmconfig-recursive
239a571610dSKirill PonomarevRemove
240a571610dSKirill Ponomarev.Va OPTIONS
241a571610dSKirill Ponomarevconfig for this port and all its dependencies.
242a571610dSKirill Ponomarev.It Cm config-conditional
243a571610dSKirill PonomarevSkip the ports which have already had their
244a571610dSKirill Ponomarev.Va OPTIONS
245a571610dSKirill Ponomarevconfigured.
246039b8701STom Rhodes.It Cm config-recursive
247039b8701STom RhodesConfigure
248039b8701STom Rhodes.Va OPTIONS
249039b8701STom Rhodesfor this port and all its dependencies using
250ae41fe61SEitan Adler.Xr dialog4ports 1 .
2510412d17cSRuslan Ermilov.It Cm fetch-list
25203687bafSKirill PonomarevShow list of files to be fetched in order to build the port.
25356e37108SGiorgos Keramidas.It Cm fetch-recursive
25456e37108SGiorgos KeramidasFetch the distfiles of the port and all its dependencies.
255515ba752SChristian Brueffer.It Cm fetch-recursive-list
256515ba752SChristian BruefferShow list of files that would be retrieved by
257515ba752SChristian Brueffer.Cm fetch-recursive .
258d40caf29SThomas Abthorpe.It Cm run-depends-list , build-depends-list
259d40caf29SThomas AbthorpePrint a list of all the compile and run dependencies, and dependencies
260d40caf29SThomas Abthorpeof those dependencies, by port directory.
261039b8701STom Rhodes.It Cm all-depends-list
262039b8701STom RhodesPrint a list of all dependencies for the port.
2630412d17cSRuslan Ermilov.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list
26465dfa7aaSTim VanderhoekPrint a list of all the compile and run dependencies, and dependencies
265d40caf29SThomas Abthorpeof those dependencies, by port name and version.
266c8ff7e9eSPav Lucistnik.It Cm missing
267c8ff7e9eSPav LucistnikPrint a list of missing dependencies to be installed for the port.
2680412d17cSRuslan Ermilov.It Cm clean
2690412d17cSRuslan ErmilovRemove the expanded source code.
2700412d17cSRuslan ErmilovThis recurses to dependencies unless
2710412d17cSRuslan Ermilov.Va NOCLEANDEPENDS
27265dfa7aaSTim Vanderhoekis defined.
2730412d17cSRuslan Ermilov.It Cm distclean
2740412d17cSRuslan ErmilovRemove the port's distfiles and perform the
2750412d17cSRuslan Ermilov.Cm clean
276019de50bSDima Dorfmantarget.
277019de50bSDima DorfmanThe
2780412d17cSRuslan Ermilov.Cm clean
27965dfa7aaSTim Vanderhoekportion recurses to dependencies unless
2800412d17cSRuslan Ermilov.Va NOCLEANDEPENDS
28165dfa7aaSTim Vanderhoekis defined, but the
2820412d17cSRuslan Ermilov.Cm distclean
28365dfa7aaSTim Vanderhoekportion never recurses
284c4d9468eSRuslan Ermilov(this is perhaps a bug).
2850412d17cSRuslan Ermilov.It Cm reinstall
28665dfa7aaSTim VanderhoekUse this to restore a port after using
287225636dcSEdward Tomasz Napierala.Xr pkg-delete 8
28865dfa7aaSTim Vanderhoekwhen you should have used
2890412d17cSRuslan Ermilov.Cm deinstall .
2900412d17cSRuslan Ermilov.It Cm deinstall
29165dfa7aaSTim VanderhoekRemove an installed port from the system, similar to
292225636dcSEdward Tomasz Napierala.Xr pkg-delete 8 .
293515ba752SChristian Brueffer.It Cm deinstall-all
294515ba752SChristian BruefferRemove all installed ports with the same
295515ba752SChristian Brueffer.Va PKGORIGIN
296515ba752SChristian Bruefferfrom the system.
2970412d17cSRuslan Ermilov.It Cm package
2980412d17cSRuslan ErmilovMake a binary package for the port.
2990412d17cSRuslan ErmilovThe port will be installed if it has not already been.
3000412d17cSRuslan ErmilovThe package is a
301*d6ed0d3dSBaptiste Daroussin.Pa .pkg
3020412d17cSRuslan Ermilovfile that you can use to
30365dfa7aaSTim Vanderhoekinstall the port on other machines with
304225636dcSEdward Tomasz Napierala.Xr pkg-add 8 .
30565dfa7aaSTim VanderhoekIf the directory specified by
3060412d17cSRuslan Ermilov.Va PACKAGES
307248a47a4SDaniel Ebdrup Jensendoes not exist, the package will be put in
308248a47a4SDaniel Ebdrup Jensen.Pa /usr/ports/category/port/work/pkg .
30983d04c76STim VanderhoekSee
3100412d17cSRuslan Ermilov.Va PKGREPOSITORY
31183d04c76STim Vanderhoekand
312248a47a4SDaniel Ebdrup Jensen.Va PKGFILE
313248a47a4SDaniel Ebdrup Jensenfor more information.
3148c3bfd69SChristian Brueffer.It Cm package-recursive
3158c3bfd69SChristian BruefferLike
3168c3bfd69SChristian Brueffer.Cm package ,
3178c3bfd69SChristian Bruefferbut makes a package for each depending port as well.
318d40caf29SThomas Abthorpe.It Cm package-name
319d40caf29SThomas AbthorpePrints the name with version of the port.
3200412d17cSRuslan Ermilov.It Cm readmes
32183d04c76STim VanderhoekCreate a port's
32283d04c76STim Vanderhoek.Pa README.html .
3236b4c0736STim VanderhoekThis can be used from
3246b4c0736STim Vanderhoek.Pa /usr/ports
3256b4c0736STim Vanderhoekto create a browsable web of all ports on your system!
3260412d17cSRuslan Ermilov.It Cm search
327019de50bSDima DorfmanSearch the
328019de50bSDima Dorfman.Pa INDEX
32965d476e0SKirill Ponomarevfile for the pattern specified by the
3300412d17cSRuslan Ermilov.Va key
33165d476e0SKirill Ponomarev(searches the port name, comment, and dependencies),
3320412d17cSRuslan Ermilov.Va name
33365d476e0SKirill Ponomarev(searches the port name only),
33465d476e0SKirill Ponomarev.Va path
33565d476e0SKirill Ponomarev(searches the port path),
33665d476e0SKirill Ponomarev.Va info
33765d476e0SKirill Ponomarev(searches the port info),
33865d476e0SKirill Ponomarev.Va maint
33965d476e0SKirill Ponomarev(searches the port maintainer),
34065d476e0SKirill Ponomarev.Va cat
34165d476e0SKirill Ponomarev(searches the port category),
34265d476e0SKirill Ponomarev.Va bdeps
34365d476e0SKirill Ponomarev(searches the port build-time dependency),
34465d476e0SKirill Ponomarev.Va rdeps
3451ea65ec7SGabor Kovesdan(searches the port run-time dependency),
3461ea65ec7SGabor Kovesdan.Va www
3471ea65ec7SGabor Kovesdan(searches the port web site)
3480412d17cSRuslan Ermilov.Xr make 1
34965d476e0SKirill Ponomarevvariables, and their exclusion counterparts:
35065d476e0SKirill Ponomarev.Va xname , xkey
35165d476e0SKirill Ponomarevetc.
352019de50bSDima DorfmanFor example, one would type:
353019de50bSDima Dorfman.Pp
3540412d17cSRuslan Ermilov.Dl "cd /usr/ports && make search name=query"
355019de50bSDima Dorfman.Pp
356019de50bSDima Dorfmanto find all ports whose
357019de50bSDima Dorfmanname matches
3580412d17cSRuslan Ermilov.Dq Li query .
359019de50bSDima DorfmanResults include the matching ports' path, comment, maintainer,
360019de50bSDima Dorfmanbuild dependencies, and run dependencies.
36165d476e0SKirill Ponomarev.Bd -literal -offset indent
36265d476e0SKirill Ponomarevcd /usr/ports && make search name=pear- \e
36365d476e0SKirill Ponomarev    xbdeps=apache
36465d476e0SKirill Ponomarev.Ed
36565d476e0SKirill Ponomarev.Pp
36665d476e0SKirill PonomarevTo find all ports whose
36765d476e0SKirill Ponomarevnames contain
36865d476e0SKirill Ponomarev.Dq Li pear-
36965d476e0SKirill Ponomarevand which do not have apache
37065d476e0SKirill Ponomarevlisted in build-time dependencies.
37165d476e0SKirill Ponomarev.Bd -literal -offset indent
37265d476e0SKirill Ponomarevcd /usr/ports && make search name=pear- \e
37365d476e0SKirill Ponomarev    xname='ht(tp|ml)'
37465d476e0SKirill Ponomarev.Ed
37565d476e0SKirill Ponomarev.Pp
37665d476e0SKirill PonomarevTo find all ports whose names contain
37765d476e0SKirill Ponomarev.Dq Li pear- ,
37865d476e0SKirill Ponomarevbut not
37965d476e0SKirill Ponomarev.Dq Li html
38065d476e0SKirill Ponomarevor
38165d476e0SKirill Ponomarev.Dq Li http .
38265d476e0SKirill Ponomarev.Bd -literal -offset indent
38365d476e0SKirill Ponomarevmake search key=apache display=name,path,info keylim=1
38465d476e0SKirill Ponomarev.Ed
38565d476e0SKirill Ponomarev.Pp
38665d476e0SKirill PonomarevTo find ports that contain
38765d476e0SKirill Ponomarev.Dq Li apache
38865d476e0SKirill Ponomarevin either of the name, path, info
38965d476e0SKirill Ponomarevfields, ignore the rest of the record.
3901ea65ec7SGabor Kovesdan.Pp
391f283c8f8SJens SchweikhardtBy default the search is not case-sensitive.
3921ea65ec7SGabor KovesdanIn order to make it case-sensitive you can use the
3931ea65ec7SGabor Kovesdan.Va icase
3941ea65ec7SGabor Kovesdanvariable:
3951ea65ec7SGabor Kovesdan.Bd -literal -offset indent
3961ea65ec7SGabor Kovesdanmake search name=p5-R icase=0
3971ea65ec7SGabor Kovesdan.Ed
398be3253caSMaxim Konovalov.It Cm quicksearch
399be3253caSMaxim KonovalovReduced
400be3253caSMaxim Konovalov.Cm search
401be3253caSMaxim Konovalovoutput.
402be3253caSMaxim KonovalovOnly display name, path and info.
40303687bafSKirill Ponomarev.It Cm describe
40403687bafSKirill PonomarevGenerate a one-line description of each port for use in the
40503687bafSKirill Ponomarev.Pa INDEX
40603687bafSKirill Ponomarevfile.
407724c0a23SChristian Brueffer.It Cm maintainer
408724c0a23SChristian BruefferDisplay the port maintainer's email address.
4090412d17cSRuslan Ermilov.It Cm index
410019de50bSDima DorfmanCreate
411019de50bSDima Dorfman.Pa /usr/ports/INDEX ,
412019de50bSDima Dorfmanwhich is used by the
4130412d17cSRuslan Ermilov.Cm pretty-print-*
414019de50bSDima Dorfmanand
4150412d17cSRuslan Ermilov.Cm search
416019de50bSDima Dorfmantargets.
4177585929eSKirill PonomarevRunning the
4180412d17cSRuslan Ermilov.Cm index
4190412d17cSRuslan Ermilovtarget will ensure your
4200412d17cSRuslan Ermilov.Pa INDEX
4210412d17cSRuslan Ermilovfile is up to date with your ports tree.
4227585929eSKirill Ponomarev.It Cm fetchindex
4237585929eSKirill PonomarevFetch the
4247585929eSKirill Ponomarev.Pa INDEX
4257585929eSKirill Ponomarevfile from the
4267585929eSKirill Ponomarev.Fx
4277585929eSKirill Ponomarevcluster.
4283136363fSRuslan Ermilov.El
429def37e7cSMike Pritchard.Sh ENVIRONMENT
43065dfa7aaSTim VanderhoekYou can change all of these.
4310412d17cSRuslan Ermilov.Bl -tag -width ".Va MASTER_SITES"
4320412d17cSRuslan Ermilov.It Va PORTSDIR
4330412d17cSRuslan ErmilovLocation of the ports tree.
4340412d17cSRuslan ErmilovThis is
43565dfa7aaSTim Vanderhoek.Pa /usr/ports
436758dde06SMateusz Piotrowskiby default.
4370412d17cSRuslan Ermilov.It Va WRKDIRPREFIX
4380412d17cSRuslan ErmilovWhere to create any temporary files.
4390412d17cSRuslan ErmilovUseful if
4400412d17cSRuslan Ermilov.Va PORTSDIR
4410412d17cSRuslan Ermilovis read-only (perhaps mounted from a CD-ROM).
4420412d17cSRuslan Ermilov.It Va DISTDIR
44365dfa7aaSTim VanderhoekWhere to find/put distfiles, normally
44465dfa7aaSTim Vanderhoek.Pa distfiles/
44565dfa7aaSTim Vanderhoekin
4460412d17cSRuslan Ermilov.Va PORTSDIR .
447c6a2e9a7SPiotr Pawel Stefaniak.It Va SU_CMD
448c6a2e9a7SPiotr Pawel StefaniakCommand used to elevate privilege to configure and install a port.
449c6a2e9a7SPiotr Pawel StefaniakThe unprivileged user must have write access to
450c6a2e9a7SPiotr Pawel Stefaniak.Va WRKDIRPREFIX
451c6a2e9a7SPiotr Pawel Stefaniakand
452c6a2e9a7SPiotr Pawel Stefaniak.Va DISTDIR .
453c6a2e9a7SPiotr Pawel StefaniakThe default is
45476d2af50SMateusz Piotrowski.Ql /usr/bin/su root -c .
45576d2af50SMateusz PiotrowskiMany users set it to
45676d2af50SMateusz Piotrowski.Ql /usr/local/bin/sudo -E sh -c
45776d2af50SMateusz Piotrowskifor convenience.
4580412d17cSRuslan Ermilov.It Va PACKAGES
45965dfa7aaSTim VanderhoekUsed only for the
4600412d17cSRuslan Ermilov.Cm package
46165dfa7aaSTim Vanderhoektarget; the base directory for the packages tree, normally
46265dfa7aaSTim Vanderhoek.Pa packages/
46365dfa7aaSTim Vanderhoekin
4640412d17cSRuslan Ermilov.Va PORTSDIR .
46565dfa7aaSTim VanderhoekIf this directory exists, the package tree will be (partially) constructed.
4660412d17cSRuslan ErmilovThis directory does not have to exist; if it does not, packages will be
46783d04c76STim Vanderhoekplaced into the current directory, or you can define one of
4680412d17cSRuslan Ermilov.Bl -tag -width ".Va PKGREPOSITORY"
4690412d17cSRuslan Ermilov.It Va PKGREPOSITORY
47083d04c76STim VanderhoekDirectory to put the package in.
4710412d17cSRuslan Ermilov.It Va PKGFILE
47265dfa7aaSTim VanderhoekThe full path to the package.
47365dfa7aaSTim Vanderhoek.El
474eed1dcabSEitan Adler.It Va LOCALBASE
475eed1dcabSEitan AdlerWhere existing things are installed and where to search for files when
476eed1dcabSEitan Adlerresolving dependencies (usually
4779a0e6be2SXin LI.Pa /usr/local ) .
478eed1dcabSEitan Adler.It Va PREFIX
479eed1dcabSEitan AdlerWhere to install this port (usually set to the same as
480eed1dcabSEitan Adler.Va LOCALBASE ) .
4810412d17cSRuslan Ermilov.It Va MASTER_SITES
482e4b22b63SDavid E. O'BrienPrimary sites for distribution files if not found locally.
4830412d17cSRuslan Ermilov.It Va PATCH_SITES
4840412d17cSRuslan ErmilovPrimary locations for distribution patch files if not found
485e4b22b63SDavid E. O'Brienlocally.
4860412d17cSRuslan Ermilov.It Va MASTER_SITE_FREEBSD
487b5c508fbSRuslan ErmilovIf set, go to the master
488b5c508fbSRuslan Ermilov.Fx
489b5c508fbSRuslan Ermilovsite for all files.
4900412d17cSRuslan Ermilov.It Va MASTER_SITE_OVERRIDE
491b81d803eSRuslan ErmilovTry going to these sites for all files and patches, first.
492e57fe046SKirill Ponomarev.It Va MASTER_SITE_BACKUP
493e57fe046SKirill PonomarevTry going to these sites for all files and patches, last.
4941f568fb2SPav Lucistnik.It Va RANDOMIZE_MASTER_SITES
4951f568fb2SPav LucistnikTry the download locations in a random order.
4961f568fb2SPav Lucistnik.It Va MASTER_SORT
4971f568fb2SPav LucistnikSort the download locations according to user supplied pattern.
4981f568fb2SPav LucistnikExample:
4991f568fb2SPav Lucistnik.Dl .dk .sunet.se .se dk.php.net .no .de heanet.dl.sourceforge.net
500e57fe046SKirill Ponomarev.It Va MASTER_SITE_INDEX
501e57fe046SKirill PonomarevWhere to get
502e57fe046SKirill Ponomarev.Pa INDEX
503e57fe046SKirill Ponomarevsource built on
504e57fe046SKirill Ponomarev.Fx
505e57fe046SKirill Ponomarevcluster (for
506e57fe046SKirill Ponomarev.Cm fetchindex
507e57fe046SKirill Ponomarevtarget).
508e57fe046SKirill PonomarevDefaults to
509a2aef24aSEitan Adler.Pa https://www.FreeBSD.org/ports/ .
510e57fe046SKirill Ponomarev.It Va FETCHINDEX
511e57fe046SKirill PonomarevCommand to get
512e57fe046SKirill Ponomarev.Pa INDEX
513e57fe046SKirill Ponomarev(for
514e57fe046SKirill Ponomarev.Cm fetchindex
515e57fe046SKirill Ponomarevtarget).
516e57fe046SKirill PonomarevDefaults to
5173d04377bSMateusz Piotrowski.Dq Li "fetch -am" .
5180412d17cSRuslan Ermilov.It Va NOCLEANDEPENDS
5190412d17cSRuslan ErmilovIf defined, do not let
5200412d17cSRuslan Ermilov.Cm clean
52165dfa7aaSTim Vanderhoekrecurse to dependencies.
5220412d17cSRuslan Ermilov.It Va FETCH_CMD
5230412d17cSRuslan ErmilovCommand to use to fetch files.
5240412d17cSRuslan ErmilovNormally
52565dfa7aaSTim Vanderhoek.Xr fetch 1 .
5260412d17cSRuslan Ermilov.It Va FORCE_PKG_REGISTER
52765dfa7aaSTim VanderhoekIf set, overwrite any existing package registration on the system.
5280412d17cSRuslan Ermilov.It Va INTERACTIVE
52965dfa7aaSTim VanderhoekIf defined, only operate on a port if it requires interaction.
5300412d17cSRuslan Ermilov.It Va BATCH
53165dfa7aaSTim VanderhoekIf defined, only operate on a port if it can be installed 100% automatically.
532949f900dSSimon L. B. Nielsen.It Va DISABLE_VULNERABILITIES
533949f900dSSimon L. B. NielsenIf defined, disable check for security vulnerabilities using
5349ef6fea6SGlen Barber.Xr pkg-audit 8
535949f900dSSimon L. B. Nielsenwhen installing new ports.
536068abd55SGiorgos Keramidas.It Va NO_IGNORE
537068abd55SGiorgos KeramidasIf defined, allow installation of ports marked as
538068abd55SGiorgos Keramidas.Aq Va FORBIDDEN .
539068abd55SGiorgos KeramidasThe default behavior of the Ports framework is to abort when the
540068abd55SGiorgos Keramidasinstallation of a forbidden port is attempted.
541068abd55SGiorgos KeramidasOf course, these ports may not work as expected, but if you really know
542068abd55SGiorgos Keramidaswhat you are doing and are sure about installing a forbidden port, then
543068abd55SGiorgos Keramidas.Va NO_IGNORE
544068abd55SGiorgos Keramidaslets you do it.
545b7642c92SBenedict Reuschling.It Va NO_CHECKSUM
546b7642c92SBenedict ReuschlingIf defined, skip verifying the port's checksum.
5471583221bSGiorgos Keramidas.It Va TRYBROKEN
5481583221bSGiorgos KeramidasIf defined, attempt to build a port even if it is marked as
5491583221bSGiorgos Keramidas.Aq Va BROKEN .
550520a4bfdSGabor Kovesdan.It Va PORT_DBDIR
551520a4bfdSGabor KovesdanDirectory where the results of configuring
552520a4bfdSGabor Kovesdan.Va OPTIONS
553520a4bfdSGabor Kovesdanare stored.
554520a4bfdSGabor KovesdanDefaults to
555520a4bfdSGabor Kovesdan.Pa /var/db/ports .
556520a4bfdSGabor KovesdanEach port where
557520a4bfdSGabor Kovesdan.Va OPTIONS
558520a4bfdSGabor Kovesdanhave been configured will have a uniquely named sub-directory, containing a
559520a4bfdSGabor Kovesdansingle file
560520a4bfdSGabor Kovesdan.Pa options .
56165dfa7aaSTim Vanderhoek.El
56259be36b0SBenjamin Kaduk.Sh MAKE VARIABLES
56359be36b0SBenjamin KadukThe following list provides a name and short description for many of the
56459be36b0SBenjamin Kadukvariables that are used when building ports.
56559be36b0SBenjamin KadukMore information on these and other related variables may be found in
56659be36b0SBenjamin Kaduk.Pa ${PORTSDIR}/Mk/*
56759be36b0SBenjamin Kadukand the
56859be36b0SBenjamin Kaduk.Fx
56959be36b0SBenjamin KadukPorter's Handbook.
570af1f5e64SMateusz Piotrowski.Bl -tag -width "WITH_CCACHE_BUILD"
57159be36b0SBenjamin Kaduk.It Va WITH_DEBUG
57259be36b0SBenjamin Kaduk.Pq Vt bool
57359be36b0SBenjamin KadukIf set, debugging symbols are installed for ports binaries.
57459be36b0SBenjamin Kaduk.It Va WITH_DEBUG_PORTS
57559be36b0SBenjamin KadukA list of origins for which to set
57623788e6cSMateusz Piotrowski.Va WITH_DEBUG .
577d25f7d32SMateusz Piotrowski.It Va DEBUG_FLAGS
578d25f7d32SMateusz Piotrowski.Pq Default: Ql -g
579d25f7d32SMateusz PiotrowskiAdditional
580d25f7d32SMateusz Piotrowski.Va CFLAGS
581d25f7d32SMateusz Piotrowskito set when
582d25f7d32SMateusz Piotrowski.Va WITH_DEBUG
583d25f7d32SMateusz Piotrowskiis set.
58459be36b0SBenjamin Kaduk.It Va WITH_CCACHE_BUILD
58559be36b0SBenjamin Kaduk.Pq Vt bool
58659be36b0SBenjamin KadukIf set, enables the use of
58759be36b0SBenjamin Kaduk.Xr ccache 1
58859be36b0SBenjamin Kadukfor building ports.
58959be36b0SBenjamin Kaduk.It Va CCACHE_DIR
5903d04377bSMateusz PiotrowskiWhich directory to use for the
5913d04377bSMateusz Piotrowski.Xr ccache 1
5923d04377bSMateusz Piotrowskidata.
59359be36b0SBenjamin Kaduk.El
5944000f72fSDavid E. O'Brien.Sh FILES
5950412d17cSRuslan Ermilov.Bl -tag -width ".Pa /usr/ports/Mk/bsd.port.mk" -compact
5964000f72fSDavid E. O'Brien.It Pa /usr/ports
5973d04377bSMateusz PiotrowskiThe default ports directory.
598652627f0STim Vanderhoek.It Pa /usr/ports/Mk/bsd.port.mk
59965dfa7aaSTim VanderhoekThe big Kahuna.
6003136363fSRuslan Ermilov.El
6011b3fba16SEdward Tomasz Napierala.Sh EXAMPLES
602154b4d39SMateusz Piotrowski.Bl -tag -width 0n
603154b4d39SMateusz Piotrowski.It Sy Example 1\&: No Building and Installing a Port
604154b4d39SMateusz Piotrowski.Pp
605154b4d39SMateusz PiotrowskiThe following command builds and installs Emacs.
606154b4d39SMateusz Piotrowski.Bd -literal -offset 2n
607154b4d39SMateusz Piotrowski.Li # Ic cd /usr/ports/editors/emacs
608154b4d39SMateusz Piotrowski.Li # Ic make install
6091b3fba16SEdward Tomasz Napierala.Ed
610154b4d39SMateusz Piotrowski.It Sy Example 2\&: No Installing Dependencies with Xr pkg 8
611154b4d39SMateusz Piotrowski.Pp
61296fdbc90SMateusz PiotrowskiThe following example shows how to build and install a port without having to
613154b4d39SMateusz Piotrowskibuild its dependencies.
614154b4d39SMateusz PiotrowskiInstead, the dependencies are downloaded via
615154b4d39SMateusz Piotrowski.Xr pkg 8 .
616154b4d39SMateusz Piotrowski.Bd -literal -offset 2n
617a3f02b1aSMateusz Piotrowski.Li # Ic make install-missing-packages
618154b4d39SMateusz Piotrowski.Li # Ic make install
619154b4d39SMateusz Piotrowski.Ed
620154b4d39SMateusz Piotrowski.Pp
621154b4d39SMateusz PiotrowskiIt is especially useful, when the dependencies are costly
622154b4d39SMateusz Piotrowskiin time and resources to build
623154b4d39SMateusz Piotrowski.Pq like Pa lang/rust .
624154b4d39SMateusz PiotrowskiThe drawback is that
625154b4d39SMateusz Piotrowski.Xr pkg 8
626154b4d39SMateusz Piotrowskioffers only packages built with the default set of
627154b4d39SMateusz Piotrowski.Va OPTIONS .
62896fdbc90SMateusz Piotrowski.It Sy Example 3\&: No Building a Non-Default Flavor of a Port
62996fdbc90SMateusz Piotrowski.Pp
63096fdbc90SMateusz PiotrowskiThe following command builds a non-default flavor of a port.
63196fdbc90SMateusz Piotrowski(In this case
63296fdbc90SMateusz Piotrowski.Pa devel/py-pip
63396fdbc90SMateusz Piotrowskiis going to be built with Python 3.7 support.)
63496fdbc90SMateusz Piotrowski.Bd -literal -offset 2n
63596fdbc90SMateusz Piotrowski.Li # Ic cd /usr/ports/devel/py-pip
63696fdbc90SMateusz Piotrowski.Li # Ic env FLAVOR=py37 make build
63796fdbc90SMateusz Piotrowski.Ed
638fcdfe016SMateusz Piotrowski.It Sy Example 4\&: No Setting Ports Options via Xr make.conf 5
639fcdfe016SMateusz Piotrowski.Pp
640fcdfe016SMateusz PiotrowskiThe following lines present various ways of configuring ports options via
641fcdfe016SMateusz Piotrowski.Xr make.conf 5
642fcdfe016SMateusz Piotrowski(as an alternative to, e.g., running
643fcdfe016SMateusz Piotrowski.Dq Li make config ) :
644fcdfe016SMateusz Piotrowski.Bd -literal -offset 2n
645fcdfe016SMateusz Piotrowski# Enable NLS for all ports unless configured otherwise
646fcdfe016SMateusz Piotrowski# using the options dialog.
647fcdfe016SMateusz PiotrowskiOPTIONS_SET=		NLS
648fcdfe016SMateusz Piotrowski# Disable DOCS for all ports overriding the options set
649fcdfe016SMateusz Piotrowski# via the options dialog.
650fcdfe016SMateusz PiotrowskiOPTIONS_UNSET_FORCE=	DOCS
651fcdfe016SMateusz Piotrowski# Disable DOCS and EXAMPLES for the shells/zsh port.
652fcdfe016SMateusz Piotrowskishells_zsh_UNSET=	DOCS EXAMPLES
653fcdfe016SMateusz Piotrowski.Ed
654fcdfe016SMateusz Piotrowski.Pp
655fcdfe016SMateusz PiotrowskiThese and other options-related variables are documented in
656fcdfe016SMateusz Piotrowski.Pa /usr/ports/Mk/bsd.options.mk .
657c0e41dffSMateusz Piotrowski.It Sy Example 5\&: No Setting Xr make 1 Variables for Specific Ports via Xr make.conf 5
658c0e41dffSMateusz Piotrowski.Pp
659c0e41dffSMateusz PiotrowskiThe following example shows how to set arbitrary
660c0e41dffSMateusz Piotrowski.Xr make 1
661c0e41dffSMateusz Piotrowskivariables only specific ports:
662c0e41dffSMateusz Piotrowski.Bd -literal -offset 2n
663c0e41dffSMateusz Piotrowski# Set DISABLE_MAKE_JOBS for the lang/rust port:
664c0e41dffSMateusz Piotrowski\&.if ${.CURDIR:M*/lang/rust}
665c0e41dffSMateusz PiotrowskiDISABLE_MAKE_JOBS=	yes
666c0e41dffSMateusz PiotrowskiTRYBROKEN=		yes
667c0e41dffSMateusz Piotrowski\&.endif
668c0e41dffSMateusz Piotrowski.Ed
669d25f7d32SMateusz Piotrowski.It Sy Example 6\&: No Debugging Ports
670d25f7d32SMateusz PiotrowskiBy default ports are built and packaged without debugging support (e.g.,
671d25f7d32SMateusz Piotrowskidebugging symbols are stripped from binaries, optimization flags are used for
672d25f7d32SMateusz Piotrowskicompiling, verbose logging is disabled).
673d25f7d32SMateusz PiotrowskiWhether ports are built with debugging symbols can be controlled by the
674d25f7d32SMateusz Piotrowskisettings in
675d25f7d32SMateusz Piotrowski.Xr make.conf 5 ,
676d25f7d32SMateusz Piotrowskie.g.,
677d25f7d32SMateusz Piotrowski.Bd -literal -offset 2n
678d25f7d32SMateusz Piotrowski# Enable debugging for all ports.
679d25f7d32SMateusz PiotrowskiWITH_DEBUG=		yes
680d25f7d32SMateusz Piotrowski# Enable debugging for selected ports.
681d25f7d32SMateusz PiotrowskiWITH_DEBUG_PORTS=	mail/dovecot security/krb5
682d25f7d32SMateusz Piotrowski.Ed
683d25f7d32SMateusz Piotrowski.Pp
684d25f7d32SMateusz PiotrowskiIt is also possible to use the debug variables on the command line:
685d25f7d32SMateusz Piotrowski.Bd -literal -offset 2n
686d25f7d32SMateusz Piotrowski.Li # Ic make -DWITH_DEBUG DEBUG_FLAGS="-g -O0" build
687d25f7d32SMateusz Piotrowski.Ed
688d25f7d32SMateusz Piotrowski.Pp
689d25f7d32SMateusz PiotrowskiSee the
690d25f7d32SMateusz Piotrowski.Sx MAKE VARIABLES
691d25f7d32SMateusz Piotrowskisection to learn more about the debug variables.
692d25f7d32SMateusz Piotrowski.Pp
693d25f7d32SMateusz PiotrowskiTo understand the details of what happens when the debug variables are set it
694d25f7d32SMateusz Piotrowskiis best to consult the files located at
695d25f7d32SMateusz Piotrowski.Pa ${PORTSDIR}/Mk/*
696d25f7d32SMateusz Piotrowski.Po Pa bsd.port.mk
697d25f7d32SMateusz Piotrowskiin particular
698d25f7d32SMateusz Piotrowski.Pc .
699d25f7d32SMateusz Piotrowski.Pp
700d25f7d32SMateusz PiotrowskiIf debugging is enabled for a specific port, the ports framework will:
701d25f7d32SMateusz Piotrowski.Bl -bullet
702d25f7d32SMateusz Piotrowski.It
703d25f7d32SMateusz PiotrowskiAdd
704d25f7d32SMateusz Piotrowski.Va DEBUG_FLAGS
705d25f7d32SMateusz Piotrowski(defaults to
706d25f7d32SMateusz Piotrowski.Ql -g )
707d25f7d32SMateusz Piotrowskito
708d25f7d32SMateusz Piotrowski.Va CFLAGS .
709d25f7d32SMateusz Piotrowski.It
710d25f7d32SMateusz PiotrowskiTry to prevent the binaries from being stripped (including checking the install
711d25f7d32SMateusz Piotrowskitarget to replace
712d25f7d32SMateusz Piotrowski.Ql install-strip
713d25f7d32SMateusz Piotrowskiwith
714d25f7d32SMateusz Piotrowski.Ql install ) .
715d25f7d32SMateusz PiotrowskiWhether a binary has been stripped can be checked with
716d25f7d32SMateusz Piotrowski.Xr file 1 .
717d25f7d32SMateusz Piotrowski.It
718d25f7d32SMateusz PiotrowskiTry to enable other debugging features like debug build type or verbose logging.
719d25f7d32SMateusz PiotrowskiHowever, this is port-specific and the ports framework might not be aware of
720d25f7d32SMateusz Piotrowskieach supported debugging feature a given piece of software has to offer).
721154b4d39SMateusz Piotrowski.El
7224000f72fSDavid E. O'Brien.Sh SEE ALSO
7234000f72fSDavid E. O'Brien.Xr make 1 ,
72459be36b0SBenjamin Kaduk.Xr make.conf 5 ,
725375409b4SEdward Tomasz Napierala.Xr development 7 ,
7268c725779SMateusz Piotrowski.Xr pkg 7
727def37e7cSMike Pritchard.Pp
7283d04377bSMateusz PiotrowskiAdditional developer documentation:
7293d04377bSMateusz Piotrowski.Bl -dash -width "" -offset indent
7303d04377bSMateusz Piotrowski.It
731ac8011f8SDavid E. O'Brien.Xr portlint 1
7323d04377bSMateusz Piotrowski.It
7333d04377bSMateusz Piotrowski.Pa /usr/ports/Mk/bsd.port.mk
7343d04377bSMateusz Piotrowski.El
73565dfa7aaSTim Vanderhoek.Pp
7363d04377bSMateusz PiotrowskiAdditional user documentation:
7373d04377bSMateusz Piotrowski.Bl -dash -width "" -offset indent
7383d04377bSMateusz Piotrowski.It
7393d04377bSMateusz Piotrowski.Xr pkg 8
7403d04377bSMateusz Piotrowski.It
7413d04377bSMateusz Piotrowski.Lk "https://www.FreeBSD.org/ports" "Searchable index of all ports"
7423d04377bSMateusz Piotrowski.El
7434000f72fSDavid E. O'Brien.Sh HISTORY
7440412d17cSRuslan ErmilovThe Ports Collection
7454000f72fSDavid E. O'Brienappeared in
7464000f72fSDavid E. O'Brien.Fx 1.0 .
7476b4c0736STim VanderhoekIt has since spread to
7486b4c0736STim Vanderhoek.Nx
7496b4c0736STim Vanderhoekand
7506b4c0736STim Vanderhoek.Ox .
7519cbda590SRuslan Ermilov.Sh AUTHORS
7529cbda590SRuslan Ermilov.An -nosplit
7539cbda590SRuslan ErmilovThis manual page was originated by
7549cbda590SRuslan Ermilov.An David O'Brien .
75565dfa7aaSTim Vanderhoek.Sh BUGS
7560412d17cSRuslan ErmilovPorts documentation is split over four places \(em
7572693c8b9STim Vanderhoek.Pa /usr/ports/Mk/bsd.port.mk ,
7580412d17cSRuslan Ermilov.%B "The Porter's Handbook" ,
75965dfa7aaSTim Vanderhoekthe
7600412d17cSRuslan Ermilov.Dq "Packages and Ports"
7615d3d0230SMurray Stokelychapter of
7620412d17cSRuslan Ermilov.%B "The FreeBSD Handbook" ,
7635d3d0230SMurray Stokelyand
764949f900dSSimon L. B. Nielsenthis manual page.
765