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$ 26.\" 27.Dd February 14, 2006 28.Dt MAKE.CONF 5 29.Os 30.Sh NAME 31.Nm make.conf 32.Nd system build information 33.Sh DESCRIPTION 34The file 35.Nm 36contains system-wide settings that will apply to every build using 37.Xr make 1 38and the standard 39.Pa sys.mk 40file. 41This is achieved as follows: 42.Xr make 1 43processes the system makefile 44.Pa sys.mk 45before any other file by default, and 46.Pa sys.mk 47includes 48.Nm . 49.Pp 50The file 51.Nm 52uses the standard makefile syntax. 53However, 54.Nm 55should not specify any dependencies to 56.Xr make 1 . 57Instead, 58.Nm 59is to set 60.Xr make 1 61variables that control the actions of other makefiles. 62.Pp 63The default location of 64.Nm 65is 66.Pa /etc/make.conf , 67though an alternative location can be specified in the 68.Xr make 1 69variable 70.Va __MAKE_CONF . 71You may need to override the location of 72.Nm 73if the system-wide settings are not suitable for a particular build. 74For instance, setting 75.Va __MAKE_CONF 76to 77.Pa /dev/null 78effectively resets all build controls to their defaults. 79.Pp 80The primary purpose of 81.Nm 82is to control the compilation of the 83.Fx 84sources, documentation, and ported applications, 85which are usually found in 86.Pa /usr/src , 87.Pa /usr/doc , 88and 89.Pa /usr/ports . 90As a rule, the system administrator creates 91.Nm 92when the values of certain control variables need to be changed 93from their defaults. 94.Pp 95The system build procedures occur in four broad areas: 96the world, the kernel, documentation and ports. 97Variables set in 98.Nm 99may be applicable in one, two, or all four of these areas. 100In addition, control variables can be specified 101for a particular build via the 102.Fl D 103option of 104.Xr make 1 105or in 106.Xr environ 7 . 107.Pp 108The following lists provide a name and short description for each 109variable you can use during the indicated builds. 110The values of 111variables flagged as 112.Vt bool 113are ignored; the variable being 114set at all (even to 115.Dq Li FALSE 116or 117.Dq Li NO ) 118causes it to 119be treated as if it were set. 120.Pp 121The following list provides a name and short description for variables 122that are used for all builds, or are used by the 123.Pa makefiles 124for things other than builds. 125.Bl -tag -width Ar 126.It Va ALWAYS_CHECK_MAKE 127.Pq Vt bool 128Instructs the top-level makefile in the source tree (normally 129.Pa /usr/src ) 130to always check if 131.Xr make 1 132is up-to-date. 133Normally this is only done for the world and buildworld targets to handle 134upgrades from older versions of 135.Fx . 136.It Va CFLAGS 137.Pq Vt str 138Controls the compiler setting when compiling C code. 139Optimization levels other than 140.Fl O 141and 142.Fl O2 143are not supported. 144.Va BDECFLAGS 145is provided as a set of 146.Xr gcc 1 147settings suggested by 148.An "Bruce Evans" Aq bde@FreeBSD.org 149for developing and testing changes. 150They can be used, if set, by: 151.Pp 152.Bd -literal -offset indent 153CFLAGS+=${BDECFLAGS} 154.Ed 155.It Va CPUTYPE 156.Pq Vt str 157Controls which processor should be targeted for generated 158code. 159This controls processor-specific optimizations in 160certain code (currently only OpenSSL) as well as modifying 161the value of 162.Va CFLAGS 163and 164.Va COPTFLAGS 165to contain the appropriate optimization directive to 166.Xr gcc 1 . 167The automatic setting of 168.Va CFLAGS 169and 170.Va COPTFLAGS 171may be overridden using the 172.Va NO_CPU_CFLAGS 173and 174.Va NO_CPU_COPTFLAGS 175variables, respectively. 176Refer to 177.Pa /usr/share/examples/etc/make.conf 178for a list of recognized 179.Va CPUTYPE 180options. 181.It Va CVS_UPDATE 182.Pq Vt bool 183Set this to use 184.Xr cvs 1 185to update your ports with 186.Dq Li "make update" . 187.It Va CXXFLAGS 188.Pq Vt str 189Controls the compiler settings when compiling C++ code. 190.Va CXXFLAGS 191is initially set to the value of 192.Va CFLAGS . 193If you want to 194add to the 195.Va CXXFLAGS 196value, use 197.Dq Li += 198instead of 199.Dq Li = . 200.It Va DOCSUPFILE 201.Pq Vt str 202The documentation 203.Ar supfile 204to use when doing a 205.Dq Li "make update" . 206This defaults to 207.Pa /usr/share/examples/cvsup/doc\-supfile . 208.It Va INSTALL 209.Pq Vt str 210the default install command. 211To install only files for which the target differs or does not exist, use 212.Bd -literal -offset indent 213INSTALL="install -C" 214.Ed 215Note that some makefiles (including those in 216.Pa /usr/share/mk ) 217may hardcode options for the supplied install command. 218.It Va LOCAL_DIRS 219.Pq Vt str 220List any directories that should be entered when doing 221make's in 222.Pa /usr/src 223in this variable. 224.It Va MAKE_SHELL 225.Pq Vt str 226Controls the shell used internally by 227.Xr make 1 228to process the command scripts in makefiles. 229.Xr sh 1 , 230.Xr ksh 1 , 231and 232.Xr csh 1 233all currently supported. 234.Pp 235.Dl "MAKE_SHELL?=sh" 236.It Va MTREE_FOLLOWS_SYMLINKS 237.Pq Vt str 238Set this to 239.Dq Fl L 240to cause 241.Xr mtree 8 242to follow symlinks. 243.It Va NO_CPU_CFLAGS 244.Pq Vt str 245Setting this variable will prevent CPU specific compiler flags 246from being automatically added to 247.Va CFLAGS 248during compile time. 249.It Va NO_CPU_COPTFLAGS 250.Pq Vt str 251Setting this variable will prevent CPU specific compiler flags 252from being automatically added to 253.Va COPTFLAGS 254during compile time. 255.It Va NO_DOCUPDATE 256.Pq Vt bool 257Set this to not update the doc tree during 258.Dq Li "make update" . 259.It Va NO_PORTSUPDATE 260.Pq Vt bool 261Set this to not update the ports tree during 262.Dq Li "make update" . 263.It Va PORTSSUPFILE 264.Pq Vt str 265The ports 266.Ar supfile 267to use when doing a 268.Dq Li "make update" . 269This defaults to 270.Pa /usr/share/examples/cvsup/ports\-supfile . 271.It Va SUP 272.Pq Vt str 273The location of the 274.Xr cvsup 1 275command for 276.Dq Li "make update" . 277.It Va SUPFILE 278.Pq Vt str 279The first 280.Ar supfile 281to use when doing a 282.Dq Li "make update" . 283This defaults to 284.Pa /usr/share/examples/cvsup/standard\-supfile . 285.It Va SUPFILE1 286.Pq Vt str 287The second 288.Ar supfile 289to use when doing a 290.Dq Li "make update" . 291This defaults to 292.Pa /usr/share/examples/cvsup/secure\-supfile . 293.It Va SUPFILE2 294.Pq Vt str 295The third 296.Ar supfile 297to use when doing a 298.Dq Li "make update" . 299This defaults to 300.Pa /usr/share/examples/cvsup/secure\-supfile . 301.It Va SUPFLAGS 302.Pq Vt str 303The flag for the 304.Xr sup 1 305command when doing 306.Dq Li "make update" . 307This defaults to 308.Op Fl g L Ar 2 . 309.It Va SUPHOST 310.Pq Vt str 311The hostname of the sup server to use when doing 312.Dq Li "make update" . 313.It Va SUP_UPDATE 314.Pq Vt bool 315Set this to use 316.Xr cvsup 1 317to update your ports with 318.Dq Li "make update" . 319.El 320.Ss "BUILDING THE KERNEL" 321.Pp 322The following list provides a name and short description for variables 323that are only used doing a kernel build: 324.Bl -tag -width Ar 325.It Va BOOTWAIT 326.Pq Vt int 327Controls the amount of time the kernel waits for a console keypress 328before booting the default kernel. 329The value is approximately milliseconds. 330Keypresses are accepted by the BIOS before booting from disk, 331making it possible to give custom boot parameters even when this is 332set to 0. 333.It Va BOOT_COMCONSOLE_PORT 334.Pq Vt str 335The port address to use for the console if the boot blocks have 336been configured to use a serial console instead of the keyboard/video card. 337.It Va BOOT_COMCONSOLE_SPEED 338.Pq Vt int 339The baud rate to use for the console if the boot blocks have 340been configured to use a serial console instead of the keyboard/video card. 341.It Va COPTFLAGS 342.Pq Vt str 343Controls the compiler settings when building the 344kernel. 345Optimization levels above 346.Oo Fl O ( O2 , No ...\& ) Oc 347are not guaranteed to work. 348.It Va KERNCONF 349.Pq Vt str 350Controls which kernel configurations will be 351built by 352.Dq Li "${MAKE} buildkernel" 353and installed by 354.Dq Li "${MAKE} installkernel" . 355For example, 356.Bd -literal -offset indent 357KERNCONF=MINE DEBUG GENERIC OTHERMACHINE 358.Ed 359.Pp 360will build the kernels specified by the config files 361.Pa MINE , DEBUG , GENERIC , 362and 363.Pa OTHERMACHINE , 364and install the kernel specified by the config file 365.Pa MINE . 366It defaults to 367.Pa GENERIC . 368.It Va LOADER_TFTP_SUPPORT 369.Pq Vt bool 370While not a buildkernel-affected option, there is no better place for this. 371By default the 372.Xr pxeboot 8 373loader retrieves the kernel via NFS. 374Defining this and recompiling 375.Pa /usr/src/sys/boot 376will cause it to retrieve the kernel via TFTP. 377This allows 378.Xr pxeboot 8 379to load a custom BOOTP diskless kernel yet 380still mount the server's 381.Pa / 382rather than load the server's kernel. 383.It Va MODULES_OVERRIDE 384.Pq Vt str 385Set to a list of modules to build instead of all of them. 386.It Va NO_KERNELCONFIG 387.Pq Vt bool 388Set this to skip running 389.Xr config 8 390during 391.Dq Li "${MAKE} buildkernel" . 392.It Va NO_KERNELDEPEND 393.Pq Vt bool 394Set this to skip running 395.Dq Li "${MAKE} depend" 396during 397.Dq Li "${MAKE} buildkernel" . 398.It Va NO_MODULES 399.Pq Vt bool 400Set to not build modules with the kernel. 401.It Va PORTS_MODULES 402Set this to the list of ports you wish to rebuild every time the kernel 403is built. 404.It Va WITHOUT_MODULES 405.Pq Vt str 406Set to a list of modules to exclude from the build. 407This provides a 408somewhat easier way to exclude modules you are certain you will never 409need than specifying 410.Va MODULES_OVERRIDE . 411This is applied 412.Em after 413.Va MODULES_OVERRIDE . 414.El 415.Ss "BUILDING THE WORLD" 416.Pp 417The following list provides a name and short description for variables 418that are used during the world build: 419.Bl -tag -width Ar 420.It Va ENABLE_SUID_K5SU 421.Pq Vt bool 422Set this if you wish to use the ksu utility. 423Otherwise, it will be 424installed without the set-user-ID bit set. 425.It Va ENABLE_SUID_NEWGRP 426.Pq Vt bool 427Set this to install 428.Xr newgrp 1 429with the set-user-ID bit set. 430Otherwise, 431.Xr newgrp 1 432will not be able to change users' groups. 433.It Va ENABLE_SUID_SSH 434.Pq Vt bool 435Set this to install 436.Xr ssh 1 437with the set-user-ID bit turned on. 438.It Va NO_WPA_SUPPLICANT_EAPOL 439.Pq Vt bool 440Build 441.Xr wpa_supplicant 8 442without support for the IEEE 802.1X protocol and without 443support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS 444protocols (usable only via 802.1X). 445.It Va MAKE_IDEA 446.Pq Vt bool 447Set to build the IDEA encryption code. 448This code is patented in the USA and many European countries. 449It is 450.Em "YOUR RESPONSIBILITY" 451to determine if you can legally use IDEA. 452.It Va MODULES_WITH_WORLD 453.Pq Vt bool 454Set to build modules with the system instead of the kernel. 455.It Va NO_ACPI 456.Pq Vt bool 457Set to not build 458.Xr acpiconf 8 , 459.Xr acpidump 8 460and related programs. 461.It Va NO_ATM 462.Pq Vt bool 463Set to not build 464programs and libraries related to ATM networking. 465.It Va NO_AUDIT 466.Pq Vt bool 467Set to not build audit support into system programs. 468.It Va NO_AUTHPF 469.Pq Vt bool 470Set to not build 471.Xr authpf 8 . 472.It Va NO_BIND 473.Pq Vt bool 474Setting this variable will prevent any part of BIND from being built, 475regardless of the presence of any of the other *_BIND_* variables below. 476.It Va NO_BIND_DNSSEC 477.Pq Vt bool 478Set to avoid building or installing the DNSSEC related binaries, 479.Xr dnssec-keygen 8 480and 481.Xr dnssec-signzone 8 . 482.It Va NO_BIND_ETC 483.Pq Vt bool 484Set to avoid installing the default files to 485.Pa /var/named/etc/namedb . 486.It Va NO_BIND_LIBS_LWRES 487.Pq Vt bool 488Set to avoid installing the lightweight resolver library in 489.Pa /usr/lib . 490The library that is private to the build system may still be built as needed. 491.It Va NO_BIND_MTREE 492.Pq Vt bool 493Set to avoid running 494.Xr mtree 8 495to create the chroot directory structure under 496.Pa /var/named , 497and avoid creating an 498.Pa /etc/namedb 499symlink to the chroot directory. 500This option should typically be used together with 501.Vt NO_BIND_ETC . 502.It Va NO_BIND_NAMED 503.Pq Vt bool 504Set to avoid building or installing 505.Xr named 8 , 506.Xr named.reload 8 , 507.Xr named-checkconf 8 , 508.Xr named-checkzone 8 , 509.Xr rndc 8 , 510and 511.Xr rndc-confgen 8 . 512.It Va NO_BIND_UTILS 513.Pq Vt bool 514Set to avoid building or installing the BIND userland utilities, 515.Xr dig 1 , 516.Xr host 1 , 517.Xr nslookup 1 , 518and 519.Xr nsupdate 8 . 520.It Va NO_BLUETOOTH 521.Pq Vt bool 522Set to not build Bluetooth related kernel modules, programs and libraries. 523.It Va NO_BOOT 524.Pq Vt bool 525Set to not build the boot blocks and loader. 526.It Va NO_CLEAN 527.Pq Vt bool 528Set this to disable cleaning during 529.Dq Li "make buildworld" . 530This should not be set unless you know what you are doing. 531.It Va NO_CLEANDIR 532.Pq Vt bool 533Set this to run 534.Dq Li "${MAKE} clean" 535instead of 536.Dq Li "${MAKE} cleandir" . 537.It Va NO_CRYPT 538.Pq Vt bool 539Set to not build any crypto code. 540.It Va NO_CVS 541.Pq Vt bool 542Set to not build CVS. 543.It Va NO_CXX 544.Pq Vt bool 545Set to not build 546.Xr g++ 1 547and related libraries. 548.It Va NO_DICT 549.Pq Vt bool 550Set to not build the Webster dictionary files. 551.It Va NO_DYNAMICROOT 552.Pq Vt bool 553Set this if you do not want to link 554.Pa /bin 555and 556.Pa /sbin 557dynamically. 558.It Va NO_FORTRAN 559.Pq Vt bool 560Set to not build 561.Xr g77 1 562and related libraries. 563.It Va NO_GAMES 564.Pq Vt bool 565Set to not build games. 566.It Va NO_GDB 567.Pq Vt bool 568Set to not build 569.Xr gdb 1 . 570.It Va NO_GPIB 571.Pq Vt bool 572Set to not build GPIB bus support. 573.It Va NO_I4B 574.Pq Vt bool 575Set to not build isdn4bsd package. 576.It Va NO_INET6 577.Pq Vt bool 578Set to not build 579programs and libraries related to IPv6 networking. 580.It Va NO_INFO 581.Pq Vt bool 582Set to not make or install 583.Xr info 5 584files. 585.It Va NO_IPFILTER 586.Pq Vt bool 587Set to not build IP Filter package. 588.It Va NO_KERBEROS 589.Pq Vt bool 590Set this if you do not want to build Kerberos 5 (KTH Heimdal). 591.It Va NO_LIBC_R 592.Pq Vt bool 593Set to not build 594.Nm libc_r 595(reentrant version of 596.Nm libc ) . 597.It Va NO_LIBPTHREAD 598.Pq Vt bool 599Set to not build the 600.Nm libpthread 601(M:N threading) 602library. 603.It Va NO_LIBTHR 604.Pq Vt bool 605Set to not build the 606.Nm libthr 607(1:1 threading) 608library. 609.It Va NO_LPR 610.Pq Vt bool 611Set to not build 612.Xr lpr 1 613and related programs. 614.It Va NO_MAILWRAPPER 615.Pq Vt bool 616Set to not build the 617.Xr mailwrapper 8 618MTA selector. 619.It Va NO_MAN 620.Pq Vt bool 621Set to not build manual pages. 622.It Va NO_MANCOMPRESS 623.Pq Vt bool 624Set to install manual pages uncompressed. 625.It Va NO_NETCAT 626.Pq Vt bool 627Set to not build 628.Xr nc 1 629utility. 630.It Va NO_NIS 631.Pq Vt bool 632Set to not build 633.Xr NIS 8 634support and related programs. 635If set, you might need to adopt your 636.Xr nsswitch.conf 5 637and remove 638.Sq nis 639entries. 640.It Va NO_NLS_CATALOGS 641.Pq Vt bool 642Set to not build NLS catalog support for 643.Xr csh 1 . 644.It Va NO_OBJC 645.Pq Vt bool 646Set to not build Objective C support. 647.It Va NO_OPENSSH 648.Pq Vt bool 649Set to not build OpenSSH. 650.It Va NO_OPENSSL 651.Pq Vt bool 652Set to not build OpenSSL (implies 653.Va NO_KERBEROS 654and 655.Va NO_OPENSSH ) . 656.It Va NO_PF 657.Pq Vt bool 658Set to not build PF firewall package. 659.It Va NO_PROFILE 660.Pq Vt bool 661Set to avoid compiling profiled libraries. 662.It Va NO_RCMDS 663.Pq Vt bool 664Disable building of the 665.Tn BSD 666r-commands. 667This includes 668.Xr rlogin 1 , 669.Xr rsh 1 , 670etc. 671.It Va NO_SENDMAIL 672.Pq Vt bool 673Set to not build 674.Xr sendmail 8 675and related programs. 676.It Va NO_SHARE 677.Pq Vt bool 678Set to not build in the 679.Pa share 680subdir. 681.It Va NO_SHARED 682.Pq Vt bool 683Set to build 684.Pa /bin 685and 686.Pa /sbin 687statically linked, this can be bad. 688If set, every utility that uses 689.Pa bsd.prog.mk 690will be linked statically. 691.It Va NO_SHAREDOCS 692.Pq Vt bool 693Set to not build the 694.Bx 4.4 695legacy docs. 696.It Va NO_TCSH 697.Pq Vt bool 698Set to not build and install 699.Pa /bin/csh 700(which is 701.Xr tcsh 1 ) . 702.It Va NO_TOOLCHAIN 703.Pq Vt bool 704Set to not build 705programs used for program development, 706compilers, debuggers etc. 707.It Va NO_USB 708.Pq Vt bool 709Set to not build USB-related programs and libraries. 710.It Va PPP_NO_NAT 711.Pq Vt bool 712Build 713.Xr ppp 8 714without support for network address translation (NAT). 715.It Va PPP_NO_NETGRAPH 716.Pq Vt bool 717Set to build 718.Xr ppp 8 719without support for Netgraph. 720.It Va PPP_NO_RADIUS 721.Pq Vt bool 722Set to build 723.Xr ppp 8 724without support for RADIUS. 725.It Va PPP_NO_SUID 726.Pq Vt bool 727Set to disable the installation of 728.Xr ppp 8 729as a set-user-ID root program. 730.It Va SENDMAIL_ADDITIONAL_MC 731.Pq Vt str 732Additional 733.Pa .mc 734files which should be built into 735.Pa .cf 736files at build time. 737The value should include the full path to the 738.Pa .mc 739file(s), e.g., 740.Pa /etc/mail/foo.mc 741.Pa /etc/mail/bar.mc . 742.It Va SENDMAIL_CFLAGS 743.Pq Vt str 744Flags to pass to the compile command when building 745.Xr sendmail 8 . 746The 747.Va SENDMAIL_* 748flags can be used to provide SASL support with setting such as: 749.Bd -literal -offset indent 750SENDMAIL_CFLAGS=-I/usr/local/include -DSASL 751SENDMAIL_LDFLAGS=-L/usr/local/lib 752SENDMAIL_LDADD=-lsasl 753.Ed 754.It Va SENDMAIL_CF_DIR 755.Pq Vt str 756Override the default location for the 757.Xr m4 1 758configuration files used to build a 759.Pa .cf 760file from a 761.Pa .mc 762file. 763.It Va SENDMAIL_DPADD 764.Pq Vt str 765Extra dependencies to add when building 766.Xr sendmail 8 . 767.It Va SENDMAIL_LDADD 768.Pq Vt str 769Flags to add to the end of the 770.Xr ld 1 771command when building 772.Xr sendmail 8 . 773.It Va SENDMAIL_LDFLAGS 774.Pq Vt str 775Flags to pass to the 776.Xr ld 1 777command when building 778.Xr sendmail 8 . 779.It Va SENDMAIL_M4_FLAGS 780.Pq Vt str 781Flags passed to 782.Xr m4 1 783when building a 784.Pa .cf 785file from a 786.Pa .mc 787file. 788.It Va SENDMAIL_MAP_PERMS 789.Pq Vt str 790Mode to use when generating alias and map database files using 791.Pa /etc/mail/Makefile . 792The default value is 0640. 793.It Va SENDMAIL_MC 794.Pq Vt str 795The default 796.Xr m4 1 797configuration file to use at install time. 798The value should include the full path to the 799.Pa .mc 800file, e.g., 801.Pa /etc/mail/myconfig.mc . 802Use with caution as a make install will overwrite any existing 803.Pa /etc/mail/sendmail.cf . 804Note that 805.Va SENDMAIL_CF 806is now deprecated. 807.It Va SENDMAIL_SET_USER_ID 808.Pq Vt bool 809If set, install 810.Xr sendmail 8 811as a set-user-ID root binary instead of a set-group-ID binary 812and do not install 813.Pa /etc/mail/submit.{cf,mc} . 814Use of this flag is not recommended and the alternative advice in 815.Pa /etc/mail/README 816should be followed instead if at all possible. 817.It Va SENDMAIL_SUBMIT_MC 818.Pq Vt str 819The default 820.Xr m4 1 821configuration file for mail submission 822to use at install time. 823The value should include the full path to the 824.Pa .mc 825file, e.g., 826.Pa /etc/mail/mysubmit.mc . 827Use with caution as a make install will overwrite any existing 828.Pa /etc/mail/submit.cf . 829.It Va TOP_TABLE_SIZE 830.Pq Vt int 831.Xr top 1 832uses a hash table for the user names. 833The size of this hash can be tuned to match the number of local users. 834The table size should be a prime number 835approximately twice as large as the number of lines in 836.Pa /etc/passwd . 837The default number is 20011. 838.It Va WANT_FORCE_OPTIMIZATION_DOWNGRADE 839.Pq Vt int 840Causes the system compiler to be built such that it forces high optimization 841levels to a lower one. 842.Xr gcc 1 843.Fl O2 844and above is known to trigger known optimizer bugs at various 845times \(em this is worse on the Alpha platform. 846The value assigned is the highest optimization value used. 847.It Va WITH_BIND_LIBS 848.Pq Vt bool 849Set to install BIND libraries and include files. 850.El 851.Ss "BUILDING DOCUMENTATION" 852.Pp 853The following list provides a name and short description for variables 854that are used when building documentation. 855.Bl -tag -width ".Va PRINTERDEVICE" 856.It Va DISTDIR 857.Pq Vt str 858Where distfiles are kept. 859Normally, this is 860.Pa distfiles 861in 862.Va PORTSDIR . 863.It Va DOC_LANG 864.Pq Vt str 865The list of languages and encodings to build and install. 866.It Va PRINTERDEVICE 867.Pq Vt str 868The default format for system documentation, depends on your 869printer. 870This can be set to 871.Dq Li ascii 872for simple printers, or 873.Dq Li ps 874for postscript or graphics printers with a ghostscript 875filter, or both. 876.El 877.Sh FILES 878.Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact 879.It Pa /etc/make.conf 880.It Pa /usr/doc/Makefile 881.It Pa /usr/share/examples/etc/make.conf 882.It Pa /usr/share/mk/sys.mk 883.It Pa /usr/src/Makefile 884.It Pa /usr/src/Makefile.inc1 885.El 886.Sh SEE ALSO 887.Xr gcc 1 , 888.Xr install 1 , 889.Xr make 1 , 890.Xr environ 7 , 891.Xr ports 7 , 892.Xr lpd 8 , 893.Xr sendmail 8 , 894.Xr wpa_supplicant 8 895.Sh HISTORY 896The 897.Nm 898file appeared sometime before 899.Fx 4.0 . 900.Sh AUTHORS 901This 902manual page was written by 903.An Mike W. Meyer Aq mwm@mired.org . 904.Sh BUGS 905This manual page may occasionally be out of date with respect to 906the options currently available for use in 907.Nm . 908Please check the 909.Pa /usr/share/examples/etc/make.conf 910file for the latest options which are available. 911.Sh CAVEATS 912Note, that 913.Ev MAKEOBJDIRPREFIX 914and 915.Ev MAKEOBJDIR 916are environment variables and should not be set in 917.Nm 918but in make's environment. 919