1.\" $NetBSD: mk.conf.5,v 1.76 2017/05/21 15:28:42 riastradh 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 20, 2017 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 MKCVS 336.YorN 337Indicates whether 338.Xr cvs 1 339is built. 340.DFLTy 341. 342.It Sy MKDEBUG 343.YorN 344Indicates whether separate debugging symbols should be installed into 345.Sy DESTDIR Ns Pa /usr/libdata/debug . 346.DFLTn 347. 348.It Sy MKDEBUGLIB 349.YorN 350Indicates whether debug libraries 351.Sy ( lib*_g.a ) 352will be built and installed. 353Debug libraries are compiled with 354.Dq Li -g -DDEBUG . 355.DFLTn 356. 357.It Sy MKDOC 358.YorN 359Indicates whether system documentation destined for 360.Sy DESTDIR Ns Pa /usr/share/doc 361will be installed. 362.DFLTy 363. 364.It Sy MKDTRACE 365.YorN 366Indicates whether the kernel modules, utilities and libraries for 367.Xr dtrace 1 368support are to be built and installed. 369.DFLTn 370. 371.It Sy MKDYNAMICROOT 372.YorN 373Indicates whether all programs should be dynamically linked, 374and to install shared libraries required by 375.Pa /bin 376and 377.Pa /sbin 378and the shared linker 379.Xr ld.elf_so 1 380into 381.Pa /lib . 382If 383.Sq no , 384link programs in 385.Pa /bin 386and 387.Pa /sbin 388statically. 389.DFLTy 390. 391.It Sy MKGCC 392.YorN 393Indicates whether 394.Xr gcc 1 395or any related libraries 396.Pq Sy libg2c , libgcc , libobjc , libstdc++ 397are built. 398.DFLTy 399. 400.It Sy MKGCCCMDS 401.YorN 402Indicates whether 403.Xr gcc 1 404is built. 405If 406.Dq no , 407then 408.Sy MKGCC 409controls if the 410GCC libraries are built. 411.DFLTy 412. 413.It Sy MKGDB 414.YorN 415Indicates whether 416.Xr gdb 1 417is built. 418.DFLTy 419. 420.It Sy MKHESIOD 421.YorN 422Indicates whether the Hesiod infrastructure 423(libraries and support programs) is built and installed. 424.DFLTy 425. 426.It Sy MKHOSTOBJ 427.YorN 428If set to 429.Dq yes , 430then for programs intended to be run on the compile host, 431the name, release, and architecture of the host operating system 432will be suffixed to the name of the object directory created by 433.Dq make obj . 434(This allows multiple host systems to compile 435.Nx 436for a single target.) 437If set to 438.Dq no , 439then programs built to be run on the compile host will use the same 440object directory names as programs built to be run on the target. 441.DFLTn 442. 443.It Sy MKHTML 444.YorN 445Indicates whether the HTML manual pages are created and installed. 446.DFLTy 447. 448.It Sy MKIEEEFP 449.YorN 450Indicates whether code for IEEE754/IEC60559 conformance is built. 451Has no effect on most platforms. 452.DFLTy 453. 454.It Sy MKINET6 455Indicates whether INET6 (IPv6) infrastructure 456(libraries and support programs) is built and installed. 457.DFLTy 458. 459.It Sy MKINFO 460.YorN 461Indicates whether GNU Info files, used for the documentation for 462most of the compilation tools, will be built and installed. 463.DFLTy 464. 465.It Sy MKIPFILTER 466.YorN 467Indicates whether the 468.Xr ipf 4 469programs, headers and other components will be built and installed. 470.DFLTy 471. 472.It Sy MKISCSI 473.YorN 474Indicates whether the iSCSI library and applications are 475built and installed. 476.DFLTy 477. 478.It Sy MKKERBEROS 479.YorN 480Indicates whether the Kerberos v5 infrastructure 481(libraries and support programs) is built and installed. 482Caution: the default 483.Xr pam 8 484configuration requires that Kerberos be present even if not used. 485Do not install a userland without Kerberos without also either 486updating the 487.Xr pam.conf 5 488files or disabling PAM via 489.Sy MKPAM . 490Otherwise all logins will fail. 491.DFLTy 492. 493.It Sy MKKMOD 494.YorN 495Indicates whether kernel modules are built and installed. 496.DFLTy 497. 498.It Sy MKKYUA 499.YorN 500Indicates whether Kyua (the testing infrastructure used by 501.Nx ) 502is built and installed. 503Note that 504.Em this does not control the installation of the tests themselves . 505The tests rely on the ATF libraries and therefore their build is controlled 506by the 507.Sy MKATF 508knob. 509.DFLTn 510until the import of Kyua is done and validated. 511. 512.It Sy MKLDAP 513.YorN 514Indicates whether the Lightweight Directory Access Protocol (LDAP) 515infrastructure 516(libraries and support programs) is built and installed. 517.DFLTy 518. 519.It Sy MKLINKLIB 520.YorN 521Indicates whether all of the shared library infrastructure is built. 522If 523.Sq no , 524prevents: 525installation of the 526.Sy *.a 527libraries, 528installation of the 529.Sy *_pic.a 530libraries on PIC systems, 531building of 532.Sy *.a 533libraries on PIC systems, 534or 535installation of 536.Sy .so 537symlinks on ELF systems. 538.DFLTy 539.Pp 540If 541.Dq no , 542acts as 543.Sy MKPICINSTALL=no MKPROFILE=no . 544. 545.It Sy MKLINT 546.YorN 547Indicates whether 548.Xr lint 1 549will be run against portions of the 550.Nx 551source code during the build, and whether lint libraries will be 552installed into 553.Sy DESTDIR Ns Pa /usr/libdata/lint . 554.DFLTy 555. 556.It Sy MKLVM 557.YorN 558If not 559.Dq no , 560build and install the logical volume manager. 561.DFLTy 562. 563.It Sy MKMAN 564.YorN 565Indicates whether manual pages will be installed. 566.DFLTy 567.Pp 568If 569.Dq no , 570acts as 571.Sy MKCATPAGES=no MKHTML=no . 572. 573.It Sy MKMANZ 574.YorN 575Indicates whether manual pages should be compressed with 576.Xr gzip 1 577at installation time. 578.DFLTn 579. 580.It Sy MKMDNS 581.YorN 582Indicates whether the mDNS (Multicast DNS) infrastructure 583(libraries and support programs) is built and installed. 584.DFLTy 585. 586.It Sy MKNLS 587.YorN 588Indicates whether Native Language System (NLS) locale zone files will be 589built and installed. 590.DFLTy 591. 592.It Sy MKNPF 593.YorN 594Indicates whether the NPF packet filter is to be built and installed. 595.DFLTy 596. 597.It Sy MKOBJ 598.YorN 599Indicates whether object directories will be created when running 600.Dq make obj . 601If set to 602.Dq no , 603then all built files will be located inside the regular source tree. 604.DFLTy 605.Pp 606If 607.Dq no , 608acts as 609.Sy MKOBJDIRS=no . 610. 611.It Sy MKOBJDIRS 612.YorN 613Indicates whether object directories will be created automatically 614(via a 615.Dq make obj 616pass) at the start of a build. 617.DFLTn 618. 619.It Sy MKPAM 620.YorN 621Indicates whether the 622.Xr pam 8 623framework (libraries and support files) is built. 624The pre-PAM code is not supported and may be removed in the future. 625.DFLTy 626. 627.It Sy MKPCC 628.YorN 629Indicates whether 630.Xr pcc 1 631or any related libraries 632.Pq Sy libpcc , libpccsoftfloat 633are built. 634.DFLTn 635. 636.It Sy MKPF 637.YorN 638Indicates whether the 639.Xr pf 4 640programs, headers and LKM will be built and installed. 641.DFLTy 642. 643.It Sy MKPIC 644.YorN 645Indicates whether shared objects and libraries will be created and 646installed. 647If set to 648.Dq no , 649the entire built system will be statically linked. 650.DFLT 651Platform dependent. 652As of this writing, all platforms except 653.Sy m68000 654default to 655.Dq yes . 656.Pp 657If 658.Dq no , 659acts as 660.Sy MKPICLIB=no . 661. 662.It Sy MKPICINSTALL 663.YorN 664Indicates whether the 665.Xr ar 1 666format libraries 667.Sy ( lib*_pic.a ) , 668used to generate shared libraries, are installed. 669.DFLTy 670. 671.It Sy MKPICLIB 672.YorN 673Indicates whether the 674.Xr ar 1 675format libraries 676.Sy ( lib*_pic.a ) , 677used to generate shared libraries. 678.DFLTy 679. 680.It Sy MKPIE 681Indicates whether Position Independent Executables (PIE) 682are built and installed. 683.DFLTn 684. 685.It Sy MKPIGZGZIP 686.YorN 687If 688.Dq no , 689the 690.Xr pigz 1 691utility is not installed as 692.Xr gzip 1 . 693.DFLTn 694. 695.It Sy MKPOSTFIX 696.YorN 697Indicates whether Postfix is built. 698.DFLTy 699. 700.It Sy MKPROFILE 701.YorN 702Indicates whether profiled libraries 703.Sy ( lib*_p.a ) 704will be built and installed. 705.DFLT 706.Dq yes ; 707however, some platforms turn off 708.Sy MKPROFILE 709by default at times due to toolchain problems with profiled code. 710. 711.It Sy MKREPRO 712.YorN 713Indicates whether builds are to be reproducible. 714If 715.Dq yes , 716two builds from the same source tree will produce the same build 717results. 718.DFLTn 719. 720.It Sy MKRUMP 721.YorN 722Indicates whether the 723.Xr rump 3 724headers, libraries and programs are to be installed. 725.DFLTy 726. 727.It Sy MKSHARE 728.YorN 729Indicates whether files destined to reside in 730.Sy DESTDIR Ns Pa /usr/share 731will be built and installed. 732.DFLTy 733.Pp 734If 735.Dq no , 736acts as 737.Sy MKCATPAGES=no MKDOC=no MKINFO=no MKHTML=no MKMAN=no MKNLS=no . 738. 739.It Sy MKSKEY 740.YorN 741Indicates whether the S/key infrastructure 742(libraries and support programs) is built. 743.DFLTy 744. 745.It Sy MKSOFTFLOAT 746.YorN 747Indicates whether the compiler generates output containing 748library calls for floating point and possibly soft-float library 749support. 750.DFLTn 751. 752.It Sy MKSTATICLIB 753.YorN 754Indicates whether the normal static libraries 755.Sy ( lib*_g.a ) 756will be built and installed. 757.DFLTy 758. 759.It Sy MKSTRIPIDENT 760.YorN 761Indicates whether RCS IDs, for use with 762.Xr ident 1 , 763should be stripped from program binaries and shared libraries. 764.DFLTn 765. 766.It Sy MKSTRIPSYM 767.YorN 768Indicates whether all local symbols should be stripped from shared libraries. 769If 770.Dq yes , 771strip all local symbols from shared libraries; 772the affect is equivalent to the 773.Fl x 774option of 775.Xr ld 1 . 776If 777.Dq no , 778strip only temporary local symbols; the affect is equivalent 779to the 780.Fl X 781option of 782.Xr ld 1 . 783Keeping non-temporary local symbols 784such as static function names is useful on using DTrace for 785userland libraries and getting a backtrace from a rump kernel 786loading shared libraries. 787.DFLTy 788. 789.It Sy MKUNPRIVED 790.YorN 791Indicates whether an unprivileged install will occur. 792The user, group, permissions, and file flags, will not be set on 793the installed item; instead the information will be appended to 794a file called 795.Pa METALOG 796in 797.Sy DESTDIR . 798The contents of 799.Pa METALOG 800is used during the generation of the distribution tar files to ensure 801that the appropriate file ownership is stored. 802.DFLTn 803. 804.It Sy MKUPDATE 805.YorN 806Indicates whether all install operations intended to write to 807.Sy DESTDIR 808will compare file timestamps before installing, and skip the install 809phase if the destination files are up-to-date. 810This also has implications on full builds (see next subsection). 811.DFLTn 812. 813.It Sy MKX11 814.YorN 815Indicates whether X11 is built and installed 816(by descending into 817.Pa src/external/mit/xorg ) . 818.DFLTn 819.Pp 820. 821.It Sy MKX11FONTS 822.YorN 823If 824.Dq no , 825do not build and install the X fonts. 826.DFLTy 827. 828.It Sy MKX11MOTIF 829.YorN 830If 831.Dq yes , 832build the native Xorg libGLw with Motif stubs. 833.DFLTn 834. 835.It Sy MKYP 836.YorN 837Indicates whether the YP (NIS) infrastructure 838(libraries and support programs) is built. 839.DFLTy 840. 841.It Sy MKZFS 842.YorN 843Indicates whether the ZFS kernel module and the utilities and 844libraries used to manage the ZFS system are to be built. 845.DFLTy 846on i386 and amd64, 847.Dq no 848on other architectures. 849. 850.It Sy OBJMACHINE 851If defined, creates objdirs of the form 852.Pa obj. Ns Sy MACHINE , 853where 854.Sy MACHINE 855is the current architecture (as per 856.Sq "uname -m" ) . 857. 858.It Sy RELEASEDIR 859If set, specifies the directory to which a 860.Xr release 7 861layout will be written at the end of a 862.Dq make release . 863.DFLTu 864.Pp 865.Em Note : 866.Sy build.sh 867will provide a default of 868.Pa releasedir 869(in the top-level 870.Sy .OBJDIR ) 871unless run in 872.Sq expert 873mode 874. 875.It Sy TOOLDIR 876Directory to hold the host tools, once built. 877This directory should be unique to a given host system and 878.Nx 879source tree. 880(However, multiple targets may share the same 881.Sy TOOLDIR ; 882the target-dependent files have unique names.) 883If unset, a default based 884on the 885.Xr uname 1 886information of the host platform will be created in the 887.Sy .OBJDIR 888of 889.Pa src . 890.DFLTu 891. 892.It Sy USE_FORT 893Indicates whether the so-called 894.Dq FORTIFY_SOURCE 895.Xr security 7 896extensions are enabled; see 897.Xr ssp 3 898for details. 899This imposes some performance penalty. 900.DFLTn 901. 902.It Sy USE_HESIOD 903.YorN 904Indicates whether Hesiod support is 905enabled in the various applications that support it. 906If 907.Sy MKHESIOD=no , 908.Sy USE_HESIOD 909will also be forced to 910.Dq no . 911.DFLTy 912. 913.It Sy USE_INET6 914.YorN 915Indicates whether INET6 (IPv6) support is 916enabled in the various applications that support it. 917If 918.Sy MKINET6=no , 919.Sy USE_INET6 920will also be forced to 921.Dq no . 922.DFLTy 923. 924.It Sy USE_JEMALLOC 925.YorN 926Indicates whether the 927.Em jemalloc 928allocator 929.Pq which is designed for improved performance with threaded applications 930is used instead of the 931.Em phkmalloc 932allocator 933.Pq that was the default until Nx 5.0 . 934.DFLTy 935. 936.It Sy USE_KERBEROS 937.YorN 938Indicates whether Kerberos v5 support is 939enabled in the various applications that support it. 940If 941.Sy MKKERBEROS=no , 942.Sy USE_KERBEROS 943will also be forced to 944.Dq no . 945.DFLTy 946. 947.It Sy USE_LDAP 948.YorN 949Indicates whether LDAP support is 950enabled in the various applications that support it. 951If 952.Sy MKLDAP=no , 953.Sy USE_LDAP 954will also be forced to 955.Dq no . 956.DFLTy 957. 958.It Sy USE_PAM 959.YorN 960Indicates whether 961.Xr pam 8 962support is enabled in the various applications that support it. 963If 964.Sy MKPAM=no , 965.Sy USE_PAM 966will also be forced to 967.Dq no . 968.DFLTy 969. 970.It Sy USE_SKEY 971.YorN 972Indicates whether S/key support is 973enabled in the various applications that support it. 974If 975.Sy MKSKEY=no , 976.Sy USE_SKEY 977will also be forced to 978.Dq no . 979.DFLTy 980.Pp 981This is mutually exclusive to 982.Sy USE_PAM!=no . 983. 984.It Sy USE_SSP 985.YorN 986Indicates whether GCC stack-smashing protection (SSP) support, 987which detects stack overflows and aborts the program, 988is enabled. 989This imposes some performance penalty. 990.DFLTn 991. 992.It Sy USE_YP 993.YorN 994Indicates whether YP (NIS) support is 995enabled in the various applications that support it. 996If 997.Sy MKYP=no , 998.Sy USE_YP 999will also be forced to 1000.Dq no . 1001.DFLTy 1002. 1003.It Sy USETOOLS 1004Indicates whether the tools specified by 1005.Sy TOOLDIR 1006should be used as part of a build in progress. 1007Must be set to 1008.Dq yes 1009if cross-compiling. 1010.Bl -tag -width "never" 1011.It Sy yes 1012Use the tools from 1013.Sy TOOLDIR . 1014.It Sy no 1015Do not use the tools from 1016.Sy TOOLDIR , 1017but refuse to build native compilation tool components that are 1018version-specific for that tool. 1019.It Sy never 1020Do not use the tools from 1021.Sy TOOLDIR , 1022even when building native tool components. 1023This is similar to the traditional 1024.Nx 1025build method, but does 1026.Em not 1027verify that the compilation tools in use are up-to-date enough in order 1028to build the tree successfully. 1029This may cause build or runtime problems when building the whole 1030.Nx 1031source tree. 1032.El 1033.DFLT 1034.Dq yes 1035if building all or part of a whole 1036.Nx 1037source tree (detected automatically); 1038.Dq no 1039otherwise (to preserve traditional semantics of the 1040.Aq bsd.*.mk 1041.Xr make 1 1042include files). 1043. 1044.El 1045. 1046.Ss pkgsrc system variables 1047. 1048Please see the pkgsrc guide at 1049.Lk http://www.netbsd.org/Documentation/pkgsrc/ 1050or 1051.Pa pkgsrc/doc/pkgsrc.txt 1052for more variables used internally by the package system and 1053.Pa ${PKGSRCDIR}/mk/defaults/mk.conf 1054for package-specific examples. 1055. 1056.Sh FILES 1057.Bl -tag -width /etc/mk.conf 1058. 1059.It Pa /etc/mk.conf 1060This file. 1061. 1062.It Pa ${PKGSRCDIR}/mk/defaults/mk.conf 1063Examples for settings regarding the pkgsrc collection. 1064.El 1065. 1066.Sh SEE ALSO 1067.Xr make 1 , 1068.Pa /usr/share/mk/bsd.README , 1069.Pa pkgsrc/doc/pkgsrc.txt , 1070.Lk http://www.netbsd.org/Documentation/pkgsrc/ 1071.Sh HISTORY 1072The 1073.Nm 1074file appeared in 1075.Nx 1.2 . 1076