make.conf revision 92412
1263105Sgjb# $FreeBSD: head/share/examples/etc/make.conf 92412 2002-03-16 15:14:41Z markm $
2263105Sgjb#
3263105Sgjb# NOTE:  Please would any committer updating this file also update the
4263105Sgjb# make.conf(5) manual page, if necessary, which is located in
5263105Sgjb# src/share/man/man5/make.conf.5.
6263105Sgjb#
7263105Sgjb# /etc/make.conf, if present, will be read by make (see
8263105Sgjb# /usr/share/mk/sys.mk).  It allows you to override macro definitions
9263105Sgjb# to make without changing your source tree, or anything the source
10263105Sgjb# tree installs.
11263105Sgjb#
12263105Sgjb# This file must be in valid Makefile syntax.
13263105Sgjb#
14263105Sgjb# There are additional things you can put into /etc/make.conf.
15263105Sgjb# You have to find those in the Makefiles and documentation of
16263105Sgjb# the source tree.
17263105Sgjb#
18263105Sgjb#
19263105Sgjb# The CPUTYPE variable controls which processor should be targetted for
20263105Sgjb# generated code.  This controls processor-specific optimizations in
21263105Sgjb# certain code (currently only OpenSSL) as well as modifying the value
22263105Sgjb# of CFLAGS to contain the appropriate optimization directive to gcc.
23263105Sgjb# The automatic setting of CFLAGS may be overridden using the
24263105Sgjb# NO_CPU_CFLAGS variable below.
25263105Sgjb# Currently the following CPU types are recognised:
26263105Sgjb#   Intel x86 architecture:
27263105Sgjb#       (AMD CPUs)	k7 k6-2 k6 k5
28263105Sgjb#       (Intel CPUs)	p4 p3 p2 i686 i586/mmx i586 i486 i386
29263105Sgjb#   Alpha/AXP architecture: ev6 pca56 ev56 ev5 ev45 ev4
30263105Sgjb#   Intel ia64 architecture: itanium
31263105Sgjb#
32263105Sgjb#CPUTYPE=i686
33263105Sgjb#NO_CPU_CFLAGS=	true	# Don't add -march=<cpu> to CFLAGS automatically
34263105Sgjb#NO_CPU_COPTFLAGS=true	# Don't add -march=<cpu> to COPTFLAGS automatically
35263105Sgjb#
36263105Sgjb# CFLAGS controls the compiler settings used when compiling C code.
37263105Sgjb# Note that optimization settings above -O (-O2, ...) are not recommended
38263105Sgjb# or supported for compiling the world or the kernel - please revert any
39263105Sgjb# nonstandard optimization settings to "-O" before submitting bug reports
40263105Sgjb# to the developers.
41263105Sgjb# Note also that at this time the -O2 setting is known to produce BROKEN
42263105Sgjb# CODE on the Alpha platform.
43263105Sgjb#
44263105Sgjb#CFLAGS= -O -pipe
45263105Sgjb#
46263105Sgjb# CXXFLAGS controls the compiler settings used when compiling C++ code.
47263105Sgjb# Note that CXXFLAGS is initially set to the value of CFLAGS.  If you wish
48263105Sgjb# to add to CXXFLAGS value, "+=" must be used rather than "=".  Using "="
49263105Sgjb# alone will remove the often needed contents of CFLAGS from CXXFLAGS.
50263105Sgjb#
51263105Sgjb#CXXFLAGS+= -fmemoize-lookups -fsave-memoized
52263105Sgjb#
53263105Sgjb# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested
54263105Sgjb# for use in developing FreeBSD and testing changes.  They can be used by
55263105Sgjb# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf.  -Wconversion is not
56263105Sgjb# included here due to compiler bugs, eg: mkdir()'s mode_t argument.
57263105Sgjb#
58263105Sgjb#BDECFLAGS=	-W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \
59263105Sgjb#		-Wcast-qual -Wchar-subscripts -Winline \
60263105Sgjb#		-Wmissing-prototypes -Wnested-externs -Wpointer-arith \
61263105Sgjb#		-Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
62263105Sgjb#
63263105Sgjb# To compile just the kernel with special optimizations, you should use
64263105Sgjb# this instead of CFLAGS (which is not applicable to kernel builds anyway).
65263105Sgjb# There is very little to gain by using higher optimization levels, and doing
66263105Sgjb# so can cause problems.
67263105Sgjb#
68263105Sgjb#COPTFLAGS= -O -pipe
69263105Sgjb#
70263105Sgjb# To build the system compiler such that it forces high optimization levels to
71263105Sgjb# a lower one.  GCC -O2+ is known to trigger known optimizer bugs at various
72263105Sgjb# times -- this is worse on the Alpha platform.  The value assigned here will
73263105Sgjb# be the highest optimization value used.
74263105Sgjb#WANT_FORCE_OPTIMIZATION_DOWNGRADE=1
75263105Sgjb#
76263105Sgjb# Compare before install
77263105Sgjb#INSTALL=install -C
78263105Sgjb#
79263105Sgjb# Mtree will follow symlinks
80263105Sgjb#MTREE_FOLLOWS_SYMLINKS= -L
81263105Sgjb#
82263105Sgjb# To enable installing suidperl with the setuid bit turned on
83263105Sgjb#ENABLE_SUIDPERL=	true
84263105Sgjb#
85263105Sgjb# To build ppp with normal permissions
86263105Sgjb#PPP_NOSUID=	true
87263105Sgjb#
88263105Sgjb# To enable installing ssh(1) with the setuid bit turned on
89263105Sgjb#ENABLE_SUID_SSH=	true
90263105Sgjb#
91263105Sgjb# To avoid building various parts of the base system:
92263105Sgjb#NO_CVS=	true	# do not build CVS
93263105Sgjb#NO_CXX=	true	# do not build C++ and friends
94#NO_BIND=	true	# do not build BIND
95#NO_FORTRAN=	true	# do not build g77 and related libraries
96#NO_GDB=	true	# do not build GDB
97#NO_I4B=	true	# do not build isdn4bsd package
98#NO_LPR=	true	# do not build lpr and related programs
99#NO_MAILWRAPPER=true	# do not build the mailwrapper(8) MTA selector
100#NO_MODULES=	true	# do not build modules with the kernel
101#NO_OBJC=	true	# do not build Objective C support
102#NO_OPENSSH=	true	# do not build OpenSSH
103#NO_OPENSSL=	true	# do not build OpenSSL (implies NO_OPENSSH)
104#NO_PERL=	true	# do not build perl5. Disables OpenSSL optimizations
105#NO_SENDMAIL=	true	# do not build sendmail and related programs
106#NO_SHAREDOCS=	true	# do not build the 4.4BSD legacy docs
107#NO_TCSH=	true	# do not build and install /bin/csh (which is tcsh)
108#NO_X=		true	# do not compile in XWindows support (e.g. doscmd)
109#NOCRYPT=	true	# do not build any crypto code
110#NOGAMES=	true	# do not build games (games/ subdir)
111#NOINFO=	true	# do not make or install info files
112#NOLIBC_R=	true	# do not build libc_r (re-entrant version of libc)
113#NOPERL=	true	# Deprecated version of NO_PERL
114#NOPROFILE=	true	# Avoid compiling profiled libraries
115#NOSECURE=	true	# do not build crypto code in secure/ subdir
116#NOSHARE=	true	# do not go into the share subdir
117#NOUUCP=	true	# do not build uucp related programs
118#
119# To build the OpenSSL manpages, uncomment the following.  These are not
120# built by default because they clobber a number of system manpages with
121# manpages describing parts of the OpenSSL toolkit, including passwd(1),
122# err(3), md5(3), and others.
123#
124#WANT_OPENSSL_MANPAGES=	true
125#
126# To build sys/modules when building the world (our old way of doing things)
127#MODULES_WITH_WORLD=true	# do not build modules when building kernel
128#
129# The list of modules to build instead of all of them.
130#MODULES_OVERRIDE=	linux ipfw
131#
132# The following controls building optional IDEA code in libcrypto and
133# certain ports.  Patents are involved - you must not use this unless
134# you either have a license or fall within patent 'fair use'
135# provisions.
136#
137# *** It is YOUR RESPONSIBILITY to determine if you can use this! ***
138#
139# IDEA is patented in the USA and many european countries - thought to
140# be OK to use for any non-commercial use.  This is optional.
141#MAKE_IDEA=	YES	# IDEA (128 bit symmetric encryption)
142#
143# To avoid running MAKEDEV all on /dev during install set NO_MAKEDEV_RUN.
144# If you don't want to install MAKEDEV set NO_MAKEDEV_INSTALL, this implies
145# NO_MAKEDEV_RUN.
146#NO_MAKEDEV_INSTALL=	true
147#NO_MAKEDEV_RUN=	true
148#
149# If you do not want unformatted manual pages to be compressed
150# when they are installed:
151#
152#NOMANCOMPRESS=	true
153#
154#
155# If you want the "compat" shared libraries installed as part of your normal
156# builds, uncomment these:
157#
158#COMPAT1X=	yes
159#COMPAT20=	yes
160#COMPAT21=	yes
161#COMPAT22=	yes
162#COMPAT3X=	yes
163#COMPAT4X=	yes
164#
165#
166# Default format for system documentation, depends on your printer.
167# Set this to "ascii" for simple printers or screen
168#
169#PRINTERDEVICE=	ps
170#
171#
172# How long to wait for a console keypress before booting the default kernel.
173# This value is approximately in milliseconds. Keypresses are accepted by the
174# BIOS before booting from disk, making it possible to give custom boot
175# parameters even when this is set to 0.
176#
177#BOOTWAIT=0
178#BOOTWAIT=30000
179#
180# By default, the system will always use the keyboard/video card as system
181# console.  However, the boot blocks may be dynamically configured to use a
182# serial port in addition to or instead of the keyboard/video console.
183#
184# By default we use COM1 as our serial console port *if* we're going to use
185# a serial port as our console at all.  Alter as necessary.
186#
187#   COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8
188#
189#BOOT_COMCONSOLE_PORT=	0x3F8
190#
191# The default serial console speed is 9600.  Set the speed to a larger value
192# for better interactive response.
193#
194#BOOT_COMCONSOLE_SPEED=	115200
195#
196# By default the 'pxeboot' loader retrieves the kernel via NFS.  Defining
197# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel
198# via TFTP.  This allows pxeboot to load a custom BOOTP diskless kernel yet
199# still mount the server's '/' (i.e. rather then load the server's kernel).
200#
201#LOADER_TFTP_SUPPORT= YES
202#
203#
204# Kerberos IV
205# If you want KerberosIV (KTH eBones), define this:
206#
207#MAKE_KERBEROS4=	yes
208#
209#
210# Kerberos 5
211# If you want Kerberos 5 (KTH Heimdal), define this:
212#
213#MAKE_KERBEROS5=	yes
214#
215#
216# Kerberos5
217# If you want to install MIT Kerberos5 port somewhere other than /usr/local,
218# define this (this is also used to tell ssh1 that kerberos is needed):
219#
220#KRB5_HOME=		/usr/local
221#
222#
223# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
224# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
225# information on CVSup and these files).  To use, do "make update" in /usr/src.
226#
227#SUP_UPDATE=     yes
228#
229#SUP=            /usr/local/bin/cvsup
230#SUPFLAGS=       -g -L 2
231#SUPHOST=        cvsup.uk.FreeBSD.org
232#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
233#PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
234#DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
235#
236# top(1) uses a hash table for the user names.  The size of this hash
237# can be tuned to match the number of local users.  The table size should
238# be a prime number approximately twice as large as the number of lines in
239# /etc/passwd.  The default number is 20011.
240#
241#TOP_TABLE_SIZE= 101
242#
243# Documentation
244#
245# The list of languages and encodings to build and install
246#
247#DOC_LANG=	en_US.ISO8859-1 ru_RU.KOI8-R
248#
249#
250# sendmail
251#
252# The following sets the default m4 configuration file to use at
253# install time.  Use with caution as a make install will overwrite
254# any existing /etc/mail/sendmail.cf.  Note that SENDMAIL_CF is now
255# deprecated.  The value should be a fully qualified path name.
256#
257#SENDMAIL_MC=/etc/mail/myconfig.mc
258#
259# If you need to build additional .cf files during a make buildworld,
260# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
261#
262#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc
263#
264# Setting the following variable modifies the flags passed to m4 when
265# building a .cf file from a .mc file.  It can be used to enable
266# features disabled by default.
267#
268#SENDMAIL_M4_FLAGS=
269#
270# Setting the following variables modifies the build environment for
271# sendmail and its related utilities. For example, SASL support can be
272# added with settings such as:
273#
274#	SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
275#	SENDMAIL_LDFLAGS=-L/usr/local/lib
276#	SENDMAIL_LDADD=-lsasl
277#
278# Note: If you are using Cyrus SASL with other applications which require
279#	access to the sasldb file, you should add '-D_FFR_UNSAFE_SASL' to
280#	SENDMAIL_CFLAGS.  Also, add the following to your sendmail.mc file:
281#
282#	define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLFile')
283#
284#SENDMAIL_CFLAGS=
285#SENDMAIL_LDFLAGS=
286#SENDMAIL_LDADD=
287#SENDMAIL_DPADD=
288#
289# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a
290# set-user-ID root binary instead of a set-group-ID smmsp binary and will
291# prevent the installation of /etc/mail/submit.cf.
292# This is a deprecated mode of operation.  See etc/mail/README for more
293# information.
294#
295#SENDMAIL_SET_USER_ID=
296