xref: /netbsd-src/share/man/man5/mk.conf.5 (revision b7b7574d3bf8eeb51a1fa3977b59142ec6434a55)
1.\"	$NetBSD: mk.conf.5,v 1.69 2014/03/25 10:23:26 wiz 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 March 25, 2014
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.DFLTy
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/x11
817or
818.Pa src/external/mit/xorg
819depending on the value of
820.Sy X11FLAVOUR ) .
821.DFLTn
822.Pp
823.
824.It Sy MKX11FONTS
825.YorN
826If
827.Dq no ,
828do not build and install the X fonts.
829.DFLTy
830.
831.It Sy MKX11MOTIF
832.YorN
833If
834.Dq yes ,
835build the native Xorg libGLw with Motif stubs.
836.DFLTn
837.
838.It Sy MKYP
839.YorN
840Indicates whether the YP (NIS) infrastructure
841(libraries and support programs) is built.
842.DFLTy
843.
844.It Sy MKZFS
845.YorN
846Indicates whether the ZFS kernel module and the utilities and
847libraries used to manage the ZFS system are to be built.
848.DFLTy
849on i386 and amd64,
850.Dq no
851on other architectures.
852.
853.It Sy OBJMACHINE
854If defined, creates objdirs of the form
855.Pa obj. Ns Sy MACHINE ,
856where
857.Sy MACHINE
858is the current architecture (as per
859.Sq "uname -m" ) .
860.
861.It Sy RELEASEDIR
862If set, specifies the directory to which a
863.Xr release 7
864layout will be written at the end of a
865.Dq make release .
866.DFLTu
867.Pp
868.Em Note :
869.Sy build.sh
870will provide a default of
871.Pa releasedir
872(in the top-level
873.Sy .OBJDIR )
874unless run in
875.Sq expert
876mode
877.
878.It Sy TOOLDIR
879Directory to hold the host tools, once built.
880This directory should be unique to a given host system and
881.Nx
882source tree.
883(However, multiple targets may share the same
884.Sy TOOLDIR ;
885the target-dependent files have unique names.)
886If unset, a default based
887on the
888.Xr uname 1
889information of the host platform will be created in the
890.Sy .OBJDIR
891of
892.Pa src .
893.DFLTu
894.
895.It Sy USE_FORT
896Indicates whether the so-called
897.Dq FORTIFY_SOURCE
898.Xr security 7
899extensions are enabled; see
900.Xr ssp 3
901for details.
902This imposes some performance penalty.
903.DFLTn
904.
905.It Sy USE_HESIOD
906.YorN
907Indicates whether Hesiod support is
908enabled in the various applications that support it.
909If
910.Sy MKHESIOD=no ,
911.Sy USE_HESIOD
912will also be forced to
913.Dq no .
914.DFLTy
915.
916.It Sy USE_INET6
917.YorN
918Indicates whether INET6 (IPv6) support is
919enabled in the various applications that support it.
920If
921.Sy MKINET6=no ,
922.Sy USE_INET6
923will also be forced to
924.Dq no .
925.DFLTy
926.
927.It Sy USE_JEMALLOC
928.YorN
929Indicates whether the
930.Em jemalloc
931allocator
932.Pq which is designed for improved performance with threaded applications
933is used instead of the
934.Em phkmalloc
935allocator
936.Pq that was the default until Nx 5.0 .
937.DFLTy
938.
939.It Sy USE_KERBEROS
940.YorN
941Indicates whether Kerberos v5 support is
942enabled in the various applications that support it.
943If
944.Sy MKKERBEROS=no ,
945.Sy USE_KERBEROS
946will also be forced to
947.Dq no .
948.DFLTy
949.
950.It Sy USE_LDAP
951.YorN
952Indicates whether LDAP support is
953enabled in the various applications that support it.
954If
955.Sy MKLDAP=no ,
956.Sy USE_LDAP
957will also be forced to
958.Dq no .
959.DFLTy
960.
961.It Sy USE_PAM
962.YorN
963Indicates whether
964.Xr pam 8
965support is enabled in the various applications that support it.
966If
967.Sy MKPAM=no ,
968.Sy USE_PAM
969will also be forced to
970.Dq no .
971.DFLTy
972.
973.It Sy USE_SKEY
974.YorN
975Indicates whether S/key support is
976enabled in the various applications that support it.
977If
978.Sy MKSKEY=no ,
979.Sy USE_SKEY
980will also be forced to
981.Dq no .
982.DFLTy
983.Pp
984This is mutually exclusive to
985.Sy USE_PAM!=no .
986.
987.It Sy USE_SSP
988.YorN
989Indicates whether GCC stack-smashing protection (SSP) support,
990which detects stack overflows and aborts the program,
991is enabled.
992This imposes some performance penalty.
993.DFLTn
994.
995.It Sy USE_YP
996.YorN
997Indicates whether YP (NIS) support is
998enabled in the various applications that support it.
999If
1000.Sy MKYP=no ,
1001.Sy USE_YP
1002will also be forced to
1003.Dq no .
1004.DFLTy
1005.
1006.It Sy USETOOLS
1007Indicates whether the tools specified by
1008.Sy TOOLDIR
1009should be used as part of a build in progress.
1010Must be set to
1011.Dq yes
1012if cross-compiling.
1013.Bl -tag -width "never"
1014.It Sy yes
1015Use the tools from
1016.Sy TOOLDIR .
1017.It Sy no
1018Do not use the tools from
1019.Sy TOOLDIR ,
1020but refuse to build native compilation tool components that are
1021version-specific for that tool.
1022.It Sy never
1023Do not use the tools from
1024.Sy TOOLDIR ,
1025even when building native tool components.
1026This is similar to the traditional
1027.Nx
1028build method, but does
1029.Em not
1030verify that the compilation tools in use are up-to-date enough in order
1031to build the tree successfully.
1032This may cause build or runtime problems when building the whole
1033.Nx
1034source tree.
1035.El
1036.DFLT
1037.Dq yes
1038if building all or part of a whole
1039.Nx
1040source tree (detected automatically);
1041.Dq no
1042otherwise (to preserve traditional semantics of the
1043.Aq bsd.*.mk
1044.Xr make 1
1045include files).
1046.
1047.It Sy X11FLAVOUR
1048Picks which X11 distribution to cross-build with
1049.Nx .
1050Set to either
1051.Dq Xorg
1052or
1053.Dq XFree86 .
1054Only relevant if
1055.Sy MKX11!=no .
1056.Pp
1057.Em Default :
1058.Dq Xorg
1059on alpha, i386, macppc, shark and sparc64 platforms.
1060.Dq XFree86
1061on everything else.
1062.
1063.El
1064.
1065.Ss pkgsrc system variables
1066.
1067Please see the pkgsrc guide at
1068.Lk http://www.netbsd.org/Documentation/pkgsrc/
1069or
1070.Pa pkgsrc/doc/pkgsrc.txt
1071for more variables used internally by the package system and
1072.Pa ${PKGSRCDIR}/mk/defaults/mk.conf
1073for package-specific examples.
1074.
1075.Sh FILES
1076.Bl -tag -width /etc/mk.conf
1077.
1078.It Pa /etc/mk.conf
1079This file.
1080.
1081.It Pa ${PKGSRCDIR}/mk/defaults/mk.conf
1082Examples for settings regarding the pkgsrc collection.
1083.El
1084.
1085.Sh SEE ALSO
1086.Xr make 1 ,
1087.Pa /usr/share/mk/bsd.README ,
1088.Pa pkgsrc/doc/pkgsrc.txt ,
1089.Lk http://www.netbsd.org/Documentation/pkgsrc/
1090.Sh HISTORY
1091The
1092.Nm
1093file appeared in
1094.Nx 1.2 .
1095