1.\" $OpenBSD: mk.conf.5,v 1.26 2014/04/22 11:15:05 henning 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: April 22 2014 $ 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 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 MANDIR 136Base path for manual installation. 137.Bq Pa /usr/share/man/man 138.It Ev MANGRP 139Manual group. 140.Bq bin 141.It Ev MANMODE 142Manual mode. 143.Bq Ev ${NONBINMODE} 144.It Ev MANOWN 145Manual owner. 146.Bq root 147.It Ev NLSDIR 148Base path for National Language Support files installation. 149.Bq Pa /usr/share/nls 150.It Ev NLSGRP 151National Language Support files group. 152.Bq bin 153.It Ev NLSMODE 154National Language Support files mode. 155.Bq Ev ${NONBINMODE} 156.It Ev NLSOWN 157National Language Support files owner. 158.Bq root 159.It Ev NONBINMODE 160Mode for non-executable files. 161.Bq 444 162.It Ev XOBJDIR 163The real path to the 'obj' tree for building the X Window System. 164.Bq Pa /usr/xobj 165.It Ev XSRCDIR 166The real path to the X Window System sources. 167.Bq Pa /usr/xenocara 168.El 169.Sh ADDITIONAL VARIABLES 170Additionally, the following variables may be set by 171.Aq bsd.own.mk 172or in a make configuration file to modify the behaviour of the system build 173process (default values are in brackets along with comments, if set by 174.Aq bsd.own.mk ) : 175.Bl -tag -width GLOBAL_AUTOCONF_CACHE 176.It Ev DEBUG 177Add 178.Fl g 179to assembly, C compiler and linking passes. 180Also doesn't set 181.Ev INSTALL_STRIP 182to 183.Fl s 184per default if defined. 185.It Ev DEBUGLIBS 186Create libraries with 187.Fl g 188debug information, and install them in 189.Pa /usr/lib/debug . 190.It Ev GLOBAL_AUTOCONF_CACHE 191Set to the name of a file that all cached GNU autoconf test results will be 192saved in. 193Reduces redundant tests. 194Be careful! 195Redundant tests may not be redundant when installing substantially 196updated GNU programs. 197.Bq yes 198.It Ev NOPIC 199Do not build shared libraries. 200.It Ev NOPIE 201Do not build PIE objects or executables. 202.It Ev NOPROFILE 203Do not build profiled versions of system libraries. 204.It Ev PIPE 205If set to 206.Qq Ev -pipe , 207.Xr gcc 1 208will be given the 209.Fl pipe 210option which can speed up compiles on machines with memory to spare. 211Instead of using temp files, 212.Xr gcc 1 213uses pipes for the temporary data. 214.It Ev SKEY 215Compile in support for S/key authentication. 216.Bq yes; set unconditionally 217.It Ev SKIPDIR 218A space separated list of directories, 219relative to 220.Ev BSDSRCDIR , 221to be skipped during "make build". 222.It Ev SUDO 223Command run by 224.Xr make 1 225when doing certain operations requiring root privileges 226(e.g. the "make install" portion of "make build"). 227If set to 228.Ev /usr/bin/sudo , 229this allows one to run "make build" as a user other than root 230(assuming sudo is set up for that user). 231.It Ev SYS_INCLUDE 232Copy or symlink kernel include files into 233.Pa /usr/include . 234Possible values are "symlinks" or "copies" 235(which is the same as the variable being unset). 236.It Ev WARNINGS 237Adds appropriate warning flags (defined in 238.Ev CDIAGFLAGS , 239e.g.\& 240.Fl Wall . . . ) 241to compiles. 242.Bq no 243.It Ev XENOCARA_BUILD_DRI 244Build X with Direct Rendering Infrastructure (DRI) support, 245providing some hardware acceleration. 246This is on by default for amd64/i386 architectures. 247.It Ev XENOCARA_RERUN_AUTOCONF 248Forces X builds to re-run automake and autoconf in each module before 249configuring them. 250This option requires that the automake, autoconf and libtool 251packages are installed. 252.Bq no 253.El 254.Sh FILES 255.Bl -tag -width XXXXXXXXXXXXXXX -compact 256.It /etc/mk.conf 257System make configuration file. 258.It /usr/share/mk/* 259System include make files. 260.El 261.Sh SEE ALSO 262.Xr make 1 , 263.Xr bsd.port.mk 5 , 264.Xr ports 7 265.Sh HISTORY 266The 267.Nm 268manual page first appeared in 269.Ox 3.4 . 270