Merge from vendor branch CVS:
[dragonfly.git] / share / man / man5 / make.conf.5
1 .\" Copyright (c) 2000
2 .\"     Mike W. Meyer
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\"
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 .\" SUCH DAMAGE.
24 .\"
25 .\" $FreeBSD: src/share/man/man5/make.conf.5,v 1.12.2.30 2003/05/18 17:05:55 brueffer Exp $
26 .\" $DragonFly: src/share/man/man5/make.conf.5,v 1.9 2005/07/25 00:24:31 gshapiro Exp $
27 .\"
28 .Dd November 3, 2000
29 .Dt MAKE.CONF 5
30 .Os
31 .Sh NAME
32 .Nm make.conf
33 .Nd system build information
34 .Sh DESCRIPTION
35 The file
36 .Nm
37 contains settings that control the compilation of the
38 .Dx
39 sources
40 and ported applications.
41 The file
42 .Nm
43 is generally created by the system administrator when the values need
44 to be changed from their defaults.
45 .Pp
46 The purpose of
47 .Nm
48 is not to run commands or perform compilation actions
49 directly.
50 Instead, it is included by the
51 various makefiles in
52 .Pa /usr/src
53 and
54 .Pa /usr/ports
55 which conditionalize their
56 internal actions according to the settings found there.
57 .Pp
58 The
59 .Pa /etc/make.conf
60 file is included from the appropriate
61 .Pa Makefile
62 which specifies the default settings for all the available options.
63 Options need only be specified in
64 .Pa /etc/make.conf
65 when the system administrator wishes to override these defaults.
66 .Pp
67 The build procedures occur in four broad areas: the world, the kernel,
68 documentations and ports.
69 Variables set in
70 .Nm
71 may be applicable during builds in one, two, or all four of these
72 areas.
73 They may be specified for a particular build via the
74 .Fl D
75 option of
76 .Xr make 1 .
77 .Pp
78 The following lists provide a name and short description for each
79 variable you can use during the indicated builds.
80 The values of
81 variables flagged as
82 .Vt bool
83 are ignored; the variable being
84 set at all (even to
85 .Dq Li FALSE
86 or
87 .Dq Li NO )
88 causes it to
89 be treated as if it were set.
90 .Pp
91 The following list provides a name and short description for variables
92 that are used for all builds, or are used by the
93 .Pa makefiles
94 for things other than builds.
95 .Bl -tag -width Ar
96 .It Va CFLAGS
97 .Pq Vt str
98 Controls the compiler setting when compiling C code.
99 Optimization levels above
100 .Fl O
101 .Pq Fl O2 , No ...
102 are not supported.
103 .Va BDECFLAGS
104 is provided as a set of
105 .Xr gcc 1
106 settings suggested by
107 .An "Bruce Evans" Aq bde@FreeBSD.org
108 for developing and testing changes.
109 They can be used, if set, by:
110 .Pp
111 .Bd -literal -offset indent
112 CFLAGS+=${BDECFLAGS}
113 .Ed
114 .It Va CPUTYPE
115 .Pq Vt str
116 Controls which processor should be targeted for generated
117 code.  This controls processor-specific optimizations in
118 certain code (currently only OpenSSL) as well as modifying
119 the value of
120 .Va CFLAGS
121 and
122 .Va COPTFLAGS
123 to contain the appropriate optimization directive to
124 .Xr gcc 1 .
125 The automatic setting of
126 .Va CFLAGS
127 and
128 .Va COPTFLAGS
129 may be overridden using the
130 .Va NO_CPU_CFLAGS
131 and
132 .Va NO_CPU_COPTFLAGS
133 variables, respectively.  Refer to
134 .Pa /usr/share/examples/etc/defaults/make.conf
135 for a list of recognized
136 .Va CPUTYPE
137 options.
138 .It Va NO_CPU_CFLAGS
139 .Pq Vt str
140 Setting this variable will prevent CPU specific compiler flags
141 from being automatically added to
142 .Va CFLAGS
143 during compile time.
144 .It Va NO_CPU_COPTFLAGS
145 .Pq Vt str
146 Setting this variable will prevent CPU specific compiler flags
147 from being automatically added to
148 .Va COPTFLAGS
149 during compile time.
150 .It Va CVS_UPDATE
151 .Pq Vt bool
152 Set this to use
153 .Xr cvs 1
154 to update your ports with
155 .Dq Li "make update" .
156 .It Va CXXFLAGS
157 .Pq Vt str
158 Controls the compiler settings when compiling C++ code.
159 .Va CXXFLAGS
160 is initially set to the value of
161 .Va CFLAGS .
162 If you want to
163 add to the
164 .Va CXXFLAGS
165 value, use
166 .Dq Li +=
167 instead of
168 .Dq Li = .
169 .It Va INSTALL
170 .Pq Vt str
171 the default install command.
172 To have commands compared before doing
173 the install, use
174 .Bd -literal -offset indent
175 INSTALL="install -C"
176 .Ed
177 .It Va LOCAL_DIRS
178 .Pq Vt str
179 List any directories that should be entered when doing
180 make's in
181 .Pa /usr/src
182 in this variable.
183 .It Va MAKE_SHELL
184 .Pq Vt str
185 Controls the shell used internally by
186 .Xr make 1
187 to process the command scripts in makefiles.
188 .Xr sh 1 ,
189 .Xr ksh 1 ,
190 and
191 .Xr csh 1
192 all currently supported.
193 .Bd -literal -offset indent
194 MAKE_SHELL?=sh
195 .Ed
196 .It Va MTREE_FOLLOWS_SYMLINKS
197 .Pq Vt str
198 Set this to
199 .Dq Fl L
200 to cause
201 .Xr mtree 8
202 to follow symlinks.
203 .It Va NO_DOCUPDATE
204 .Pq Vt bool
205 Set this to not update the doc tree during
206 .Dq Li "make update" .
207 .It Va NO_PORTSUPDATE
208 .Pq Vt bool
209 Set this to not update the ports tree during
210 .Dq Li "make update" .
211 .It Va SUP_UPDATE
212 .Pq Vt bool
213 Set this to use
214 .Xr cvsup 1
215 to update your ports with
216 .Dq Li "make update" .
217 .It Va SUP
218 .Pq Vt str
219 The location of the
220 .Xr cvsup 1
221 command for
222 .Dq Li "make update" .
223 .It Va SUPFLAGS
224 .Pq Vt str
225 The flag for the
226 .Xr sup 1
227 command when doing
228 .Dq Li "make update" .
229 This defaults to
230 .Op Fl g L Ar 2 .
231 .It Va SUPHOST
232 .Pq Vt str
233 The hostname of the sup server to use when doing
234 .Dq Li "make update" .
235 .It Va SUPFILE
236 .Pq Vt str
237 The first
238 .Ar supfile
239 to use when doing a
240 .Dq Li "make update" .
241 This defaults to
242 .Pa /usr/share/examples/cvsup/standard\-supfile .
243 .It Va SUPFILE1
244 .Pq Vt str
245 The second
246 .Ar supfile
247 to use when doing a
248 .Dq Li "make update" .
249 This defaults to
250 .Pa /usr/share/examples/cvsup/secure\-supfile .
251 .It Va SUPFILE2
252 .Pq Vt str
253 The third
254 .Ar supfile
255 to use when doing a
256 .Dq Li "make update" .
257 This defaults to
258 .Pa /usr/share/examples/cvsup/secure\-supfile .
259 .It Va PORTSSUPFILE
260 .Pq Vt str
261 The ports
262 .Ar supfile
263 to use when doing a
264 .Dq Li "make update" .
265 This defaults to
266 .Pa /usr/share/examples/cvsup/ports\-supfile .
267 .It Va DOCSUPFILE
268 .Pq Vt str
269 The documentation
270 .Ar supfile
271 to use when doing a
272 .Dq Li "make update" .
273 This defaults to
274 .Pa /usr/share/examples/cvsup/doc\-supfile .
275 .It Va WARNS_WERROR
276 Causes -Werror to be added to
277 .Va CFLAGS
278 when WARNS is in effect.
279 .El
280 .Pp
281 The following list provides a name and short description for variables
282 that are only used doing a kernel build:
283 .Bl -tag -width Ar
284 .It Va BOOT_COMCONSOLE_PORT
285 .Pq Vt str
286 The port address to use for the console if the boot blocks have
287 been configured to use a serial console instead of the keyboard/video card.
288 .It Va BOOT_COMCONSOLE_SPEED
289 .Pq Vt int
290 The baud rate to use for the console if the boot blocks have
291 been configured to use a serial console instead of the keyboard/video card.
292 .It Va BOOTWAIT
293 .Pq Vt int
294 Controls the amount of time the kernel waits for a console keypress
295 before booting the default kernel.
296 The value is approximately milliseconds.
297 Keypresses are accepted by the BIOS before booting from disk,
298 making it possible to give custom boot parameters even when this is
299 set to 0.
300 .It Va COPTFLAGS
301 .Pq Vt str
302 Controls the compiler settings when building the
303 kernel.
304 Optimization levels above
305 .Oo Fl O ( O2 , No ...\& ) Oc
306 are not guaranteed to work.
307 .It Va KERNCONF
308 .Pq Vt str
309 Controls which kernel configurations will be
310 built by
311 .Dq Li "${MAKE} buildkernel"
312 and installed by
313 .Dq Li "${MAKE} installkernel" .
314 For example,
315 .Bd -literal -offset indent
316 KERNCONF=MINE DEBUG GENERIC OTHERMACHINE
317 .Ed
318 .Pp
319 will build the kernels specified by the config files
320 .Pa MINE , DEBUG , GENERIC ,
321 and
322 .Pa OTHERMACHINE ,
323 and install the kernel specified by the config file
324 .Pa MINE .
325 It defaults to
326 .Pa GENERIC .
327 .It Va LOADER_TFTP_SUPPORT
328 .Pq Vt bool
329 While not a buildkernel-affected option, there is no better place for this.
330 By default the
331 .Xr pxeboot 8
332 loader retrieves the kernel via NFS.
333 Defining this and recompiling
334 .Pa /usr/src/sys/boot
335 will cause it to retrieve the kernel via TFTP.
336 This allows pxeboot to load a custom BOOTP diskless kernel yet
337 still mount the server's
338 .Pa /
339 rather than load the server's kernel.
340 .It Va MODULES_OVERRIDE
341 .Pq Vt str
342 Set to a list of modules to build instead of all of them.
343 .It Va NO_KERNELCONFIG
344 .Pq Vt bool
345 Set this to skip running
346 .Xr config 8
347 during
348 .Dq Li "${MAKE} buildkernel" .
349 .It Va NO_KERNELDEPEND
350 .Pq Vt bool
351 Set this to skip running
352 .Dq Li "${MAKE} depend"
353 during
354 .Dq Li "${MAKE} buildkernel" .
355 .It Va NO_MODULES
356 .Pq Vt bool
357 Set to not build modules with the kernel.
358 .El
359 .Pp
360 The following list provides a name and short description for variables
361 that are used during the world build:
362 .Bl -tag -width Ar
363 .It Va COMPAT1X
364 .Pq Vt bool
365 Set to install the
366 .Fx
367 1 compatibility libraries.
368 .It Va COMPAT20
369 .Pq Vt bool
370 Set to install the
371 .Fx 2.0
372 compatibility libraries.
373 .It Va COMPAT21
374 .Pq Vt bool
375 Set to install the
376 .Fx 2.1
377 compatibility libraries.
378 .It Va COMPAT22
379 .Pq Vt bool
380 Set to install the
381 .Fx 2.2
382 compatibility libraries.
383 .It Va COMPAT3X
384 .Pq Vt bool
385 Set to install the
386 .Fx
387 3
388 compatibility libraries.
389 .It Va COMPAT4X
390 .Pq Vt bool
391 Set to install the
392 .Fx
393 4
394 compatibility libraries.
395 .It Va ENABLE_SUIDPERL
396 .Pq Vt bool
397 Set to enable the installation of an suid
398 .Xr perl 1
399 binary.
400 .It Va FETCH_CMD
401 .Pq Vt str
402 Command to use to fetch files.
403 Normally
404 .Xr fetch 1 .
405 .It Va KRB5_HOME
406 .Pq Vt str
407 If you want to install the MIT Kerberos5 port somewhere other than
408 .Pa /usr/local ,
409 define this.  This is also used to tell ssh1 that kerberos is needed.
410 .It Va MAKE_IDEA
411 .Pq Vt bool
412 Set to build the IDEA encryption code.
413 This code is patented in the USA and many European countries.
414 It is
415 .Em "YOUR RESPONSIBILITY"
416 to determine if you can legally use IDEA.
417 .It Va MAKE_KERBEROS5
418 .Pq Vt bool
419 Set this to build Kerberos5 (KTH Heimdal).
420 .Em WARNING !
421 This is still experimental code.
422 If you need stable Kerberos5, use the
423 port(s).
424 .It Va ENABLE_SUID_K5SU
425 .Pq Vt bool
426 Set this if you wish to use the k5su utility.  Otherwise, it will be
427 installed without the set-user-ID bit set.
428 .It Va ENABLE_SUID_SSH
429 .Pq Vt bool
430 Set this to install
431 .Xr ssh 1
432 with the setuid bit turned on.
433 .It Va MODULES_WITH_WORLD
434 .Pq Vt bool
435 Set to build modules with the system instead of the kernel.
436 .It Va NO_CVS
437 .Pq Vt bool
438 Set to not build CVS.
439 .It Va NO_BIND
440 .Pq Vt bool
441 Set to not build BIND.
442 .It Va NO_FORTRAN
443 .Pq Vt bool
444 Set to not build
445 .Xr g77 1
446 and related libraries.
447 .It Va NO_GDB
448 .Pq Vt bool
449 Set to not build
450 .Xr gdb 1
451 .It Va NO_I4B
452 .Pq Vt bool
453 Set to not build isdn4bsd package.
454 .It Va NO_IPFILTER
455 .Pq Vt bool
456 Set to not build IP Filter package.
457 .It Va NO_LPR
458 .Pq Vt bool
459 Set to not build
460 .Xr lpr 1
461 and related programs.
462 .It Va NO_MAILWRAPPER
463 .Pq Vt bool
464 Set to not build the
465 .Xr mailwrapper 8
466 MTA selector.
467 .It Va NOMAN
468 .Pq Vt bool
469 Set to not build manual pages
470 .It Va NO_MAKEDEV
471 .Pq Vt bool
472 Set to avoid running
473 .Dq Li "MAKEDEV all"
474 on
475 .Pa /dev
476 during install.
477 .It Va NO_OBJC
478 .Pq Vt bool
479 Set to not build Objective C support.
480 .It Va NO_OPENSSH
481 .Pq Vt bool
482 Set to not build OpenSSH.
483 .It Va NO_OPENSSL
484 .Pq Vt bool
485 Set to not build OpenSSL (implies
486 .Va NO_OPENSSH ) .
487 .It Va NO_SENDMAIL
488 .Pq Vt bool
489 Set to not build
490 .Xr sendmail 8
491 and related programs.
492 .It Va NO_SHAREDOCS
493 .Pq Vt bool
494 Set to not build the
495 .Bx 4.4
496 legacy docs.
497 .It Va NO_X
498 .Pq Vt bool
499 Set to not compile in X\-Windows support (e.g.\&
500 .Xr doscmd 1 ) .
501 .It Va NOCLEAN
502 .Pq Vt bool
503 Set this to disable cleaning during
504 .Dq Li "make buildworld" .
505 This should not be set unless you know what you are doing.
506 .It Va NOCLEANDIR
507 .Pq Vt bool
508 Set this to run
509 .Dq Li "${MAKE} clean"
510 instead of
511 .Dq Li "${MAKE} cleandir" .
512 .It Va NOCRYPT
513 .Pq Vt bool
514 Set to not build any crypto code.
515 .It Va NOGAMES
516 .Pq Vt bool
517 Set to not build games.
518 .It Va NOINFO
519 .Pq Vt bool
520 Set to not make or install
521 .Xr info 5
522 files.
523 .It Va NOLIBC_R
524 .Pq Vt bool
525 Set to not build
526 .Nm libc_r
527 (reentrant version of
528 .Nm libc ) .
529 .It Va NOMANCOMPRESS
530 .Pq Vt bool
531 Set to install man pages uncompressed.
532 .It Va NOPERL
533 .Pq Vt bool
534 Set to avoid building
535 .Xr perl 1 .
536 .It Va NOPROFILE
537 .Pq Vt bool
538 Set to avoid compiling profiled libraries.
539 .It Va NOSHARE
540 .Pq Vt bool
541 Set to not build in the
542 .Pa share
543 subdir.
544 .It Va PERL_THREADED
545 .Pq Vt bool
546 Set to enable the building and installation of
547 .Xr perl 1
548 with thread
549 support.
550 .It Va PPP_NOSUID
551 .Pq Vt bool
552 Set to disable the installation of
553 .Xr ppp 8
554 as an suid root program.
555 .It Va SENDMAIL_MC
556 .Pq Vt str
557 The default
558 .Xr m4 1
559 configuration file to use at install time.
560 The value should include the full path to the
561 .Pa .mc
562 file, e.g.,
563 .Pa /etc/mail/myconfig.mc .
564 Use with caution as a make install will overwrite any existing
565 .Pa /etc/mail/sendmail.cf .
566 Note that
567 .Va SENDMAIL_CF
568 is now deprecated.
569 .It Va SENDMAIL_SUBMIT_MC
570 .Pq Vt str
571 The default
572 .Xr m4 1
573 configuration file for mail submission
574 to use at install time.
575 The value should include the full path to the
576 .Pa .mc
577 file, e.g.,
578 .Pa /etc/mail/mysubmit.mc .
579 Use with caution as a make install will overwrite any existing
580 .Pa /etc/mail/submit.cf .
581 .It Va SENDMAIL_ADDITIONAL_MC
582 .Pq Vt str
583 Additional
584 .Pa .mc
585 files which should be built into
586 .Pa .cf
587 files at build time.
588 The value should include the full path to the
589 .Pa .mc
590 file(s), e.g.,
591 .Pa /etc/mail/foo.mc
592 .Pa /etc/mail/bar.mc .
593 .It Va SENDMAIL_CF_DIR
594 .Pq Vt str
595 Override the default location for the
596 .Xr m4 1
597 configuration files used to build a
598 .Pa .cf
599 file from a
600 .Pa .mc
601 file.
602 .It Va SENDMAIL_M4_FLAGS
603 .Pq Vt str
604 Flags passed to
605 .Xr m4 1
606 when building a
607 .Pa .cf
608 file from a
609 .Pa .mc
610 file.
611 .It Va SENDMAIL_CFLAGS
612 .Pq Vt str
613 Flags to pass to the compile command when building
614 .Xr sendmail 8 .
615 The
616 .Va SENDMAIL_*
617 flags can be used to provide SASL support with setting such as:
618 .Bd -literal -offset indent
619 SENDMAIL_CFLAGS=-I/usr/local/include -DSASL
620 SENDMAIL_LDFLAGS=-L/usr/local/lib
621 SENDMAIL_LDADD=-lsasl
622 .Ed
623 .It Va SENDMAIL_LDFLAGS
624 .Pq Vt str
625 Flags to pass to the
626 .Xr ld 1
627 command when building
628 .Xr sendmail 8 .
629 .It Va SENDMAIL_LDADD
630 .Pq Vt str
631 Flags to add to the end of the
632 .Xr ld 1
633 command when building
634 .Xr sendmail 8 .
635 .It Va SENDMAIL_DPADD
636 .Pq Vt str
637 Extra dependencies to add when building
638 .Xr sendmail 8 .
639 .It Va SENDMAIL_SET_USER_ID
640 .Pq Vt bool
641 If set, install
642 .Xr sendmail 8
643 as a set-user-ID root binary instead of a set-group-ID binary
644 and do not install
645 .Pa /etc/mail/submit.{cf,mc} .
646 Use of this flag is not recommended and the alternative advice in
647 .Pa /etc/mail/README
648 should be followed instead if at all possible.
649 .It Va SENDMAIL_MAP_PERMS
650 .Pq Vt str
651 Mode to use when generating alias and map database files using
652 .Pa /etc/mail/Makefile .
653 The default value is 0640.
654 .It Va TOP_TABLE_SIZE
655 .Pq Vt int
656 .Xr top 1
657 uses a hash table for the user names.  The size of this hash can be tuned
658 to match the number of local users.  The table size should be a prime number
659 approximately twice as large as the number of lines in
660 .Pa /etc/passwd .
661 The default number is 20011.
662 .El
663 .Pp
664 The following list provides a name and short description for variables
665 that are used when building documentation.
666 .Bl -tag -width Ar
667 .It Va DISTDIR
668 .Pq Vt str
669 Where distfiles are kept.
670 Normally, this is
671 .Pa distfiles
672 in
673 .Va PORTSDIR .
674 .It Va DOC_LANG
675 .Pq Vt str
676 The list of languages and encodings to build and install.
677 .It Va PRINTERDEVICE
678 .Pq Vt str
679 The default format for system documentation, depends on your
680 printer.
681 This can be set to
682 .Dq Li ascii
683 for simple printers or
684 .Dq Li ps
685 for postscript or graphics printers with a ghostscript
686 filter.
687 .El
688 .Pp
689 The following list provides a name and short description for variables
690 that are used when building ports:
691 .Bl -tag -width Ar
692 .It Va FORCE_PKG_REGISTER
693 .Pq Vt bool
694 Set this to override any existing package registration.
695 .It Va HAVE_MOTIF
696 .Pq Vt bool
697 Set this if you have Motif on your system.
698 .It Va KRB5_HOME
699 .Pq Vt str
700 Set this if you want to install the MIT Kerberos5 port somewhere
701 other than
702 .Pa /usr/local .
703 .It Va LOCALBASE
704 .Pq Vt str
705 Set this to the base directory that non\-X ports should be
706 installed in.
707 It provides the default for
708 .Va PREFIX
709 when building in
710 .Pa /usr/ports .
711 .It Va MASTER_SITE_AFTERSTEP
712 .Pq Vt str
713 Set this to change the master site for AfterStep ports.
714 The last
715 part of the path must be
716 .Dq Li /%SUBDIR%/ .
717 .It Va MASTER_SITE_BACKUP
718 .Pq Vt str
719 Controls the site location that ports check for distfiles if the
720 locations listed in their
721 .Pa Makefile
722 do not work.
723 The last part of the path must be
724 .Dq Li /${DIST_SUBDIR}/ .
725 .It Va MASTER_SITE_COMP_SOURCES
726 .Pq Vt str
727 Controls the master site location for
728 .Pa comp.sources
729 ports.
730 The
731 last part of the path must be
732 .Dq Li %SUBDIR%/
733 .It Va MASTER_SITE_GNOME
734 .Pq Vt str
735 Controls the master site location for GNOME ports.
736 The
737 last part of the path must be
738 .Dq Li /%SUBDIR%/
739 .It Va MASTER_SITE_GNU
740 .Pq Vt str
741 Controls the master site location for GNU ports.
742 The
743 last part of the path must be
744 .Dq Li /%SUBDIR%/
745 .It Va MASTER_SITE_KDE
746 .Pq Vt str
747 Controls the master site location for KDE ports.
748 The
749 last part of the path must be
750 .Dq Li /%SUBDIR%/
751 .It Va MASTER_SITE_FREEBSD
752 .Pq Vt bool
753 If set, go to the master
754 .Fx
755 site for all files.
756 .It Va MASTER_SITE_MOZILLA
757 .Pq Vt str
758 Controls the master site location for Mozilla ports.
759 The
760 last part of the path must be
761 .Dq Li /%SUBDIR%/
762 .It Va MASTER_SITE_OVERRIDE
763 .Pq Vt str
764 If set, this site is checked before the sites listed in the ports
765 .Pa Makefile .
766 You can have it check the backup site first by like so:
767 .Bd -literal -offset indent
768 MASTER_SITE_OVERRIDE?=  ${MASTER_SITE_BACKUP}
769 .Ed
770 .It Va MASTER_SITE_PERL_CPAN
771 .Pq Vt str
772 Controls the master site location for Perl ports.
773 The
774 last part of the path must be
775 .Bd -literal -offset indent
776 /%SUBDIR%/
777 .Ed
778 .It Va MASTER_SORT_REGEX
779 .Pq Vt str
780 Set this to control the sort order for mirror sets.
781 To set it to
782 prefer mirrors in the
783 .Pa .jp
784 domain, use:
785 .Bd -literal -offset indent
786 MASTER_SORT_REGEX?=     ^file: ^ftp://ftp\.FreeBSD\.org/pub/FreeBSD/ports/local-distfiles/ ://[^/]*\.jp/ ://[^/]*\.jp\.
787 .Ed
788 .Pp
789 Users of other ccTLD domains should change the
790 .Dq Li jp
791 to the
792 appropriate domain.
793 .It Va MASTER_SITE_RINGSERVER
794 .Pq Vt str
795 Controls the master site location for Ringserver ports.
796 The last
797 part of the path must be
798 .Dq Li /%SUBDIR%/ .
799 .It Va MASTER_SITE_RUBY
800 .Pq Vt str
801 Controls the master site location for Ruby ports.
802 The last
803 part of the path must be
804 .Dq Li /%SUBDIR%/ .
805 .It Va MASTER_SITE_SUNSITE
806 .Pq Vt str
807 Controls the master site location for Sunsite ports.
808 The last
809 part of the path must be
810 .Dq Li /%SUBDIR%/ .
811 .It Va MASTER_SITE_TCLTK
812 .Pq Vt str
813 Controls the master site location for Tcl and Tk ports.
814 The last
815 part of the path must be
816 .Dq Li /%SUBDIR%/ .
817 .It Va MASTER_SITE_TEX_CTAN
818 .Pq Vt str
819 Controls the master site location for TeX ports.
820 The last
821 part of the path must be
822 .Dq Li /%SUBDIR%/ .
823 .It Va MASTER_SITE_WINDOWMAKER
824 .Pq Vt str
825 Controls the master site location for WindowMaker ports.
826 The last
827 part of the path must be
828 .Dq Li /%SUBDIR%/ .
829 .It Va MASTER_SITE_XCONTRIB
830 .Pq Vt str
831 Controls the master site location for contributed X ports.
832 The last
833 part of the path must be
834 .Dq Li /%SUBDIR%/ .
835 .It Va MASTER_SITE_XEMACS
836 .Pq Vt str
837 Controls the master site location for Xemacs ports.
838 The last
839 part of the path must be
840 .Dq Li /%SUBDIR%/ .
841 .It Va MASTER_SITE_XFREE
842 .Pq Vt str
843 Controls the master site location for XFree ports.
844 The last
845 part of the path must be
846 .Dq Li /%SUBDIR%/ .
847 .It Va MOTIFLIB
848 .Pq Vt str
849 Location of
850 .Pa libXm.a
851 and
852 .Pa libXm.so .
853 .It Va MOTIF_STATIC
854 .Pq Vt bool
855 Set this if you want ports that use Motif to be built so they
856 can be run on systems without the Motif shared libraries.
857 .It Va NOCLEANDEPENDS
858 .Pq Vt bool
859 Set this to prevent
860 .Dq Li "make clean"
861 from cleaning the ports that the one being cleaned depends on.
862 .It Va NOPORTDOCS
863 .Pq Vt bool
864 Set this to disable installing additional documentation with ports.
865 .It Va PACKAGES
866 .Pq Vt str
867 Used only for the package target; the directory for the package tree.
868 .It Va PATCH_SITES
869 .Pq Vt str
870 Primary location(s) for the distribution of patch files.
871 .It Va PORTSDIR
872 .Pq Vt str
873 The location of the ports tree.
874 .It Va USA_RESIDENT
875 .Pq Vt bool
876 Set this if you are a resident of the USA so that ports that
877 need to can attempt to comply with U.S. export regulations.
878 .It Va WITHOUT_X11
879 .Pq Vt bool
880 Set this so that ports that can be built with or without X11
881 support will build without X11 support by default.
882 .It Va WRKDIRPREFIX
883 .Pq Vt str
884 Where to create temporary files used when building ports.
885 .It Va X11BASE
886 .Pq Vt str
887 Should be set to where the X11 distribution has been
888 installed if it is installed anywhere other than
889 .Pa /usr/X11R6 .
890 .El
891 .Sh FILES
892 .Bl -tag -width /etc/defaults/make.conf -compact
893 .It Pa /etc/defaults/make.conf
894 .It Pa /etc/make.conf
895 .It Pa /usr/src/Makefile
896 .It Pa /usr/src/Makefile.inc1
897 .It Pa /usr/ports/Mk/bsd.port.mk
898 .It Pa /usr/ports/Mk/bsd.sites.mk
899 .El
900 .Sh SEE ALSO
901 .Xr gcc 1 ,
902 .Xr install 1 ,
903 .Xr make 1 ,
904 .Xr ports 7 ,
905 .Xr lpd 8 ,
906 .Xr sendmail 8
907 .Sh HISTORY
908 The
909 .Nm
910 file appeared sometime before
911 .Fx 4.0 .
912 .Sh AUTHORS
913 This
914 manual page was written by
915 .An Mike W. Meyer Aq mwm@mired.org .
916 .Sh BUGS
917 This manual page may occasionally be out of date with respect to
918 the options currently available for use in
919 .Nm .
920 Please check the
921 .Pa /etc/defaults/make.conf
922 file for the latest options which are available.