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