xref: /openbsd-src/share/man/man5/mk.conf.5 (revision 2b0358df1d88d06ef4139321dd05bd5e05d91eaf)
1.\"	$OpenBSD: mk.conf.5,v 1.18 2008/06/15 20:48:34 jmc Exp $
2.\"
3.\" Copyright (c) 2003 Jason McIntyre
4.\"
5.\" All rights reserved.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\"
16.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
17.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
20.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26.\"
27.Dd $Mdocdate: June 15 2008 $
28.Dt MK.CONF 5
29.Os
30.Sh NAME
31.Nm mk.conf
32.Nd system-specific configuration parameters
33.Sh SYNOPSIS
34.Fd .include <bsd.own.mk>
35.Sh DESCRIPTION
36To get system-specific configuration parameters,
37.Aq bsd.own.mk
38will try to include the file specified by the
39.Ev MAKECONF
40variable.
41If
42.Ev MAKECONF
43is not set, or no such file exists, the system make configuration file
44.Pa /etc/mk.conf
45is included, if it exists.
46By default, this file does not exist,
47and must be created from scratch.
48For more information on how the make process works,
49and details of the format of make files,
50see
51.Xr make 1 .
52.Pp
53.Aq bsd.own.mk
54is generally useful when building Makefiles, so that
55they use the same default owners, etc. as the rest of the tree.
56These files may define any of the variables described below.
57Additionally, see
58.Xr bsd.port.mk 5
59for a list of variables that can be set by the
60.Xr ports 7
61subsystem.
62.Sh VARIABLES
63The following variables are set by
64.Aq bsd.own.mk ,
65if they are not already defined.
66Defaults are in brackets.
67.Bl -tag -width INSTALL_STRIP
68.It Ev BINGRP
69Binary group.
70.Bq bin
71.It Ev BINMODE
72Binary mode.
73.Bq 555
74.It Ev BINOWN
75Binary owner.
76.Bq root
77.It Ev BSDOBJDIR
78The real path to the system 'obj' tree, so that 'make obj' will work correctly.
79.Bq Pa /usr/obj
80.It Ev BSDSRCDIR
81The real path to the system sources, so that 'make obj' will work correctly.
82.Bq Pa /usr/src
83.It Ev DIRMODE
84Mode for new directories.
85.Bq 755
86.It Ev DOCDIR
87Base path for system documentation (e.g. PSD, USD, etc.) installation.
88.Bq Pa /usr/share/doc
89.It Ev DOCGRP
90Documentation group.
91.Bq bin
92.It Ev DOCMODE
93Documentation mode.
94.Bq Ev ${NONBINMODE}
95.It Ev DOCOWN
96Documentation owner.
97.Bq root
98.It Ev INSTALL_COPY
99The old usage of this flag is obsolescent, since
100.Xr install 1
101now copies by default.
102However, it can also be used to specify that a file not be copied unless it
103is different (via the
104.Fl p
105option).
106See
107.Xr install 1
108for details.
109This is to be used when building an install script so that the entire
110system can either be installed with copies, or copy-if-different using a
111single knob.
112.Bq Fl c
113.It Ev INSTALL_STRIP
114The flag passed to the install program to cause the binary to be stripped.
115This is to be used when building an install script so that the entire
116system can be made stripped/not-stripped using a single knob.
117Note that
118.Ev INSTALL_STRIP
119is not set if
120.Ev ${DEBUG}
121is defined.
122.Bq Fl s
123.It Ev LIBDIR
124Base path for library installation.
125.Bq Pa /usr/lib
126.It Ev LIBGRP
127Library group.
128.Bq Ev ${BINGRP}
129.It Ev LIBMODE
130Library mode.
131.Bq Ev ${NONBINMODE}
132.It Ev LIBOWN
133Library owner.
134.Bq Ev ${BINOWN}
135.It Ev LINTLIBDIR
136Base path for
137.Xr lint 1
138library installation.
139.Bq Pa /usr/libdata/lint
140.It Ev MANDIR
141Base path for manual installation.
142.Bq Pa /usr/share/man/cat
143.It Ev MANGRP
144Manual group.
145.Bq bin
146.It Ev MANMODE
147Manual mode.
148.Bq Ev ${NONBINMODE}
149.It Ev MANOWN
150Manual owner.
151.Bq root
152.It Ev NLSDIR
153Base path for National Language Support files installation.
154.Bq Pa /usr/share/nls
155.It Ev NLSGRP
156National Language Support files group.
157.Bq bin
158.It Ev NLSMODE
159National Language Support files mode.
160.Bq Ev ${NONBINMODE}
161.It Ev NLSOWN
162National Language Support files owner.
163.Bq root
164.It Ev NONBINMODE
165Mode for non-executable files.
166.Bq 444
167.It Ev XOBJDIR
168The real path to the 'obj' tree for building the X Window System.
169.Bq Pa /usr/xobj
170.It Ev XSRCDIR
171The real path to the X Window System sources.
172.Bq Pa /usr/xenocara
173.El
174.Sh ADDITIONAL VARIABLES
175Additionally, the following variables may be set by
176.Aq bsd.own.mk
177or in a make configuration file to modify the behaviour of the system build
178process (default values are in brackets along with comments, if set by
179.Aq bsd.own.mk ) :
180.Bl -tag -width GLOBAL_AUTOCONF_CACHE
181.It Ev DEBUG
182Add
183.Fl g
184to assembly, C compiler and linking passes.
185Also doesn't set
186.Ev INSTALL_STRIP
187to
188.Fl s
189per default if defined.
190.It Ev DEBUGLIBS
191Create libraries with
192.Fl g
193debug information, and install them in
194.Pa /usr/lib/debug .
195.It Ev GLOBAL_AUTOCONF_CACHE
196Set to the name of a file that all cached GNU autoconf test results will be
197saved in.
198Reduces redundant tests.
199Be careful!
200Redundant tests may not be redundant when installing substantially
201updated GNU programs.
202.It Ev MANPS
203Define to have PostScript manual pages generated.
204.It Ev MANZ
205Compress manual pages at installation time.
206.It Ev NOPIC
207Do not build PIC versions of system libraries,
208and do not build shared libraries.
209.It Ev NOPROFILE
210Do not build profiled versions of system libraries.
211.It Ev PIPE
212If set to
213.Qq Ev -pipe ,
214.Xr gcc 1
215will be given the
216.Fl pipe
217option which can speed up compiles on machines with memory to spare.
218Instead of using temp files,
219.Xr gcc 1
220uses pipes for the temporary data.
221.It Ev SKEY
222Compile in support for S/key authentication.
223.Bq yes; set unconditionally
224.It Ev SKIPDIR
225A space separated list of directories,
226relative to
227.Ev BSDSRCDIR ,
228to be skipped during "make build".
229.It Ev SUDO
230Command run by
231.Xr make 1
232when doing certain operations requiring root privileges
233(e.g. the "make install" portion of "make build").
234If set to
235.Ev /usr/bin/sudo ,
236this allows one to run "make build" as a user other than root
237(assuming sudo is set up for that user).
238.It Ev SYS_INCLUDE
239Copy or symlink kernel include files into
240.Pa /usr/include .
241Possible values are "symlinks" or "copies"
242(which is the same as the variable being unset).
243.It Ev WANTLINT
244Build lint libraries.
245.Bq no
246.It Ev WARNINGS
247Adds appropriate warning flags (defined in
248.Ev CDIAGFLAGS ,
249e.g.\&
250.Fl Wall . . . )
251to compiles.
252.Bq no
253.It Ev XENOCARA_BUILD_DRI
254Build X with Direct Rendering Infrastructure (DRI) support,
255providing some hardware acceleration.
256This is on by default for amd64/i386 architectures.
257.It Ev XENOCARA_RERUN_AUTOCONF
258Forces X builds to re-run automake and autoconf in each module before
259configuring them.
260This option requires that the automake, autoconf and libtool
261packages are installed.
262.Bq no
263.El
264.Sh FILES
265.Bl -tag -width XXXXXXXXXXXXXXX -compact
266.It /etc/mk.conf
267System make configuration file.
268.It /usr/share/mk/*
269System include make files.
270.El
271.Sh SEE ALSO
272.Xr make 1 ,
273.Xr bsd.port.mk 5 ,
274.Xr ports 7
275.Sh HISTORY
276The
277.Nm
278manual page first appeared in
279.Ox 3.4 .
280