make.conf revision 103898
150472Speter# $FreeBSD: head/share/examples/etc/make.conf 103898 2002-09-24 17:07:37Z ume $
21664Sphk#
369040Sben# NOTE:  Please would any committer updating this file also update the
469040Sben# make.conf(5) manual page, if necessary, which is located in
569040Sben# src/share/man/man5/make.conf.5.
669040Sben#
782604Salex# /etc/make.conf, if present, will be read by make (see
882604Salex# /usr/share/mk/sys.mk).  It allows you to override macro definitions
982604Salex# to make without changing your source tree, or anything the source
1082604Salex# tree installs.
111664Sphk#
123023Srgrimes# This file must be in valid Makefile syntax.
133023Srgrimes#
1482604Salex# There are additional things you can put into /etc/make.conf.
1582604Salex# You have to find those in the Makefiles and documentation of
1682604Salex# the source tree.
171664Sphk#
1872679Skris#
1999260Sjohan# The CPUTYPE variable controls which processor should be targeted for
2072878Skris# generated code.  This controls processor-specific optimizations in
2172878Skris# certain code (currently only OpenSSL) as well as modifying the value
2272878Skris# of CFLAGS to contain the appropriate optimization directive to gcc.
2372878Skris# The automatic setting of CFLAGS may be overridden using the
2472878Skris# NO_CPU_CFLAGS variable below.
2599260Sjohan# Currently the following CPU types are recognized:
2673145Skris#   Intel x86 architecture:
27103046Smux#       (AMD CPUs)	athlon-mp athlon-xp athlon-4 athlon-tbird athlon k6-3
28103046Smux#			k6-2 k6 k5
2973145Skris#       (Intel CPUs)	p4 p3 p2 i686 i586/mmx i586 i486 i386
30103048Skris#   Alpha/AXP architecture: ev67 ev6 pca56 ev56 ev5 ev45 ev4
3172878Skris#   Intel ia64 architecture: itanium
3272679Skris#
33101232Sru# (?= allows to buildworld for a different CPUTYPE.)
34101232Sru#
35101232Sru#CPUTYPE?=i686
3672878Skris#NO_CPU_CFLAGS=	true	# Don't add -march=<cpu> to CFLAGS automatically
3774146Skris#NO_CPU_COPTFLAGS=true	# Don't add -march=<cpu> to COPTFLAGS automatically
3872878Skris#
3958648Skris# CFLAGS controls the compiler settings used when compiling C code.
4068917Sdougb# Note that optimization settings above -O (-O2, ...) are not recommended
4158648Skris# or supported for compiling the world or the kernel - please revert any
4268917Sdougb# nonstandard optimization settings to "-O" before submitting bug reports
4358648Skris# to the developers.
4458648Skris# Note also that at this time the -O2 setting is known to produce BROKEN
4558648Skris# CODE on the Alpha platform.
461664Sphk#
4729281Sjkh#CFLAGS= -O -pipe
481664Sphk#
4959006Sobrien# CXXFLAGS controls the compiler settings used when compiling C++ code.
5059006Sobrien# Note that CXXFLAGS is initially set to the value of CFLAGS.  If you wish
5159006Sobrien# to add to CXXFLAGS value, "+=" must be used rather than "=".  Using "="
5259006Sobrien# alone will remove the often needed contents of CFLAGS from CXXFLAGS.
531664Sphk#
5459006Sobrien#CXXFLAGS+= -fmemoize-lookups -fsave-memoized
5559006Sobrien#
5662136Sobrien# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested
5762136Sobrien# for use in developing FreeBSD and testing changes.  They can be used by
5880452Speter# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf.  -Wconversion is not
5999260Sjohan# included here due to compiler bugs, e.g., mkdir()'s mode_t argument.
6062136Sobrien#
6182604Salex#BDECFLAGS=	-W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \
6282604Salex#		-Wcast-qual -Wchar-subscripts -Winline \
6382604Salex#		-Wmissing-prototypes -Wnested-externs -Wpointer-arith \
6482604Salex#		-Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
6562136Sobrien#
6668917Sdougb# To compile just the kernel with special optimizations, you should use
6768263Sobrien# this instead of CFLAGS (which is not applicable to kernel builds anyway).
6868263Sobrien# There is very little to gain by using higher optimization levels, and doing
6968263Sobrien# so can cause problems.
7065380Sobrien#
7165380Sobrien#COPTFLAGS= -O -pipe
7265380Sobrien#
7381749Sobrien# To build the system compiler such that it forces high optimization levels to
7481749Sobrien# a lower one.  GCC -O2+ is known to trigger known optimizer bugs at various
7581749Sobrien# times -- this is worse on the Alpha platform.  The value assigned here will
7681749Sobrien# be the highest optimization value used.
7781749Sobrien#WANT_FORCE_OPTIMIZATION_DOWNGRADE=1
7881749Sobrien#
7942325Sobrien# Compare before install
80100870Sru#INSTALL=install -C
8135222Sache#
8265884Sache# Mtree will follow symlinks
8365957Sache#MTREE_FOLLOWS_SYMLINKS= -L
8465884Sache#
8564803Sbrian# To build ppp with normal permissions
8664803Sbrian#PPP_NOSUID=	true
8764803Sbrian#
8868705Sgreen# To enable installing ssh(1) with the setuid bit turned on
8968705Sgreen#ENABLE_SUID_SSH=	true
9068705Sgreen#
9197387Stjr# To enable installing newgrp(1) with the setuid bit turned on.
9297387Stjr# Without the setuid bit, newgrp cannot change users' groups.
9397387Stjr#ENABLE_SUID_NEWGRP=	true
9497387Stjr#
9551299Speter# To avoid building various parts of the base system:
9657542Skris#NO_CVS=	true	# do not build CVS
9790522Sobrien#NO_CXX=	true	# do not build C++ and friends
9859124Sasmodai#NO_BIND=	true	# do not build BIND
9957542Skris#NO_FORTRAN=	true	# do not build g77 and related libraries
10090522Sobrien#NO_GDB=	true	# do not build GDB
10177041Sru#NO_I4B=	true	# do not build isdn4bsd package
10292868Sru#NO_IPFILTER=	true	# do not build IP Filter package
10361139Shoek#NO_LPR=	true	# do not build lpr and related programs
10458859Ssheldonh#NO_MAILWRAPPER=true	# do not build the mailwrapper(8) MTA selector
10559884Schuckr#NO_MODULES=	true	# do not build modules with the kernel
10657764Skris#NO_OBJC=	true	# do not build Objective C support
10757542Skris#NO_OPENSSH=	true	# do not build OpenSSH
10857542Skris#NO_OPENSSL=	true	# do not build OpenSSL (implies NO_OPENSSH)
10998064Sdougb#NO_PERL_WRAPPER= true 	# do not build the wrapper in /usr/bin/perl
11057542Skris#NO_SENDMAIL=	true	# do not build sendmail and related programs
11158418Sobrien#NO_SHAREDOCS=	true	# do not build the 4.4BSD legacy docs
11259338Sobrien#NO_TCSH=	true	# do not build and install /bin/csh (which is tcsh)
11358280Skris#NO_X=		true	# do not compile in XWindows support (e.g. doscmd)
11457553Skris#NOCRYPT=	true	# do not build any crypto code
11557542Skris#NOGAMES=	true	# do not build games (games/ subdir)
11657542Skris#NOINFO=	true	# do not make or install info files
11757542Skris#NOLIBC_R=	true	# do not build libc_r (re-entrant version of libc)
11865381Sobrien#NOPROFILE=	true	# Avoid compiling profiled libraries
11957553Skris#NOSECURE=	true	# do not build crypto code in secure/ subdir
12057542Skris#NOSHARE=	true	# do not go into the share subdir
12135206Sphk#
12273043Skris# To build the OpenSSL manpages, uncomment the following.  These are not
12373043Skris# built by default because they clobber a number of system manpages with
12473043Skris# manpages describing parts of the OpenSSL toolkit, including passwd(1),
12573043Skris# err(3), md5(3), and others.
12673043Skris#
12773043Skris#WANT_OPENSSL_MANPAGES=	true
12873043Skris#
12961744Sobrien# To build sys/modules when building the world (our old way of doing things)
13061744Sobrien#MODULES_WITH_WORLD=true	# do not build modules when building kernel
13161744Sobrien#
13288461Sru# The list of modules to build instead of all of them.
13388461Sru#MODULES_OVERRIDE=	linux ipfw
13457458Smarkm#
13573401Skris# The following controls building optional IDEA code in libcrypto and
13673401Skris# certain ports.  Patents are involved - you must not use this unless
13773401Skris# you either have a license or fall within patent 'fair use'
13873401Skris# provisions.
13962482Speter#
14073401Skris# *** It is YOUR RESPONSIBILITY to determine if you can use this! ***
14173401Skris#
14299260Sjohan# IDEA is patented in the USA and many European countries - thought to
14373401Skris# be OK to use for any non-commercial use.  This is optional.
14463123Speter#MAKE_IDEA=	YES	# IDEA (128 bit symmetric encryption)
14562482Speter#
14674990Sasmodai# To avoid running MAKEDEV all on /dev during install set NO_MAKEDEV_RUN.
14774990Sasmodai# If you don't want to install MAKEDEV set NO_MAKEDEV_INSTALL, this implies
14874990Sasmodai# NO_MAKEDEV_RUN.
14974990Sasmodai#NO_MAKEDEV_INSTALL=	true
15074990Sasmodai#NO_MAKEDEV_RUN=	true
15157071Srwatson#
1521684Scsgr# If you do not want unformatted manual pages to be compressed
1531684Scsgr# when they are installed:
1541684Scsgr#
1559509Srgrimes#NOMANCOMPRESS=	true
1561697Sache#
1571697Sache#
15820847Speter# If you want the "compat" shared libraries installed as part of your normal
15920847Speter# builds, uncomment these:
16020847Speter#
16120847Speter#COMPAT1X=	yes
16220847Speter#COMPAT20=	yes
16320847Speter#COMPAT21=	yes
16447318Sobrien#COMPAT22=	yes
16547430Sobrien#COMPAT3X=	yes
16674247Smurray#COMPAT4X=	yes
16720847Speter#
16820847Speter#
1691697Sache# Default format for system documentation, depends on your printer.
1701697Sache# Set this to "ascii" for simple printers or screen
1711697Sache#
17225424Sandreas#PRINTERDEVICE=	ps
1731733Sadam#
1741733Sadam#
17514102Sadam# How long to wait for a console keypress before booting the default kernel.
17614102Sadam# This value is approximately in milliseconds. Keypresses are accepted by the
17714102Sadam# BIOS before booting from disk, making it possible to give custom boot
17814102Sadam# parameters even when this is set to 0.
1791733Sadam#
1801740Sadam#BOOTWAIT=0
1813023Srgrimes#BOOTWAIT=30000
1821733Sadam#
18318927Spst# By default, the system will always use the keyboard/video card as system
18426522Sbde# console.  However, the boot blocks may be dynamically configured to use a
18526522Sbde# serial port in addition to or instead of the keyboard/video console.
1861733Sadam#
18718927Spst# By default we use COM1 as our serial console port *if* we're going to use
18849190Snik# a serial port as our console at all.  Alter as necessary.
18918927Spst#
19049190Snik#   COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8
19149190Snik#
19218928Spst#BOOT_COMCONSOLE_PORT=	0x3F8
19318927Spst#
19426522Sbde# The default serial console speed is 9600.  Set the speed to a larger value
19526522Sbde# for better interactive response.
19618927Spst#
19726522Sbde#BOOT_COMCONSOLE_SPEED=	115200
19818927Spst#
19968310Sps# By default the 'pxeboot' loader retrieves the kernel via NFS.  Defining
20068310Sps# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel
20168310Sps# via TFTP.  This allows pxeboot to load a custom BOOTP diskless kernel yet
20299260Sjohan# still mount the server's '/' (i.e. rather than load the server's kernel).
20318927Spst#
20468310Sps#LOADER_TFTP_SUPPORT= YES
20568310Sps#
20675982Sjim#
2073241Scsgr# Kerberos IV
20829931Smarkm# If you want KerberosIV (KTH eBones), define this:
2093241Scsgr#
21029931Smarkm#MAKE_KERBEROS4=	yes
21110758Sache#
21210758Sache#
21356553Smarkm# Kerberos 5
21476518Sassar# If you want Kerberos 5 (KTH Heimdal), define this:
21556553Smarkm#
21656553Smarkm#MAKE_KERBEROS5=	yes
21756553Smarkm#
21896436Snectar# Kerberos 5 su (k5su)
21996436Snectar# If you want to use the k5su utility, define this to have it installed
22096436Snectar# set-user-ID.
22196436Snectar#ENABLE_SUID_K5SU=	yes
22256553Smarkm#
22396436Snectar#
22438003Sdima# Kerberos5
22556553Smarkm# If you want to install MIT Kerberos5 port somewhere other than /usr/local,
22656553Smarkm# define this (this is also used to tell ssh1 that kerberos is needed):
22738003Sdima#
22856553Smarkm#KRB5_HOME=		/usr/local
22938003Sdima#
23038003Sdima#
23137162Sjkh# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
23237162Sjkh# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
23337162Sjkh# information on CVSup and these files).  To use, do "make update" in /usr/src.
23410758Sache#
23510758Sache#SUP_UPDATE=     yes
23618716Sache#
23720545Sache#SUP=            /usr/local/bin/cvsup
23849777Ssheldonh#SUPFLAGS=       -g -L 2
23964605Sjoe#SUPHOST=        cvsup.uk.FreeBSD.org
24018716Sache#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
24147651Sbillf#PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
24254670Sbillf#DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
24324225Sjoerg#
24424225Sjoerg# top(1) uses a hash table for the user names.  The size of this hash
24524225Sjoerg# can be tuned to match the number of local users.  The table size should
24624225Sjoerg# be a prime number approximately twice as large as the number of lines in
24724225Sjoerg# /etc/passwd.  The default number is 20011.
24824225Sjoerg#
24924225Sjoerg#TOP_TABLE_SIZE= 101
25058449Snik#
25158449Snik# Documentation
25258449Snik#
25358449Snik# The list of languages and encodings to build and install
25458449Snik#
25578035Sache#DOC_LANG=	en_US.ISO8859-1 ru_RU.KOI8-R
25665970Sgshapiro#
25765970Sgshapiro#
25865970Sgshapiro# sendmail
25972846Sgshapiro#
26072846Sgshapiro# The following sets the default m4 configuration file to use at
26172846Sgshapiro# install time.  Use with caution as a make install will overwrite
26272846Sgshapiro# any existing /etc/mail/sendmail.cf.  Note that SENDMAIL_CF is now
26372916Sgshapiro# deprecated.  The value should be a fully qualified path name.
26498462Sgshapiro# Avoid using a value of /etc/mail/sendmail.mc as a buildworld will
26598462Sgshapiro# create /etc/mail/sendmail.cf before installworld installs an
26698462Sgshapiro# updated sendmail binary.
26772846Sgshapiro#
26873836Sgshapiro#SENDMAIL_MC=/etc/mail/myconfig.mc
26972846Sgshapiro#
27094676Sgshapiro# The following sets the default m4 configuration file for mail
27194676Sgshapiro# submission to use at install time.  Use with caution as a make
27294676Sgshapiro# install will overwrite any existing /etc/mail/submit.cf.  The
27394676Sgshapiro# value should be a fully qualified path name.
27498462Sgshapiro# Avoid using a value of /etc/mail/submit.mc as a buildworld will
27598462Sgshapiro# create /etc/mail/submit.cf before installworld installs an
27698462Sgshapiro# updated sendmail binary.
27794676Sgshapiro#
27894676Sgshapiro#SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc
27994676Sgshapiro#
28072918Sgshapiro# If you need to build additional .cf files during a make buildworld,
28172918Sgshapiro# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
28298462Sgshapiro# Avoid using a value of /etc/mail/sendmail.mc as a buildworld will
28398462Sgshapiro# create /etc/mail/sendmail.cf before installworld installs an
28498462Sgshapiro# updated sendmail binary.
28572918Sgshapiro#
28672918Sgshapiro#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc
28772918Sgshapiro#
28880175Sgshapiro# Setting the following variable modifies the flags passed to m4 when
28980175Sgshapiro# building a .cf file from a .mc file.  It can be used to enable
29080175Sgshapiro# features disabled by default.
29180175Sgshapiro#
29280175Sgshapiro#SENDMAIL_M4_FLAGS=
29380175Sgshapiro#
29478862Sgshapiro# Setting the following variables modifies the build environment for
29565970Sgshapiro# sendmail and its related utilities. For example, SASL support can be
29665970Sgshapiro# added with settings such as:
29765970Sgshapiro#
298103898Sume#    with SASLv1:
299101065Sume#	SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL
30065970Sgshapiro#	SENDMAIL_LDFLAGS=-L/usr/local/lib
30165970Sgshapiro#	SENDMAIL_LDADD=-lsasl
30265970Sgshapiro#
303103898Sume#    with SASLv2:
304103898Sume#	SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2
305103898Sume#	SENDMAIL_LDFLAGS=-L/usr/local/lib
306103898Sume#	SENDMAIL_LDADD=-lsasl2
307103898Sume#
30869380Sgshapiro# Note: If you are using Cyrus SASL with other applications which require
30993449Sume#	access to the sasldb file, you should add the following to your
31093449Sume#	sendmail.mc file:
31169380Sgshapiro#
31293446Sume#	define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile')
31369380Sgshapiro#
31465970Sgshapiro#SENDMAIL_CFLAGS=
31565970Sgshapiro#SENDMAIL_LDFLAGS=
31665970Sgshapiro#SENDMAIL_LDADD=
31765970Sgshapiro#SENDMAIL_DPADD=
31890803Sgshapiro#
31990803Sgshapiro# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a
32090803Sgshapiro# set-user-ID root binary instead of a set-group-ID smmsp binary and will
32190803Sgshapiro# prevent the installation of /etc/mail/submit.cf.
32290803Sgshapiro# This is a deprecated mode of operation.  See etc/mail/README for more
32390803Sgshapiro# information.
32490803Sgshapiro#
32590803Sgshapiro#SENDMAIL_SET_USER_ID=
32697200Sgshapiro#
32797200Sgshapiro# The permissions to use on alias and map databases generated using
32897200Sgshapiro# /etc/mail/Makefile.  Defaults to 0640.
32997200Sgshapiro#
33097200Sgshapiro#SENDMAIL_MAP_PERMS=
331