make.conf revision 124694
1132718Skan# $FreeBSD: head/share/examples/etc/make.conf 124694 2004-01-18 22:14:23Z obrien $
2132718Skan#
3132718Skan# NOTE:  Please would any committer updating this file also update the
4132718Skan# make.conf(5) manual page, if necessary, which is located in
5132718Skan# src/share/man/man5/make.conf.5.
6132718Skan#
7132718Skan# /etc/make.conf, if present, will be read by make (see
8132718Skan# /usr/share/mk/sys.mk).  It allows you to override macro definitions
9132718Skan# to make without changing your source tree, or anything the source
10132718Skan# tree installs.
11132718Skan#
12132718Skan# This file must be in valid Makefile syntax.
13132718Skan#
14132718Skan# There are additional things you can put into /etc/make.conf.
15132718Skan# You have to find those in the Makefiles and documentation of
16132718Skan# the source tree.
17132718Skan#
18132718Skan#
19132718Skan# The CPUTYPE variable controls which processor should be targeted for
20132718Skan# generated code.  This controls processor-specific optimizations in
21132718Skan# certain code (currently only OpenSSL) as well as modifying the value
22132718Skan# of CFLAGS to contain the appropriate optimization directive to gcc.
23132718Skan# The automatic setting of CFLAGS may be overridden using the
24132718Skan# NO_CPU_CFLAGS variable below.
25132718Skan# Currently the following CPU types are recognized:
26132718Skan#   Intel x86 architecture:
27132718Skan#       (AMD CPUs)	athlon-mp athlon-xp athlon-4 athlon-tbird athlon k6-3
28132718Skan#			k6-2 k6 k5
29132718Skan#       (Intel CPUs)	p4 p3 p2 i686 i586/mmx i586 i486 i386
30132718Skan#   Alpha/AXP architecture: ev67 ev6 pca56 ev56 ev5 ev45 ev4
31132718Skan#   Intel ia64 architecture: itanium
32132718Skan#
33132718Skan# (?= allows to buildworld for a different CPUTYPE.)
34132718Skan#
35132718Skan#CPUTYPE?=i686
36132718Skan#NO_CPU_CFLAGS=	true	# Don't add -march=<cpu> to CFLAGS automatically
37132718Skan#NO_CPU_COPTFLAGS=true	# Don't add -march=<cpu> to COPTFLAGS automatically
38132718Skan#
39132718Skan# CFLAGS controls the compiler settings used when compiling C code.
40132718Skan# Note that optimization settings above -O (-O2, ...) are not recommended
41132718Skan# or supported for compiling the world or the kernel - please revert any
42132718Skan# nonstandard optimization settings to "-O" before submitting bug reports
43132718Skan# without patches to the developers.
44132718Skan# Note also that at this time the -O2 setting is known to produce BROKEN
45132718Skan# CODE due to bugs in FreeBSD code.
46132718Skan#
47132718Skan#CFLAGS= -O -pipe
48132718Skan#
49132718Skan# CXXFLAGS controls the compiler settings used when compiling C++ code.
50132718Skan# Note that CXXFLAGS is initially set to the value of CFLAGS.  If you wish
51132718Skan# to add to CXXFLAGS value, "+=" must be used rather than "=".  Using "="
52132718Skan# alone will remove the often needed contents of CFLAGS from CXXFLAGS.
53132718Skan#
54132718Skan#CXXFLAGS+= -fmemoize-lookups -fsave-memoized
55132718Skan#
56132718Skan# MAKE_SHELL controls the shell used internally by make(1) to process the
57132718Skan# command scripts in makefiles.  Three shells are supported, sh, ksh, and
58132718Skan# csh.  Using sh is most common, and advised.  Using ksh *may* work, but is
59132718Skan# not guaranteed to.  Using csh is absurd.  The default is to use sh.
60132718Skan#
61132718Skan#MAKE_SHELL?=sh
62132718Skan#
63132718Skan# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested
64132718Skan# for use in developing FreeBSD and testing changes.  They can be used by
65132718Skan# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf.  -Wconversion is not
66132718Skan# included here due to compiler bugs, e.g., mkdir()'s mode_t argument.
67132718Skan#
68132718Skan#BDECFLAGS=	-W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \
69132718Skan#		-Wcast-qual -Wchar-subscripts -Winline \
70132718Skan#		-Wmissing-prototypes -Wnested-externs -Wpointer-arith \
71132718Skan#		-Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
72132718Skan#
73132718Skan# To compile just the kernel with special optimizations, you should use
74132718Skan# this instead of CFLAGS (which is not applicable to kernel builds anyway).
75132718Skan# There is very little to gain by using higher optimization levels, and doing
76132718Skan# so can cause problems.
77132718Skan#
78132718Skan#COPTFLAGS= -O -pipe
79132718Skan#
80132718Skan# To build the system compiler such that it forces high optimization levels to
81132718Skan# a lower one.  GCC -O2+ is known to trigger known optimizer bugs at various
82132718Skan# times -- this is worse on the Alpha platform.  The value assigned here will
83132718Skan# be the highest optimization value used.
84132718Skan#WANT_FORCE_OPTIMIZATION_DOWNGRADE=1
85132718Skan#
86132718Skan# Compare before install
87132718Skan#INSTALL=install -C
88132718Skan#
89132718Skan# Mtree will follow symlinks
90132718Skan#MTREE_FOLLOWS_SYMLINKS= -L
91132718Skan#
92132718Skan# To build ppp with normal permissions
93132718Skan#PPP_NOSUID=	true
94132718Skan#
95132718Skan# To enable installing ssh(1) with the setuid bit turned on
96132718Skan#ENABLE_SUID_SSH=	true
97132718Skan#
98132718Skan# To enable installing newgrp(1) with the setuid bit turned on.
99132718Skan# Without the setuid bit, newgrp cannot change users' groups.
100132718Skan#ENABLE_SUID_NEWGRP=	true
101132718Skan#
102132718Skan# To avoid building various parts of the base system:
103132718Skan#NO_CVS=	true	# do not build CVS
104132718Skan#NO_CXX=	true	# do not build C++ and friends
105132718Skan#NO_BIND=	true	# do not build BIND
106132718Skan#NO_FORTRAN=	true	# do not build g77 and related libraries
107132718Skan#NO_GDB=	true	# do not build GDB
108132718Skan#NO_I4B=	true	# do not build isdn4bsd package
109132718Skan#NO_IPFILTER=	true	# do not build IP Filter package
110132718Skan#NO_KERBEROS=	true	# do not build and install Kerberos 5 (KTH Heimdal)
111132718Skan#NO_LPR=	true	# do not build lpr and related programs
112132718Skan#NO_MAILWRAPPER=true	# do not build the mailwrapper(8) MTA selector
113132718Skan#NO_MODULES=	true	# do not build modules with the kernel
114132718Skan#NO_OBJC=	true	# do not build Objective C support
115132718Skan#NO_OPENSSH=	true	# do not build OpenSSH
116132718Skan#NO_OPENSSL=	true	# do not build OpenSSL (implies NO_KERBEROS and
117132718Skan#			  NO_OPENSSH)
118132718Skan#NO_SENDMAIL=	true	# do not build sendmail and related programs
119132718Skan#NO_SHAREDOCS=	true	# do not build the 4.4BSD legacy docs
120132718Skan#NO_TCSH=	true	# do not build and install /bin/csh (which is tcsh)
121132718Skan#NO_X=		true	# do not compile in XWindows support (e.g. doscmd)
122132718Skan#NOCRYPT=	true	# do not build any crypto code
123132718Skan#NOGAMES=	true	# do not build games (games/ subdir)
124132718Skan#NOINFO=	true	# do not make or install info files
125132718Skan#NOLIBC_R=	true	# do not build libc_r (re-entrant version of libc)
126132718Skan#NOMAN=		true	# do not build manual pages
127132718Skan#NOPROFILE=	true	# Avoid compiling profiled libraries
128132718Skan#NOSHARE=	true	# do not go into the share subdir
129132718Skan#
130132718Skan# To build sys/modules when building the world (our old way of doing things)
131132718Skan#MODULES_WITH_WORLD=true	# do not build modules when building kernel
132132718Skan#
133132718Skan# The list of modules to build instead of all of them.
134132718Skan#MODULES_OVERRIDE=	linux ipfw
135132718Skan#
136132718Skan# If you always want to build the Linux ext2fs kernel module.
137132718Skan#WANT_EXT2FS_MODULE=yes
138132718Skan#
139132718Skan# The following controls building optional IDEA code in libcrypto and
140132718Skan# certain ports.  Patents are involved - you must not use this unless
141132718Skan# you either have a license or fall within patent 'fair use'
142132718Skan# provisions.
143132718Skan#
144132718Skan# *** It is YOUR RESPONSIBILITY to determine if you can use this! ***
145132718Skan#
146132718Skan# IDEA is patented in the USA and many European countries - thought to
147132718Skan# be OK to use for any non-commercial use.  This is optional.
148132718Skan#MAKE_IDEA=	YES	# IDEA (128 bit symmetric encryption)
149132718Skan#
150132718Skan# If you do not want unformatted manual pages to be compressed
151132718Skan# when they are installed:
152132718Skan#
153132718Skan#NOMANCOMPRESS=	true
154132718Skan#
155132718Skan#
156132718Skan# If you want the "compat" shared libraries installed as part of your normal
157132718Skan# builds, uncomment these:
158132718Skan#
159132718Skan#COMPAT1X=	yes
160132718Skan#COMPAT20=	yes
161132718Skan#COMPAT21=	yes
162132718Skan#COMPAT22=	yes
163132718Skan#COMPAT3X=	yes
164132718Skan#COMPAT4X=	yes
165132718Skan#
166132718Skan#
167132718Skan# Default format for system documentation, depends on your printer.
168132718Skan# Set this to "ascii" for simple printers or screen
169132718Skan#
170132718Skan#PRINTERDEVICE=	ps
171132718Skan#
172132718Skan#
173132718Skan# How long to wait for a console keypress before booting the default kernel.
174132718Skan# This value is approximately in milliseconds. Keypresses are accepted by the
175132718Skan# BIOS before booting from disk, making it possible to give custom boot
176132718Skan# parameters even when this is set to 0.
177132718Skan#
178132718Skan#BOOTWAIT=0
179132718Skan#BOOTWAIT=30000
180132718Skan#
181132718Skan# By default, the system will always use the keyboard/video card as system
182132718Skan# console.  However, the boot blocks may be dynamically configured to use a
183132718Skan# serial port in addition to or instead of the keyboard/video console.
184132718Skan#
185132718Skan# By default we use COM1 as our serial console port *if* we're going to use
186132718Skan# a serial port as our console at all.  Alter as necessary.
187132718Skan#
188132718Skan#   COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8
189132718Skan#
190132718Skan#BOOT_COMCONSOLE_PORT=	0x3F8
191132718Skan#
192132718Skan# The default serial console speed is 9600.  Set the speed to a larger value
193132718Skan# for better interactive response.
194132718Skan#
195132718Skan#BOOT_COMCONSOLE_SPEED=	115200
196132718Skan#
197132718Skan# By default the 'pxeboot' loader retrieves the kernel via NFS.  Defining
198132718Skan# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel
199132718Skan# via TFTP.  This allows pxeboot to load a custom BOOTP diskless kernel yet
200132718Skan# still mount the server's '/' (i.e. rather than load the server's kernel).
201132718Skan#
202132718Skan#LOADER_TFTP_SUPPORT= YES
203132718Skan#
204132718Skan#
205132718Skan# Kerberos 5 su (k5su)
206132718Skan# If you want to use the k5su utility, define this to have it installed
207132718Skan# set-user-ID.
208#ENABLE_SUID_K5SU=	yes
209#
210#
211# Kerberos5
212# If you want to install MIT Kerberos5 port somewhere other than /usr/local,
213# define this (this is also used to tell ssh1 that kerberos is needed):
214#
215#KRB5_HOME=		/usr/local
216#
217#
218# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
219# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
220# information on CVSup and these files).  To use, do "make update" in /usr/src.
221#
222#SUP_UPDATE=     yes
223#
224#SUP=            /usr/local/bin/cvsup
225#SUPFLAGS=       -g -L 2
226#SUPHOST=        cvsup.uk.FreeBSD.org
227#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
228#PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
229#DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
230#
231# top(1) uses a hash table for the user names.  The size of this hash
232# can be tuned to match the number of local users.  The table size should
233# be a prime number approximately twice as large as the number of lines in
234# /etc/passwd.  The default number is 20011.
235#
236#TOP_TABLE_SIZE= 101
237#
238# Documentation
239#
240# The list of languages and encodings to build and install
241#
242#DOC_LANG=	en_US.ISO8859-1 ru_RU.KOI8-R
243#
244#
245# sendmail
246#
247# The following sets the default m4 configuration file to use at
248# install time.  Use with caution as a make install will overwrite
249# any existing /etc/mail/sendmail.cf.  Note that SENDMAIL_CF is now
250# deprecated.  The value should be a fully qualified path name.
251#
252#SENDMAIL_MC=/etc/mail/myconfig.mc
253#
254# The following sets the default m4 configuration file for mail
255# submission to use at install time.  Use with caution as a make
256# install will overwrite any existing /etc/mail/submit.cf.  The
257# value should be a fully qualified path name.
258#
259#SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc
260#
261# If you need to build additional .cf files during a make buildworld,
262# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
263#
264#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc
265#
266# The following overrides the default location for the m4 configuration
267# files used to build a .cf file from a .mc file.
268#
269#SENDMAIL_CF_DIR=/usr/local/share/sendmail/cf
270#
271# Setting the following variable modifies the flags passed to m4 when
272# building a .cf file from a .mc file.  It can be used to enable
273# features disabled by default.
274#
275#SENDMAIL_M4_FLAGS=
276#
277# Setting the following variables modifies the build environment for
278# sendmail and its related utilities. For example, SASL support can be
279# added with settings such as:
280#
281#    with SASLv1:
282#	SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL
283#	SENDMAIL_LDFLAGS=-L/usr/local/lib
284#	SENDMAIL_LDADD=-lsasl
285#
286#    with SASLv2:
287#	SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2
288#	SENDMAIL_LDFLAGS=-L/usr/local/lib
289#	SENDMAIL_LDADD=-lsasl2
290#
291# Note: If you are using Cyrus SASL with other applications which require
292#	access to the sasldb file, you should add the following to your
293#	sendmail.mc file:
294#
295#	define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile')
296#
297#SENDMAIL_CFLAGS=
298#SENDMAIL_LDFLAGS=
299#SENDMAIL_LDADD=
300#SENDMAIL_DPADD=
301#
302# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a
303# set-user-ID root binary instead of a set-group-ID smmsp binary and will
304# prevent the installation of /etc/mail/submit.cf.
305# This is a deprecated mode of operation.  See etc/mail/README for more
306# information.
307#
308#SENDMAIL_SET_USER_ID=
309#
310# The permissions to use on alias and map databases generated using
311# /etc/mail/Makefile.  Defaults to 0640.
312#
313#SENDMAIL_MAP_PERMS=
314