1.\" $NetBSD: mk.conf.5,v 1.71 2015/07/23 08:03:26 mrg Exp $ 2.\" 3.\" Copyright (c) 1999-2003 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by Luke Mewburn. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.Dd April 7, 2015 31.Dt MK.CONF 5 32.Os 33.\" turn off hyphenation 34.hym 999 35. 36.Sh NAME 37.Nm mk.conf 38.Nd make configuration file 39. 40.Sh DESCRIPTION 41The 42.Nm 43file overrides various parameters used during the build of the system. 44.Pp 45Listed below are the 46.Nm 47variables that may be set, the values to which each may be set, 48a brief description of what each variable does, and a reference to 49relevant manual pages. 50. 51.Ss NetBSD System variables 52. 53.de YorN 54Can be set to 55.Dq yes 56or 57.Dq no . 58.. 59.de DFLT 60.Pp 61.Em Default : 62.. 63.de DFLTu 64.DFLT 65Unset. 66.. 67.de DFLTy 68.DFLT 69.Dq yes 70.. 71.de DFLTn 72.DFLT 73.Dq no 74.. 75.Bl -tag -width MKDYNAMICROOT 76. 77.It Sy NETBSDSRCDIR 78The path to the top level of the 79.Nx 80sources. 81If 82.Xr make 1 83is run from within the 84.Nx 85source tree, the default is the top 86level of that tree (as determined by the presence of 87.Pa build.sh 88and 89.Pa tools/ ) , 90otherwise 91.Sy BSDSRCDIR 92will be used. 93. 94.It Sy BSDOBJDIR 95The real path to the 96.Sq obj 97tree for the 98.Nx 99source tree. 100.DFLT 101.Pa /usr/obj 102. 103.It Sy BSDSRCDIR 104The real path to the 105.Nx 106source tree. 107.DFLT 108.Pa /usr/src 109. 110.It Sy BUILD 111If defined, 112.Sq "make install" 113checks that the targets in the source directories are up-to-date and 114re-makes them if they are out of date, instead of blindly trying to install 115out of date or non-existent targets. 116.DFLTu 117. 118.It Sy BUILDID 119Identifier for the build. 120The identifier will be appended to 121object directory names, and can be consulted in the 122.Xr make 1 123configuration file in order to set additional build parameters, 124such as compiler flags. 125.DFLTu 126. 127.It Sy COPTS 128Extra options for the C compiler. 129Should be appended to (e.g., 130.Sy COPTS+=-g ) , 131rather than explicitly set. 132Note that 133.Sy CPUFLAGS , 134not 135.Sy COPTS , 136should be used for 137compiler flags that select CPU-related options. 138Also note that 139.Sy CFLAGS 140should never be set in 141.Nm . 142. 143.It Sy CPUFLAGS 144Additional flags passed to the compiler/assembler to select 145CPU instruction set options, CPU tuning options, etc. 146Such options should not be specified in 147.Sy COPTS , 148because some parts of the build process need to override 149CPU-related compiler options. 150. 151.It Sy DESTDIR 152Directory to contain the built 153.Nx 154system. 155If set, special options are passed to the compilation tools to 156prevent their default use of the host system's 157.Sy /usr/include , /usr/lib , 158and so forth. 159This pathname should 160.Em not 161end with a slash 162.Pq / 163character (for installation into the system's root directory, set 164.Sy DESTDIR 165to an empty string). 166The directory must reside on a file system which supports long file 167names and hard links. 168.DFLT 169Empty string if 170.Sy USETOOLS 171is 172.Dq yes ; 173unset otherwise. 174.Pp 175.Em Note : 176.Sy build.sh 177will provide a default of 178.Pa destdir. Ns Sy MACHINE 179(in the top-level 180.Sy .OBJDIR ) 181unless run in 182.Sq expert 183mode 184. 185.It Sy MAKEVERBOSE 186Level of verbosity of status messages. 187Supported values: 188.Bl -tag -width xxx 189.It 0 190No descriptive messages or commands executed by 191.Xr make 1 192are shown. 193.It 1 194Brief messages are shown describing what is being done, 195but the actual commands executed by 196.Xr make 1 197are not displayed. 198.It 2 199Descriptive messages are shown as above (prefixed with a 200.Sq # ) , 201and ordinary commands performed by 202.Xr make 1 203are displayed. 204.It 3 205In addition to the above, all commands performed by 206.Xr make 1 207are displayed, even if they would ordinarily have been hidden 208through use of the 209.Dq \&@ 210prefix in the relevant makefile. 211.It 4 212In addition to the above, commands executed by 213.Xr make 1 214are traced through use of the 215.Xr sh 1 216.Dq Fl x 217flag. 218.El 219.DFLT 2202 221. 222.It Sy MKATF 223.YorN 224Indicates whether the Automated Testing Framework is built and installed. 225This also controls whether the 226.Nx 227test suite is built and installed, 228as the tests rely on ATF and cannot be built without it. 229.DFLTy 230. 231.It Sy MKBINUTILS 232.YorN 233Indicates whether any of the binutils tools or libraries should be built. 234That is, the libraries 235.Sy libbfd , 236.Sy libiberty , 237or any of the things that depend upon them, e.g. 238.Xr as 1 , 239.Xr ld 1 , 240.Xr dbsym 8 , 241or 242.Xr mdsetimage 8 . 243.DFLTy 244. 245.It Sy MKBSDTAR 246.YorN 247If 248.Dq yes , 249.Sy libarchive Ns - Ns 250based implementations of 251.Xr cpio 1 252and 253.Xr tar 1 254are built and installed. 255If 256.Dq no , 257.Xr pax 1 258based frontends are used. 259.DFLTn 260. 261.It Sy MKCATPAGES 262.YorN 263Indicates whether preformatted plaintext manual pages will be created 264and installed. 265.DFLTn 266. 267.It Sy MKCLEANSRC 268.YorN 269Indicates whether 270.Sq "make clean" 271and 272.Sq "make cleandir" 273will delete file names in 274.Sy CLEANFILES 275or 276.Sy CLEANDIRFILES 277from both the object directory, 278.Sy .OBJDIR , 279and the source directory, 280.Sy .SRCDIR . 281.Pp 282If 283.Dq yes , 284then these file names will be deleted relative to both 285.Sy .OBJDIR 286and 287.Sy .CURDIR . 288If 289.Dq no , 290then the deletion will be performed relative to 291.Sy .OBJDIR 292only. 293.DFLTy 294. 295.It Sy MKCLEANVERIFY 296.YorN 297Controls whether 298.Sq "make clean" 299and 300.Sq "make cleandir" 301will verify that files have been deleted. 302If 303.Dq yes , 304then file deletions will be verified using 305.Xr ls 1 . 306If 307.Dq no , 308then file deletions will not be verified. 309.DFLTy 310. 311.It Sy MKCOMPAT 312.YorN 313Indicates whether support for multiple ABIs is to be built and 314installed. 315.DFLTy 316on amd64, mips64 and sparc64, 317.Dq no 318on other architectures. 319. 320.It Sy MKCOMPLEX 321.YorN 322Indicates whether the 323.Lb libm 324is compiled with support for 325.In complex.h . 326.DFLTy 327. 328.It Sy MKCTF 329.YorN 330Indicates whether CTF tools are to be built and installed. 331If yes, the tools will be used to generate and manipulate 332CTF data of ELF binaries during build. 333.DFLTn 334. 335.It Sy MKCRYPTO 336.YorN 337Indicates whether cryptographic code will be included in a build; 338provided for the benefit of countries that do not allow strong 339cryptography. 340Will not affect use of the standard low-security password encryption system, 341.Xr crypt 3 . 342.DFLTy 343.Pp 344If 345.Dq no , 346acts as 347.Sy MKKERBEROS=no . 348. 349.It Sy MKCRYPTO_RC5 350.YorN 351Indicates whether RC5 support will be built into 352.Sy libcrypto_rc5.a . 353.DFLTn 354. 355.It Sy MKCVS 356.YorN 357Indicates whether 358.Xr cvs 1 359is built. 360.DFLTy 361. 362.It Sy MKDEBUG 363.YorN 364Indicates whether separate debugging symbols should be installed into 365.Sy DESTDIR Ns Pa /usr/libdata/debug . 366.DFLTn 367. 368.It Sy MKDEBUGLIB 369.YorN 370Indicates whether debug libraries 371.Sy ( lib*_g.a ) 372will be built and installed. 373Debug libraries are compiled with 374.Dq Li -g -DDEBUG . 375.DFLTn 376. 377.It Sy MKDOC 378.YorN 379Indicates whether system documentation destined for 380.Sy DESTDIR Ns Pa /usr/share/doc 381will be installed. 382.DFLTy 383. 384.It Sy MKDTRACE 385.YorN 386Indicates whether the kernel modules, utilities and libraries for 387.Xr dtrace 1 388support are to be built and installed. 389.DFLTn 390. 391.It Sy MKDYNAMICROOT 392.YorN 393Indicates whether all programs should be dynamically linked, 394and to install shared libraries required by 395.Pa /bin 396and 397.Pa /sbin 398and the shared linker 399.Xr ld.elf_so 1 400into 401.Pa /lib . 402If 403.Sq no , 404link programs in 405.Pa /bin 406and 407.Pa /sbin 408statically. 409.DFLTy 410. 411.It Sy MKGCC 412.YorN 413Indicates whether 414.Xr gcc 1 415or any related libraries 416.Pq Sy libg2c , libgcc , libobjc , libstdc++ 417are built. 418.DFLTy 419. 420.It Sy MKGCCCMDS 421.YorN 422Indicates whether 423.Xr gcc 1 424is built. 425If 426.Dq no , 427then 428.Sy MKGCC 429controls if the 430GCC libraries are built. 431.DFLTy 432. 433.It Sy MKGDB 434.YorN 435Indicates whether 436.Xr gdb 1 437is built. 438.DFLTy 439. 440.It Sy MKHESIOD 441.YorN 442Indicates whether the Hesiod infrastructure 443(libraries and support programs) is built and installed. 444.DFLTy 445. 446.It Sy MKHOSTOBJ 447.YorN 448If set to 449.Dq yes , 450then for programs intended to be run on the compile host, 451the name, release, and architecture of the host operating system 452will be suffixed to the name of the object directory created by 453.Dq make obj . 454(This allows multiple host systems to compile 455.Nx 456for a single target.) 457If set to 458.Dq no , 459then programs built to be run on the compile host will use the same 460object directory names as programs built to be run on the target. 461.DFLTn 462. 463.It Sy MKHTML 464.YorN 465Indicates whether the HTML manual pages are created and installed. 466.DFLTy 467. 468.It Sy MKIEEEFP 469.YorN 470Indicates whether code for IEEE754/IEC60559 conformance is built. 471Has no effect on most platforms. 472.DFLTy 473. 474.It Sy MKINET6 475Indicates whether INET6 (IPv6) infrastructure 476(libraries and support programs) is built and installed. 477.DFLTy 478. 479.It Sy MKINFO 480.YorN 481Indicates whether GNU Info files, used for the documentation for 482most of the compilation tools, will be built and installed. 483.DFLTy 484. 485.It Sy MKIPFILTER 486.YorN 487Indicates whether the 488.Xr ipf 4 489programs, headers and other components will be built and installed. 490.DFLTy 491. 492.It Sy MKISCSI 493.YorN 494Indicates whether the iSCSI library and applications are 495built and installed. 496.DFLTy 497. 498.It Sy MKKERBEROS 499.YorN 500Indicates whether the Kerberos v5 infrastructure 501(libraries and support programs) is built and installed. 502Caution: the default 503.Xr pam 8 504configuration requires that Kerberos be present even if not used. 505Do not install a userland without Kerberos without also either 506updating the 507.Xr pam.conf 5 508files or disabling PAM via 509.Sy MKPAM . 510Otherwise all logins will fail. 511.DFLTy 512. 513.It Sy MKKMOD 514.YorN 515Indicates whether kernel modules are built and installed. 516.DFLTy 517. 518.It Sy MKKYUA 519.YorN 520Indicates whether Kyua (the testing infrastructure used by 521.Nx ) 522is built and installed. 523Note that 524.Em this does not control the installation of the tests themselves . 525The tests rely on the ATF libraries and therefore their build is controlled 526by the 527.Sy MKATF 528knob. 529.DFLTn 530until the import of Kyua is done and validated. 531. 532.It Sy MKLDAP 533.YorN 534Indicates whether the Lightweight Directory Access Protocol (LDAP) 535infrastructure 536(libraries and support programs) is built and installed. 537.DFLTy 538. 539.It Sy MKLINKLIB 540.YorN 541Indicates whether all of the shared library infrastructure is built. 542If 543.Sq no , 544prevents: 545installation of the 546.Sy *.a 547libraries, 548installation of the 549.Sy *_pic.a 550libraries on PIC systems, 551building of 552.Sy *.a 553libraries on PIC systems, 554or 555installation of 556.Sy .so 557symlinks on ELF systems. 558.DFLTy 559.Pp 560If 561.Dq no , 562acts as 563.Sy MKPICINSTALL=no MKPROFILE=no . 564. 565.It Sy MKLINT 566.YorN 567Indicates whether 568.Xr lint 1 569will be run against portions of the 570.Nx 571source code during the build, and whether lint libraries will be 572installed into 573.Sy DESTDIR Ns Pa /usr/libdata/lint . 574.DFLTy 575. 576.It Sy MKLVM 577.YorN 578If not 579.Dq no , 580build and install the logical volume manager. 581.DFLTy 582. 583.It Sy MKMAN 584.YorN 585Indicates whether manual pages will be installed. 586.DFLTy 587.Pp 588If 589.Dq no , 590acts as 591.Sy MKCATPAGES=no MKHTML=no . 592. 593.It Sy MKMANZ 594.YorN 595Indicates whether manual pages should be compressed with 596.Xr gzip 1 597at installation time. 598.DFLTn 599. 600.It Sy MKMDNS 601.YorN 602Indicates whether the mDNS (Multicast DNS) infrastructure 603(libraries and support programs) is built and installed. 604.DFLTy 605. 606.It Sy MKNLS 607.YorN 608Indicates whether Native Language System (NLS) locale zone files will be 609built and installed. 610.DFLTy 611. 612.It Sy MKNPF 613.YorN 614Indicates whether the NPF packet filter is to be built and installed. 615.DFLTy 616. 617.It Sy MKOBJ 618.YorN 619Indicates whether object directories will be created when running 620.Dq make obj . 621If set to 622.Dq no , 623then all built files will be located inside the regular source tree. 624.DFLTy 625.Pp 626If 627.Dq no , 628acts as 629.Sy MKOBJDIRS=no . 630. 631.It Sy MKOBJDIRS 632.YorN 633Indicates whether object directories will be created automatically 634(via a 635.Dq make obj 636pass) at the start of a build. 637.DFLTn 638. 639.It Sy MKPAM 640.YorN 641Indicates whether the 642.Xr pam 8 643framework (libraries and support files) is built. 644The pre-PAM code is not supported and may be removed in the future. 645.DFLTy 646. 647.It Sy MKPCC 648.YorN 649Indicates whether 650.Xr pcc 1 651or any related libraries 652.Pq Sy libpcc , libpccsoftfloat 653are built. 654.DFLTn 655. 656.It Sy MKPF 657.YorN 658Indicates whether the 659.Xr pf 4 660programs, headers and LKM will be built and installed. 661.DFLTy 662. 663.It Sy MKPIC 664.YorN 665Indicates whether shared objects and libraries will be created and 666installed. 667If set to 668.Dq no , 669the entire built system will be statically linked. 670.DFLT 671Platform dependent. 672As of this writing, all platforms except 673.Sy m68000 674and 675.Sy sh3 676default to 677.Dq yes . 678.Pp 679If 680.Dq no , 681acts as 682.Sy MKPICLIB=no . 683. 684.It Sy MKPICINSTALL 685.YorN 686Indicates whether the 687.Xr ar 1 688format libraries 689.Sy ( lib*_pic.a ) , 690used to generate shared libraries, are installed. 691.DFLTy 692. 693.It Sy MKPICLIB 694.YorN 695Indicates whether the 696.Xr ar 1 697format libraries 698.Sy ( lib*_pic.a ) , 699used to generate shared libraries. 700.DFLTy 701. 702.It Sy MKPIE 703Indicates whether Position Independent Executables (PIE) 704are built and installed. 705.DFLTn 706. 707.It Sy MKPIGZGZIP 708.YorN 709If 710.Dq no , 711the 712.Xr pigz 1 713utility is not installed as 714.Xr gzip 1 . 715.DFLTn 716. 717.It Sy MKPOSTFIX 718.YorN 719Indicates whether Postfix is built. 720.DFLTy 721. 722.It Sy MKPROFILE 723.YorN 724Indicates whether profiled libraries 725.Sy ( lib*_p.a ) 726will be built and installed. 727.DFLT 728.Dq yes ; 729however, some platforms turn off 730.Sy MKPROFILE 731by default at times due to toolchain problems with profiled code. 732. 733.It Sy MKREPRO 734.YorN 735Indicates whether builds are to be reproducible. 736If 737.Dq yes , 738two builds from the same source tree will produce the same build 739results. 740.DFLTn 741. 742.It Sy MKRUMP 743.YorN 744Indicates whether the 745.Xr rump 3 746headers, libraries and programs are to be installed. 747.DFLTy 748. 749.It Sy MKSHARE 750.YorN 751Indicates whether files destined to reside in 752.Sy DESTDIR Ns Pa /usr/share 753will be built and installed. 754.DFLTy 755.Pp 756If 757.Dq no , 758acts as 759.Sy MKCATPAGES=no MKDOC=no MKINFO=no MKHTML=no MKMAN=no MKNLS=no . 760. 761.It Sy MKSKEY 762.YorN 763Indicates whether the S/key infrastructure 764(libraries and support programs) is built. 765.DFLTy 766. 767.It Sy MKSOFTFLOAT 768.YorN 769Indicates whether the compiler generates output containing 770library calls for floating point and possibly soft-float library 771support. 772.DFLTn 773. 774.It Sy MKSTATICLIB 775.YorN 776Indicates whether the normal static libraries 777.Sy ( lib*_g.a ) 778will be built and installed. 779.DFLTy 780. 781.It Sy MKSTRIPIDENT 782.YorN 783Indicates whether RCS IDs, for use with 784.Xr ident 1 , 785should be stripped from program binaries and shared libraries. 786.DFLTn 787. 788.It Sy MKUNPRIVED 789.YorN 790Indicates whether an unprivileged install will occur. 791The user, group, permissions, and file flags, will not be set on 792the installed item; instead the information will be appended to 793a file called 794.Pa METALOG 795in 796.Sy DESTDIR . 797The contents of 798.Pa METALOG 799is used during the generation of the distribution tar files to ensure 800that the appropriate file ownership is stored. 801.DFLTn 802. 803.It Sy MKUPDATE 804.YorN 805Indicates whether all install operations intended to write to 806.Sy DESTDIR 807will compare file timestamps before installing, and skip the install 808phase if the destination files are up-to-date. 809This also has implications on full builds (see next subsection). 810.DFLTn 811. 812.It Sy MKX11 813.YorN 814Indicates whether X11 is built and installed 815(by descending into 816.Pa src/external/mit/xorg ) . 817.DFLTn 818.Pp 819. 820.It Sy MKX11FONTS 821.YorN 822If 823.Dq no , 824do not build and install the X fonts. 825.DFLTy 826. 827.It Sy MKX11MOTIF 828.YorN 829If 830.Dq yes , 831build the native Xorg libGLw with Motif stubs. 832.DFLTn 833. 834.It Sy MKYP 835.YorN 836Indicates whether the YP (NIS) infrastructure 837(libraries and support programs) is built. 838.DFLTy 839. 840.It Sy MKZFS 841.YorN 842Indicates whether the ZFS kernel module and the utilities and 843libraries used to manage the ZFS system are to be built. 844.DFLTy 845on i386 and amd64, 846.Dq no 847on other architectures. 848. 849.It Sy OBJMACHINE 850If defined, creates objdirs of the form 851.Pa obj. Ns Sy MACHINE , 852where 853.Sy MACHINE 854is the current architecture (as per 855.Sq "uname -m" ) . 856. 857.It Sy RELEASEDIR 858If set, specifies the directory to which a 859.Xr release 7 860layout will be written at the end of a 861.Dq make release . 862.DFLTu 863.Pp 864.Em Note : 865.Sy build.sh 866will provide a default of 867.Pa releasedir 868(in the top-level 869.Sy .OBJDIR ) 870unless run in 871.Sq expert 872mode 873. 874.It Sy TOOLDIR 875Directory to hold the host tools, once built. 876This directory should be unique to a given host system and 877.Nx 878source tree. 879(However, multiple targets may share the same 880.Sy TOOLDIR ; 881the target-dependent files have unique names.) 882If unset, a default based 883on the 884.Xr uname 1 885information of the host platform will be created in the 886.Sy .OBJDIR 887of 888.Pa src . 889.DFLTu 890. 891.It Sy USE_FORT 892Indicates whether the so-called 893.Dq FORTIFY_SOURCE 894.Xr security 7 895extensions are enabled; see 896.Xr ssp 3 897for details. 898This imposes some performance penalty. 899.DFLTn 900. 901.It Sy USE_HESIOD 902.YorN 903Indicates whether Hesiod support is 904enabled in the various applications that support it. 905If 906.Sy MKHESIOD=no , 907.Sy USE_HESIOD 908will also be forced to 909.Dq no . 910.DFLTy 911. 912.It Sy USE_INET6 913.YorN 914Indicates whether INET6 (IPv6) support is 915enabled in the various applications that support it. 916If 917.Sy MKINET6=no , 918.Sy USE_INET6 919will also be forced to 920.Dq no . 921.DFLTy 922. 923.It Sy USE_JEMALLOC 924.YorN 925Indicates whether the 926.Em jemalloc 927allocator 928.Pq which is designed for improved performance with threaded applications 929is used instead of the 930.Em phkmalloc 931allocator 932.Pq that was the default until Nx 5.0 . 933.DFLTy 934. 935.It Sy USE_KERBEROS 936.YorN 937Indicates whether Kerberos v5 support is 938enabled in the various applications that support it. 939If 940.Sy MKKERBEROS=no , 941.Sy USE_KERBEROS 942will also be forced to 943.Dq no . 944.DFLTy 945. 946.It Sy USE_LDAP 947.YorN 948Indicates whether LDAP support is 949enabled in the various applications that support it. 950If 951.Sy MKLDAP=no , 952.Sy USE_LDAP 953will also be forced to 954.Dq no . 955.DFLTy 956. 957.It Sy USE_PAM 958.YorN 959Indicates whether 960.Xr pam 8 961support is enabled in the various applications that support it. 962If 963.Sy MKPAM=no , 964.Sy USE_PAM 965will also be forced to 966.Dq no . 967.DFLTy 968. 969.It Sy USE_SKEY 970.YorN 971Indicates whether S/key support is 972enabled in the various applications that support it. 973If 974.Sy MKSKEY=no , 975.Sy USE_SKEY 976will also be forced to 977.Dq no . 978.DFLTy 979.Pp 980This is mutually exclusive to 981.Sy USE_PAM!=no . 982. 983.It Sy USE_SSP 984.YorN 985Indicates whether GCC stack-smashing protection (SSP) support, 986which detects stack overflows and aborts the program, 987is enabled. 988This imposes some performance penalty. 989.DFLTn 990. 991.It Sy USE_YP 992.YorN 993Indicates whether YP (NIS) support is 994enabled in the various applications that support it. 995If 996.Sy MKYP=no , 997.Sy USE_YP 998will also be forced to 999.Dq no . 1000.DFLTy 1001. 1002.It Sy USETOOLS 1003Indicates whether the tools specified by 1004.Sy TOOLDIR 1005should be used as part of a build in progress. 1006Must be set to 1007.Dq yes 1008if cross-compiling. 1009.Bl -tag -width "never" 1010.It Sy yes 1011Use the tools from 1012.Sy TOOLDIR . 1013.It Sy no 1014Do not use the tools from 1015.Sy TOOLDIR , 1016but refuse to build native compilation tool components that are 1017version-specific for that tool. 1018.It Sy never 1019Do not use the tools from 1020.Sy TOOLDIR , 1021even when building native tool components. 1022This is similar to the traditional 1023.Nx 1024build method, but does 1025.Em not 1026verify that the compilation tools in use are up-to-date enough in order 1027to build the tree successfully. 1028This may cause build or runtime problems when building the whole 1029.Nx 1030source tree. 1031.El 1032.DFLT 1033.Dq yes 1034if building all or part of a whole 1035.Nx 1036source tree (detected automatically); 1037.Dq no 1038otherwise (to preserve traditional semantics of the 1039.Aq bsd.*.mk 1040.Xr make 1 1041include files). 1042. 1043.El 1044. 1045.Ss pkgsrc system variables 1046. 1047Please see the pkgsrc guide at 1048.Lk http://www.netbsd.org/Documentation/pkgsrc/ 1049or 1050.Pa pkgsrc/doc/pkgsrc.txt 1051for more variables used internally by the package system and 1052.Pa ${PKGSRCDIR}/mk/defaults/mk.conf 1053for package-specific examples. 1054. 1055.Sh FILES 1056.Bl -tag -width /etc/mk.conf 1057. 1058.It Pa /etc/mk.conf 1059This file. 1060. 1061.It Pa ${PKGSRCDIR}/mk/defaults/mk.conf 1062Examples for settings regarding the pkgsrc collection. 1063.El 1064. 1065.Sh SEE ALSO 1066.Xr make 1 , 1067.Pa /usr/share/mk/bsd.README , 1068.Pa pkgsrc/doc/pkgsrc.txt , 1069.Lk http://www.netbsd.org/Documentation/pkgsrc/ 1070.Sh HISTORY 1071The 1072.Nm 1073file appeared in 1074.Nx 1.2 . 1075