make.conf revision 94297
19313Ssos# $FreeBSD: head/share/examples/etc/make.conf 94297 2002-04-09 18:25:44Z bmilekic $
29313Ssos#
39313Ssos# NOTE:  Please would any committer updating this file also update the
49313Ssos# make.conf(5) manual page, if necessary, which is located in
59313Ssos# src/share/man/man5/make.conf.5.
69313Ssos#
79313Ssos# /etc/make.conf, if present, will be read by make (see
89313Ssos# /usr/share/mk/sys.mk).  It allows you to override macro definitions
99313Ssos# to make without changing your source tree, or anything the source
109313Ssos# tree installs.
119313Ssos#
129313Ssos# This file must be in valid Makefile syntax.
139313Ssos#
149313Ssos# There are additional things you can put into /etc/make.conf.
159313Ssos# You have to find those in the Makefiles and documentation of
169313Ssos# the source tree.
179313Ssos#
189313Ssos#
199313Ssos# The CPUTYPE variable controls which processor should be targetted for
209313Ssos# generated code.  This controls processor-specific optimizations in
219313Ssos# certain code (currently only OpenSSL) as well as modifying the value
229313Ssos# of CFLAGS to contain the appropriate optimization directive to gcc.
239313Ssos# The automatic setting of CFLAGS may be overridden using the
249313Ssos# NO_CPU_CFLAGS variable below.
259313Ssos# Currently the following CPU types are recognised:
269313Ssos#   Intel x86 architecture:
279313Ssos#       (AMD CPUs)	k7 k6-2 k6 k5
2814331Speter#       (Intel CPUs)	p4 p3 p2 i686 i586/mmx i586 i486 i386
299313Ssos#   Alpha/AXP architecture: ev6 pca56 ev56 ev5 ev45 ev4
309313Ssos#   Intel ia64 architecture: itanium
319313Ssos#
3212458Sbde#CPUTYPE=i686
339313Ssos#NO_CPU_CFLAGS=	true	# Don't add -march=<cpu> to CFLAGS automatically
349313Ssos#NO_CPU_COPTFLAGS=true	# Don't add -march=<cpu> to COPTFLAGS automatically
359313Ssos#
369313Ssos# CFLAGS controls the compiler settings used when compiling C code.
3714331Speter# Note that optimization settings above -O (-O2, ...) are not recommended
3814331Speter# or supported for compiling the world or the kernel - please revert any
3912458Sbde# nonstandard optimization settings to "-O" before submitting bug reports
409313Ssos# to the developers.
4114331Speter# Note also that at this time the -O2 setting is known to produce BROKEN
429313Ssos# CODE on the Alpha platform.
439313Ssos#
449313Ssos#CFLAGS= -O -pipe
459313Ssos#
469313Ssos# CXXFLAGS controls the compiler settings used when compiling C++ code.
479313Ssos# Note that CXXFLAGS is initially set to the value of CFLAGS.  If you wish
4814331Speter# to add to CXXFLAGS value, "+=" must be used rather than "=".  Using "="
499313Ssos# alone will remove the often needed contents of CFLAGS from CXXFLAGS.
509313Ssos#
519313Ssos#CXXFLAGS+= -fmemoize-lookups -fsave-memoized
529313Ssos#
539313Ssos# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested
549313Ssos# for use in developing FreeBSD and testing changes.  They can be used by
5514331Speter# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf.  -Wconversion is not
569313Ssos# included here due to compiler bugs, eg: mkdir()'s mode_t argument.
579313Ssos#
589313Ssos#BDECFLAGS=	-W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \
599313Ssos#		-Wcast-qual -Wchar-subscripts -Winline \
609313Ssos#		-Wmissing-prototypes -Wnested-externs -Wpointer-arith \
619313Ssos#		-Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
6214331Speter#
639313Ssos# To compile just the kernel with special optimizations, you should use
649313Ssos# this instead of CFLAGS (which is not applicable to kernel builds anyway).
659313Ssos# There is very little to gain by using higher optimization levels, and doing
669313Ssos# so can cause problems.
679313Ssos#
689313Ssos#COPTFLAGS= -O -pipe
6914331Speter#
709313Ssos# To build the system compiler such that it forces high optimization levels to
719313Ssos# a lower one.  GCC -O2+ is known to trigger known optimizer bugs at various
729313Ssos# times -- this is worse on the Alpha platform.  The value assigned here will
739313Ssos# be the highest optimization value used.
749313Ssos#WANT_FORCE_OPTIMIZATION_DOWNGRADE=1
759313Ssos#
7614331Speter# Compare before install
779313Ssos#INSTALL=install -C
789313Ssos#
799313Ssos# Mtree will follow symlinks
809313Ssos#MTREE_FOLLOWS_SYMLINKS= -L
819313Ssos#
829313Ssos# To enable installing suidperl with the setuid bit turned on
8314331Speter#ENABLE_SUIDPERL=	true
849313Ssos#
859313Ssos# To build ppp with normal permissions
869313Ssos#PPP_NOSUID=	true
879313Ssos#
889313Ssos# To enable installing ssh(1) with the setuid bit turned on
899313Ssos#ENABLE_SUID_SSH=	true
9014331Speter#
919313Ssos# To avoid building various parts of the base system:
929313Ssos#NO_CVS=	true	# do not build CVS
939313Ssos#NO_CXX=	true	# do not build C++ and friends
949313Ssos#NO_BIND=	true	# do not build BIND
959313Ssos#NO_FORTRAN=	true	# do not build g77 and related libraries
969313Ssos#NO_GDB=	true	# do not build GDB
9714331Speter#NO_I4B=	true	# do not build isdn4bsd package
989313Ssos#NO_IPFILTER=	true	# do not build IP Filter package
999313Ssos#NO_LPR=	true	# do not build lpr and related programs
1009313Ssos#NO_MAILWRAPPER=true	# do not build the mailwrapper(8) MTA selector
1019313Ssos#NO_MODULES=	true	# do not build modules with the kernel
1029313Ssos#NO_OBJC=	true	# do not build Objective C support
1039313Ssos#NO_OPENSSH=	true	# do not build OpenSSH
10414331Speter#NO_OPENSSL=	true	# do not build OpenSSL (implies NO_OPENSSH)
1059313Ssos#NO_PERL=	true	# do not build perl5. Disables OpenSSL optimizations
1069313Ssos#NO_SENDMAIL=	true	# do not build sendmail and related programs
1079313Ssos#NO_SHAREDOCS=	true	# do not build the 4.4BSD legacy docs
1089313Ssos#NO_TCSH=	true	# do not build and install /bin/csh (which is tcsh)
1099313Ssos#NO_X=		true	# do not compile in XWindows support (e.g. doscmd)
1109313Ssos#NOCRYPT=	true	# do not build any crypto code
11114331Speter#NOGAMES=	true	# do not build games (games/ subdir)
1129313Ssos#NOINFO=	true	# do not make or install info files
1139313Ssos#NOLIBC_R=	true	# do not build libc_r (re-entrant version of libc)
1149313Ssos#NOPERL=	true	# Deprecated version of NO_PERL
1159313Ssos#NOPROFILE=	true	# Avoid compiling profiled libraries
1169313Ssos#NOSECURE=	true	# do not build crypto code in secure/ subdir
1179313Ssos#NOSHARE=	true	# do not go into the share subdir
11814331Speter#NOUUCP=	true	# do not build uucp related programs
1199313Ssos#NO_RCMNDS=	true	# do not build rlogin, rsh & rcp
1209313Ssos#
1219313Ssos# To build the OpenSSL manpages, uncomment the following.  These are not
1229313Ssos# built by default because they clobber a number of system manpages with
1239313Ssos# manpages describing parts of the OpenSSL toolkit, including passwd(1),
1249313Ssos# err(3), md5(3), and others.
12514331Speter#
1269313Ssos#WANT_OPENSSL_MANPAGES=	true
1279313Ssos#
1289313Ssos# To build sys/modules when building the world (our old way of doing things)
1299313Ssos#MODULES_WITH_WORLD=true	# do not build modules when building kernel
1309313Ssos#
1319313Ssos# The list of modules to build instead of all of them.
13214331Speter#MODULES_OVERRIDE=	linux ipfw
1339313Ssos#
1349313Ssos# The following controls building optional IDEA code in libcrypto and
1359313Ssos# certain ports.  Patents are involved - you must not use this unless
1369313Ssos# you either have a license or fall within patent 'fair use'
1379313Ssos# provisions.
1389313Ssos#
13914331Speter# *** It is YOUR RESPONSIBILITY to determine if you can use this! ***
1409313Ssos#
1419313Ssos# IDEA is patented in the USA and many european countries - thought to
1429313Ssos# be OK to use for any non-commercial use.  This is optional.
1439313Ssos#MAKE_IDEA=	YES	# IDEA (128 bit symmetric encryption)
1449313Ssos#
1459313Ssos# To avoid running MAKEDEV all on /dev during install set NO_MAKEDEV_RUN.
14614331Speter# If you don't want to install MAKEDEV set NO_MAKEDEV_INSTALL, this implies
1479313Ssos# NO_MAKEDEV_RUN.
1489313Ssos#NO_MAKEDEV_INSTALL=	true
1499313Ssos#NO_MAKEDEV_RUN=	true
1509313Ssos#
1519313Ssos# If you do not want unformatted manual pages to be compressed
1529313Ssos# when they are installed:
15314331Speter#
1549313Ssos#NOMANCOMPRESS=	true
1559313Ssos#
1569313Ssos#
1579313Ssos# If you want the "compat" shared libraries installed as part of your normal
1589313Ssos# builds, uncomment these:
1599313Ssos#
16014331Speter#COMPAT1X=	yes
1619313Ssos#COMPAT20=	yes
1629313Ssos#COMPAT21=	yes
1639313Ssos#COMPAT22=	yes
1649313Ssos#COMPAT3X=	yes
1659313Ssos#COMPAT4X=	yes
1669313Ssos#
16714331Speter#
1689313Ssos# Default format for system documentation, depends on your printer.
1699313Ssos# Set this to "ascii" for simple printers or screen
1709313Ssos#
1719313Ssos#PRINTERDEVICE=	ps
1729313Ssos#
1739313Ssos#
17414331Speter# How long to wait for a console keypress before booting the default kernel.
1759313Ssos# This value is approximately in milliseconds. Keypresses are accepted by the
1769313Ssos# BIOS before booting from disk, making it possible to give custom boot
1779313Ssos# parameters even when this is set to 0.
1789313Ssos#
1799313Ssos#BOOTWAIT=0
1809313Ssos#BOOTWAIT=30000
18114331Speter#
1829313Ssos# By default, the system will always use the keyboard/video card as system
18314331Speter# console.  However, the boot blocks may be dynamically configured to use a
18414331Speter# serial port in addition to or instead of the keyboard/video console.
18514331Speter#
1869313Ssos# By default we use COM1 as our serial console port *if* we're going to use
1879313Ssos# a serial port as our console at all.  Alter as necessary.
1889313Ssos#
18914331Speter#   COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8
1909313Ssos#
1919313Ssos#BOOT_COMCONSOLE_PORT=	0x3F8
1929313Ssos#
1939313Ssos# The default serial console speed is 9600.  Set the speed to a larger value
1949313Ssos# for better interactive response.
1959313Ssos#
19614331Speter#BOOT_COMCONSOLE_SPEED=	115200
1979313Ssos#
1989313Ssos# By default the 'pxeboot' loader retrieves the kernel via NFS.  Defining
1999313Ssos# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel
2009313Ssos# via TFTP.  This allows pxeboot to load a custom BOOTP diskless kernel yet
2019313Ssos# still mount the server's '/' (i.e. rather then load the server's kernel).
2029313Ssos#
20314331Speter#LOADER_TFTP_SUPPORT= YES
2049313Ssos#
2059313Ssos#
2069313Ssos# Kerberos IV
2079313Ssos# If you want KerberosIV (KTH eBones), define this:
2089313Ssos#
2099313Ssos#MAKE_KERBEROS4=	yes
21014331Speter#
2119313Ssos#
2129313Ssos# Kerberos 5
2139313Ssos# If you want Kerberos 5 (KTH Heimdal), define this:
2149313Ssos#
2159313Ssos#MAKE_KERBEROS5=	yes
2169313Ssos#
21714331Speter#
2189313Ssos# Kerberos5
2199313Ssos# If you want to install MIT Kerberos5 port somewhere other than /usr/local,
2209313Ssos# define this (this is also used to tell ssh1 that kerberos is needed):
2219313Ssos#
2229313Ssos#KRB5_HOME=		/usr/local
2239313Ssos#
22414331Speter#
2259313Ssos# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
2269313Ssos# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
2279313Ssos# information on CVSup and these files).  To use, do "make update" in /usr/src.
2289313Ssos#
2299313Ssos#SUP_UPDATE=     yes
2309313Ssos#
23114331Speter#SUP=            /usr/local/bin/cvsup
2329313Ssos#SUPFLAGS=       -g -L 2
2339313Ssos#SUPHOST=        cvsup.uk.FreeBSD.org
2349313Ssos#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
2359313Ssos#PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
2369313Ssos#DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
2379313Ssos#
23814331Speter# top(1) uses a hash table for the user names.  The size of this hash
2399313Ssos# can be tuned to match the number of local users.  The table size should
2409313Ssos# be a prime number approximately twice as large as the number of lines in
2419313Ssos# /etc/passwd.  The default number is 20011.
2429313Ssos#
2439313Ssos#TOP_TABLE_SIZE= 101
2449313Ssos#
24514331Speter# Documentation
2469313Ssos#
2479313Ssos# The list of languages and encodings to build and install
2489313Ssos#
2499313Ssos#DOC_LANG=	en_US.ISO8859-1 ru_RU.KOI8-R
2509313Ssos#
2519313Ssos#
25214331Speter# sendmail
2539313Ssos#
2549313Ssos# The following sets the default m4 configuration file to use at
2559313Ssos# install time.  Use with caution as a make install will overwrite
2569313Ssos# any existing /etc/mail/sendmail.cf.  Note that SENDMAIL_CF is now
2579313Ssos# deprecated.  The value should be a fully qualified path name.
2589313Ssos#
25914331Speter#SENDMAIL_MC=/etc/mail/myconfig.mc
2609313Ssos#
2619313Ssos# If you need to build additional .cf files during a make buildworld,
2629313Ssos# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
2639313Ssos#
2649313Ssos#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc
2659313Ssos#
26614331Speter# Setting the following variable modifies the flags passed to m4 when
2679313Ssos# building a .cf file from a .mc file.  It can be used to enable
2689313Ssos# features disabled by default.
2699313Ssos#
2709313Ssos#SENDMAIL_M4_FLAGS=
2719313Ssos#
2729313Ssos# Setting the following variables modifies the build environment for
27314331Speter# sendmail and its related utilities. For example, SASL support can be
2749313Ssos# added with settings such as:
2759313Ssos#
2769313Ssos#	SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
2779313Ssos#	SENDMAIL_LDFLAGS=-L/usr/local/lib
2789313Ssos#	SENDMAIL_LDADD=-lsasl
2799313Ssos#
28014331Speter# Note: If you are using Cyrus SASL with other applications which require
2819313Ssos#	access to the sasldb file, you should add the following to your
2829313Ssos#	sendmail.mc file:
2839313Ssos#
2849313Ssos#	define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile')
2859313Ssos#
2869313Ssos#SENDMAIL_CFLAGS=
28714331Speter#SENDMAIL_LDFLAGS=
2889313Ssos#SENDMAIL_LDADD=
2899313Ssos#SENDMAIL_DPADD=
2909313Ssos#
2919313Ssos# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a
2929313Ssos# set-user-ID root binary instead of a set-group-ID smmsp binary and will
2939313Ssos# prevent the installation of /etc/mail/submit.cf.
29414331Speter# This is a deprecated mode of operation.  See etc/mail/README for more
2959313Ssos# information.
2969313Ssos#
2979313Ssos#SENDMAIL_SET_USER_ID=
2989313Ssos