make.conf revision 82604
150472Speter# $FreeBSD: head/share/examples/etc/make.conf 82604 2001-08-30 22:44:51Z alex $
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#
1972878Skris# The CPUTYPE variable controls which processor should be targetted 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.
2572878Skris# Currently the following CPU types are recognised:
2673145Skris#   Intel x86 architecture:
2773145Skris#       (AMD CPUs)	k7 k6-2 k6 k5
2873145Skris#       (Intel CPUs)	p4 p3 p2 i686 i586/mmx i586 i486 i386
2972878Skris#   Alpha/AXP architecture: ev6 pca56 ev56 ev5 ev45 ev4
3072878Skris#   Intel ia64 architecture: itanium
3172679Skris#
3272878Skris#CPUTYPE=i686
3372878Skris#NO_CPU_CFLAGS=	true	# Don't add -march=<cpu> to CFLAGS automatically
3474146Skris#NO_CPU_COPTFLAGS=true	# Don't add -march=<cpu> to COPTFLAGS automatically
3572878Skris#
3658648Skris# CFLAGS controls the compiler settings used when compiling C code.
3768917Sdougb# Note that optimization settings above -O (-O2, ...) are not recommended
3858648Skris# or supported for compiling the world or the kernel - please revert any
3968917Sdougb# nonstandard optimization settings to "-O" before submitting bug reports
4058648Skris# to the developers.
4158648Skris# Note also that at this time the -O2 setting is known to produce BROKEN
4258648Skris# CODE on the Alpha platform.
431664Sphk#
4429281Sjkh#CFLAGS= -O -pipe
451664Sphk#
4659006Sobrien# CXXFLAGS controls the compiler settings used when compiling C++ code.
4759006Sobrien# Note that CXXFLAGS is initially set to the value of CFLAGS.  If you wish
4859006Sobrien# to add to CXXFLAGS value, "+=" must be used rather than "=".  Using "="
4959006Sobrien# alone will remove the often needed contents of CFLAGS from CXXFLAGS.
501664Sphk#
5159006Sobrien#CXXFLAGS+= -fmemoize-lookups -fsave-memoized
5259006Sobrien#
5362136Sobrien# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested
5462136Sobrien# for use in developing FreeBSD and testing changes.  They can be used by
5580452Speter# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf.  -Wconversion is not
5680452Speter# included here due to compiler bugs, eg: mkdir()'s mode_t argument.
5762136Sobrien#
5882604Salex#BDECFLAGS=	-W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \
5982604Salex#		-Wcast-qual -Wchar-subscripts -Winline \
6082604Salex#		-Wmissing-prototypes -Wnested-externs -Wpointer-arith \
6182604Salex#		-Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings
6262136Sobrien#
6368917Sdougb# To compile just the kernel with special optimizations, you should use
6468263Sobrien# this instead of CFLAGS (which is not applicable to kernel builds anyway).
6568263Sobrien# There is very little to gain by using higher optimization levels, and doing
6668263Sobrien# so can cause problems.
6765380Sobrien#
6865380Sobrien#COPTFLAGS= -O -pipe
6965380Sobrien#
7081749Sobrien# To build the system compiler such that it forces high optimization levels to
7181749Sobrien# a lower one.  GCC -O2+ is known to trigger known optimizer bugs at various
7281749Sobrien# times -- this is worse on the Alpha platform.  The value assigned here will
7381749Sobrien# be the highest optimization value used.
7481749Sobrien#WANT_FORCE_OPTIMIZATION_DOWNGRADE=1
7581749Sobrien#
7642325Sobrien# Compare before install
7735222Sache#INSTALL=install -C
7835222Sache#
7965884Sache# Mtree will follow symlinks
8065957Sache#MTREE_FOLLOWS_SYMLINKS= -L
8165884Sache#
8268559Sru# To enable installing suidperl with the setuid bit turned on
8364576Simp#ENABLE_SUIDPERL=	true
8434651Sjkh#
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#
9151299Speter# To avoid building various parts of the base system:
9257542Skris#NO_CVS=	true	# do not build CVS
9359124Sasmodai#NO_BIND=	true	# do not build BIND
9457542Skris#NO_FORTRAN=	true	# do not build g77 and related libraries
9577041Sru#NO_I4B=	true	# do not build isdn4bsd package
9661139Shoek#NO_LPR=	true	# do not build lpr and related programs
9758859Ssheldonh#NO_MAILWRAPPER=true	# do not build the mailwrapper(8) MTA selector
9859884Schuckr#NO_MODULES=	true	# do not build modules with the kernel
9957764Skris#NO_OBJC=	true	# do not build Objective C support
10057542Skris#NO_OPENSSH=	true	# do not build OpenSSH
10157542Skris#NO_OPENSSL=	true	# do not build OpenSSL (implies NO_OPENSSH)
10257542Skris#NO_SENDMAIL=	true	# do not build sendmail and related programs
10358418Sobrien#NO_SHAREDOCS=	true	# do not build the 4.4BSD legacy docs
10459338Sobrien#NO_TCSH=	true	# do not build and install /bin/csh (which is tcsh)
10558280Skris#NO_X=		true	# do not compile in XWindows support (e.g. doscmd)
10657553Skris#NOCRYPT=	true	# do not build any crypto code
10757542Skris#NOGAMES=	true	# do not build games (games/ subdir)
10857542Skris#NOINFO=	true	# do not make or install info files
10957542Skris#NOLIBC_R=	true	# do not build libc_r (re-entrant version of libc)
11072679Skris#NOPERL=	true	# do not build perl. Disables OpenSSL optimizations
11165381Sobrien#NOPROFILE=	true	# Avoid compiling profiled libraries
11257553Skris#NOSECURE=	true	# do not build crypto code in secure/ subdir
11357542Skris#NOSHARE=	true	# do not go into the share subdir
11458390Sdan#NOUUCP=	true	# do not build uucp related programs
11535206Sphk#
11673043Skris# To build the OpenSSL manpages, uncomment the following.  These are not
11773043Skris# built by default because they clobber a number of system manpages with
11873043Skris# manpages describing parts of the OpenSSL toolkit, including passwd(1),
11973043Skris# err(3), md5(3), and others.
12073043Skris#
12173043Skris#WANT_OPENSSL_MANPAGES=	true
12273043Skris#
12361744Sobrien# To build sys/modules when building the world (our old way of doing things)
12461744Sobrien#MODULES_WITH_WORLD=true	# do not build modules when building kernel
12561744Sobrien#
12657458Smarkm#
12773401Skris# The following controls building optional IDEA code in libcrypto and
12873401Skris# certain ports.  Patents are involved - you must not use this unless
12973401Skris# you either have a license or fall within patent 'fair use'
13073401Skris# provisions.
13162482Speter#
13273401Skris# *** It is YOUR RESPONSIBILITY to determine if you can use this! ***
13373401Skris#
13473401Skris# IDEA is patented in the USA and many european countries - thought to
13573401Skris# be OK to use for any non-commercial use.  This is optional.
13663123Speter#MAKE_IDEA=	YES	# IDEA (128 bit symmetric encryption)
13762482Speter#
13874990Sasmodai# To avoid running MAKEDEV all on /dev during install set NO_MAKEDEV_RUN.
13974990Sasmodai# If you don't want to install MAKEDEV set NO_MAKEDEV_INSTALL, this implies
14074990Sasmodai# NO_MAKEDEV_RUN.
14174990Sasmodai#NO_MAKEDEV_INSTALL=	true
14274990Sasmodai#NO_MAKEDEV_RUN=	true
14357071Srwatson#
1441684Scsgr# If you do not want unformatted manual pages to be compressed
1451684Scsgr# when they are installed:
1461684Scsgr#
1479509Srgrimes#NOMANCOMPRESS=	true
1481697Sache#
1491697Sache#
15020847Speter# If you want the "compat" shared libraries installed as part of your normal
15120847Speter# builds, uncomment these:
15220847Speter#
15320847Speter#COMPAT1X=	yes
15420847Speter#COMPAT20=	yes
15520847Speter#COMPAT21=	yes
15647318Sobrien#COMPAT22=	yes
15747430Sobrien#COMPAT3X=	yes
15874247Smurray#COMPAT4X=	yes
15920847Speter#
16020847Speter#
1611697Sache# Default format for system documentation, depends on your printer.
1621697Sache# Set this to "ascii" for simple printers or screen
1631697Sache#
16425424Sandreas#PRINTERDEVICE=	ps
1651733Sadam#
1661733Sadam#
16714102Sadam# How long to wait for a console keypress before booting the default kernel.
16814102Sadam# This value is approximately in milliseconds. Keypresses are accepted by the
16914102Sadam# BIOS before booting from disk, making it possible to give custom boot
17014102Sadam# parameters even when this is set to 0.
1711733Sadam#
1721740Sadam#BOOTWAIT=0
1733023Srgrimes#BOOTWAIT=30000
1741733Sadam#
17518927Spst# By default, the system will always use the keyboard/video card as system
17626522Sbde# console.  However, the boot blocks may be dynamically configured to use a
17726522Sbde# serial port in addition to or instead of the keyboard/video console.
1781733Sadam#
17918927Spst# By default we use COM1 as our serial console port *if* we're going to use
18049190Snik# a serial port as our console at all.  Alter as necessary.
18118927Spst#
18249190Snik#   COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8
18349190Snik#
18418928Spst#BOOT_COMCONSOLE_PORT=	0x3F8
18518927Spst#
18626522Sbde# The default serial console speed is 9600.  Set the speed to a larger value
18726522Sbde# for better interactive response.
18818927Spst#
18926522Sbde#BOOT_COMCONSOLE_SPEED=	115200
19018927Spst#
19168310Sps# By default the 'pxeboot' loader retrieves the kernel via NFS.  Defining
19268310Sps# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel
19368310Sps# via TFTP.  This allows pxeboot to load a custom BOOTP diskless kernel yet
19468310Sps# still mount the server's '/' (i.e. rather then load the server's kernel).
19518927Spst#
19668310Sps#LOADER_TFTP_SUPPORT= YES
19768310Sps#
19875982Sjim#
1993241Scsgr# Kerberos IV
20029931Smarkm# If you want KerberosIV (KTH eBones), define this:
2013241Scsgr#
20229931Smarkm#MAKE_KERBEROS4=	yes
20310758Sache#
20410758Sache#
20556553Smarkm# Kerberos 5
20676518Sassar# If you want Kerberos 5 (KTH Heimdal), define this:
20756553Smarkm#
20856553Smarkm#MAKE_KERBEROS5=	yes
20956553Smarkm#
21056553Smarkm#
21138003Sdima# Kerberos5
21256553Smarkm# If you want to install MIT Kerberos5 port somewhere other than /usr/local,
21356553Smarkm# define this (this is also used to tell ssh1 that kerberos is needed):
21438003Sdima#
21556553Smarkm#KRB5_HOME=		/usr/local
21638003Sdima#
21738003Sdima#
21837162Sjkh# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
21937162Sjkh# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
22037162Sjkh# information on CVSup and these files).  To use, do "make update" in /usr/src.
22110758Sache#
22210758Sache#SUP_UPDATE=     yes
22318716Sache#
22420545Sache#SUP=            /usr/local/bin/cvsup
22549777Ssheldonh#SUPFLAGS=       -g -L 2
22664605Sjoe#SUPHOST=        cvsup.uk.FreeBSD.org
22718716Sache#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
22847651Sbillf#PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
22954670Sbillf#DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
23024225Sjoerg#
23124225Sjoerg# top(1) uses a hash table for the user names.  The size of this hash
23224225Sjoerg# can be tuned to match the number of local users.  The table size should
23324225Sjoerg# be a prime number approximately twice as large as the number of lines in
23424225Sjoerg# /etc/passwd.  The default number is 20011.
23524225Sjoerg#
23624225Sjoerg#TOP_TABLE_SIZE= 101
23758449Snik#
23858449Snik# Documentation
23958449Snik#
24058449Snik# The list of languages and encodings to build and install
24158449Snik#
24278035Sache#DOC_LANG=	en_US.ISO8859-1 ru_RU.KOI8-R
24365970Sgshapiro#
24465970Sgshapiro#
24565970Sgshapiro# sendmail
24672846Sgshapiro#
24772846Sgshapiro# The following sets the default m4 configuration file to use at
24872846Sgshapiro# install time.  Use with caution as a make install will overwrite
24972846Sgshapiro# any existing /etc/mail/sendmail.cf.  Note that SENDMAIL_CF is now
25072916Sgshapiro# deprecated.  The value should be a fully qualified path name.
25172846Sgshapiro#
25273836Sgshapiro#SENDMAIL_MC=/etc/mail/myconfig.mc
25372846Sgshapiro#
25472918Sgshapiro# If you need to build additional .cf files during a make buildworld,
25572918Sgshapiro# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC.
25672918Sgshapiro#
25772918Sgshapiro#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc
25872918Sgshapiro#
25980175Sgshapiro# Setting the following variable modifies the flags passed to m4 when
26080175Sgshapiro# building a .cf file from a .mc file.  It can be used to enable
26180175Sgshapiro# features disabled by default.
26280175Sgshapiro#
26380175Sgshapiro#SENDMAIL_M4_FLAGS=
26480175Sgshapiro#
26578862Sgshapiro# Setting the following variables modifies the build environment for
26665970Sgshapiro# sendmail and its related utilities. For example, SASL support can be
26765970Sgshapiro# added with settings such as:
26865970Sgshapiro#
26974055Sgshapiro#	SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL
27065970Sgshapiro#	SENDMAIL_LDFLAGS=-L/usr/local/lib
27165970Sgshapiro#	SENDMAIL_LDADD=-lsasl
27265970Sgshapiro#
27369380Sgshapiro# Note: If you are using Cyrus SASL with other applications which require
27469380Sgshapiro#	access to the sasldb file, you should add '-D_FFR_UNSAFE_SASL' to
27569380Sgshapiro#	SENDMAIL_CFLAGS.  Also, add the following to your sendmail.mc file:
27669380Sgshapiro#
27769380Sgshapiro#	define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLFile')
27869380Sgshapiro#
27965970Sgshapiro#SENDMAIL_CFLAGS=
28065970Sgshapiro#SENDMAIL_LDFLAGS=
28165970Sgshapiro#SENDMAIL_LDADD=
28265970Sgshapiro#SENDMAIL_DPADD=
283