make.conf revision 252314
150472Speter# $FreeBSD: head/share/examples/etc/make.conf 252314 2013-06-27 19:47:58Z jkim $ 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# 18133476Sharti# Note, that you should not set MAKEOBJDIRPREFIX or MAKEOBJDIR 19133476Sharti# from make.conf (or as command line variables to make). 20133476Sharti# Both variables are environment variables for make and must be used as: 2172679Skris# 22133476Sharti# env MAKEOBJDIRPREFIX=/big/directory make 23133476Sharti# 24133476Sharti# 2599260Sjohan# The CPUTYPE variable controls which processor should be targeted for 2672878Skris# generated code. This controls processor-specific optimizations in 2772878Skris# certain code (currently only OpenSSL) as well as modifying the value 28243315Sjkim# of CFLAGS to contain the appropriate optimization directive to cc. 2972878Skris# The automatic setting of CFLAGS may be overridden using the 3072878Skris# NO_CPU_CFLAGS variable below. 31243846Sjkim# Currently the following CPU types are recognized: 3273145Skris# Intel x86 architecture: 33251692Sjkim# (AMD CPUs) amdfam10, opteron-sse3, athlon64-sse3, k8-sse3, 34251691Sjkim# opteron, athlon64, athlon-fx, k8, athlon-mp, 35251691Sjkim# athlen-xp, athlon-4, athlon-tbird, athlon, k7, 36251691Sjkim# geode, k6-3, k6-2, k6 37243315Sjkim# (Intel CPUs) core2, core, nocona, pentium4m, pentium4, prescott, 38243315Sjkim# pentium3m, pentium3, pentium-m, pentium2, 39243831Sjkim# pentiumpro, pentium-mmx, pentium, i486 40243315Sjkim# (VIA CPUs) c7, c3-2, c3 41252314Sjkim# AMD64 architecture: amdfam10, opteron-sse3, athlon64-sse3, k8-sse3, 42252314Sjkim# opteron, athlon64, k8, core2, nocona 43243315Sjkim# Intel ia64 architecture: itanium2, itanium 44216820Smarius# SPARC-V9 architecture: v9 (generic 64-bit V9), ultrasparc (default 45216820Smarius# if omitted), ultrasparc3 46243315Sjkim# Additionally the following CPU types are recognized by clang: 47243315Sjkim# Intel x86 architecture (for both amd64 and i386): 48251691Sjkim# (AMD CPUs) bdver2, bdver1, btver2, btver1 49243846Sjkim# (Intel CPUs) core-avx2, core-avx-i, corei7-avx, corei7, atom 5072679Skris# 51101232Sru# (?= allows to buildworld for a different CPUTYPE.) 52101232Sru# 53136608Sobrien#CPUTYPE?=pentium3 54136914Sru#NO_CPU_CFLAGS= # Don't add -march=<cpu> to CFLAGS automatically 55136914Sru#NO_CPU_COPTFLAGS= # Don't add -march=<cpu> to COPTFLAGS automatically 5672878Skris# 5758648Skris# CFLAGS controls the compiler settings used when compiling C code. 58131467Sdes# Note that optimization settings other than -O and -O2 are not recommended 5958648Skris# or supported for compiling the world or the kernel - please revert any 60244122Seadler# nonstandard optimization settings 61162276Sru# before submitting bug reports without patches to the developers. 621664Sphk# 6359006Sobrien# CXXFLAGS controls the compiler settings used when compiling C++ code. 6459006Sobrien# Note that CXXFLAGS is initially set to the value of CFLAGS. If you wish 6559006Sobrien# to add to CXXFLAGS value, "+=" must be used rather than "=". Using "=" 6659006Sobrien# alone will remove the often needed contents of CFLAGS from CXXFLAGS. 671664Sphk# 68244122Seadler# Additional compiler flags can be specified that extend or override 69244122Seadler# default ones. However, neither the base system nor ports are guaranteed 70244122Seadler# to build and function without problems with non-default settings. 7159006Sobrien# 72244122Seadler# CFLAGS+= -msse3 73244122Seadler# CXXFLAGS+= -msse3 74244122Seadler# 75104124Sjmallett# MAKE_SHELL controls the shell used internally by make(1) to process the 76104124Sjmallett# command scripts in makefiles. Three shells are supported, sh, ksh, and 77104124Sjmallett# csh. Using sh is most common, and advised. Using ksh *may* work, but is 78104124Sjmallett# not guaranteed to. Using csh is absurd. The default is to use sh. 79104124Sjmallett# 80104124Sjmallett#MAKE_SHELL?=sh 81104124Sjmallett# 8262136Sobrien# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested 8362136Sobrien# for use in developing FreeBSD and testing changes. They can be used by 8480452Speter# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf. -Wconversion is not 8599260Sjohan# included here due to compiler bugs, e.g., mkdir()'s mode_t argument. 8662136Sobrien# 8782604Salex#BDECFLAGS= -W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \ 8882604Salex# -Wcast-qual -Wchar-subscripts -Winline \ 8982604Salex# -Wmissing-prototypes -Wnested-externs -Wpointer-arith \ 9082604Salex# -Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings 9162136Sobrien# 9268917Sdougb# To compile just the kernel with special optimizations, you should use 9368263Sobrien# this instead of CFLAGS (which is not applicable to kernel builds anyway). 9468263Sobrien# There is very little to gain by using higher optimization levels, and doing 9568263Sobrien# so can cause problems. 9665380Sobrien# 9765380Sobrien#COPTFLAGS= -O -pipe 9865380Sobrien# 99230306Sschweikh# Compare before install. 100249952Sbdrewery#INSTALL+= -C 10135222Sache# 102230306Sschweikh# Mtree will follow symlinks. 10365957Sache#MTREE_FOLLOWS_SYMLINKS= -L 10465884Sache# 10597387Stjr# To enable installing newgrp(1) with the setuid bit turned on. 10697387Stjr# Without the setuid bit, newgrp cannot change users' groups. 107136914Sru#ENABLE_SUID_NEWGRP= 10897387Stjr# 10951299Speter# To avoid building various parts of the base system: 110136914Sru#NO_MODULES= # do not build modules with the kernel 111139120Sru#NO_SHARE= # do not go into the share subdir 112151552Strhodes#NO_SHARED= # build /bin and /sbin statically linked (bad idea) 11335206Sphk# 114138896Strhodes# Variables that control how ppp(8) is built. 115139118Sru#PPP_NO_NAT= # do not build with NAT support (see make.conf(5)) 116139118Sru#PPP_NO_NETGRAPH= # do not build with Netgraph support 117151592Smaxim#PPP_NO_RADIUS= # do not build with RADIUS support 118139118Sru#PPP_NO_SUID= # build with normal permissions 119138896Strhodes# 120139125Sru#TRACEROUTE_NO_IPSEC= # do not build traceroute(8) with IPSEC support 121139125Sru# 122230306Sschweikh# To build sys/modules when building the world (our old way of doing things). 123136914Sru#MODULES_WITH_WORLD= # do not build modules when building kernel 12461744Sobrien# 12588461Sru# The list of modules to build instead of all of them. 12688461Sru#MODULES_OVERRIDE= linux ipfw 12757458Smarkm# 128140546Swes# The list of modules to never build, applied *after* MODULES_OVERRIDE. 129140546Swes#WITHOUT_MODULES= bktr plip 130140546Swes# 1311684Scsgr# If you do not want unformatted manual pages to be compressed 1321684Scsgr# when they are installed: 1331684Scsgr# 134139103Sru#NO_MANCOMPRESS= 1351697Sache# 1361697Sache# 1371697Sache# Default format for system documentation, depends on your printer. 138230306Sschweikh# Set this to "ascii" for simple printers or screen. 1391697Sache# 14025424Sandreas#PRINTERDEVICE= ps 1411733Sadam# 1421733Sadam# 14314102Sadam# How long to wait for a console keypress before booting the default kernel. 14414102Sadam# This value is approximately in milliseconds. Keypresses are accepted by the 14514102Sadam# BIOS before booting from disk, making it possible to give custom boot 14614102Sadam# parameters even when this is set to 0. 1471733Sadam# 1481740Sadam#BOOTWAIT=0 1493023Srgrimes#BOOTWAIT=30000 1501733Sadam# 15118927Spst# By default, the system will always use the keyboard/video card as system 15226522Sbde# console. However, the boot blocks may be dynamically configured to use a 15326522Sbde# serial port in addition to or instead of the keyboard/video console. 1541733Sadam# 15518927Spst# By default we use COM1 as our serial console port *if* we're going to use 15649190Snik# a serial port as our console at all. Alter as necessary. 15718927Spst# 15849190Snik# COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8 15949190Snik# 16018928Spst#BOOT_COMCONSOLE_PORT= 0x3F8 16118927Spst# 16226522Sbde# The default serial console speed is 9600. Set the speed to a larger value 16326522Sbde# for better interactive response. 16418927Spst# 16526522Sbde#BOOT_COMCONSOLE_SPEED= 115200 16618927Spst# 16768310Sps# By default the 'pxeboot' loader retrieves the kernel via NFS. Defining 16868310Sps# this and recompiling /usr/src/sys/boot will cause it to retrieve the kernel 16968310Sps# via TFTP. This allows pxeboot to load a custom BOOTP diskless kernel yet 17099260Sjohan# still mount the server's '/' (i.e. rather than load the server's kernel). 17118927Spst# 17268310Sps#LOADER_TFTP_SUPPORT= YES 17368310Sps# 17475982Sjim# 17596436Snectar# Kerberos 5 su (k5su) 17696436Snectar# If you want to use the k5su utility, define this to have it installed 17796436Snectar# set-user-ID. 178136914Sru#ENABLE_SUID_K5SU= 17956553Smarkm# 18096436Snectar# 18137162Sjkh# CVSup update flags. Edit SUPFILE settings to reflect whichever distribution 18237162Sjkh# file(s) you use on your site (see /usr/share/examples/cvsup/README for more 18337162Sjkh# information on CVSup and these files). To use, do "make update" in /usr/src. 18410758Sache# 185136914Sru#SUP_UPDATE= 18618716Sache# 187156887Smux#SUP= /usr/bin/csup 188212138Smaxim#SUPFLAGS= -L 2 18964605Sjoe#SUPHOST= cvsup.uk.FreeBSD.org 19018716Sache#SUPFILE= /usr/share/examples/cvsup/standard-supfile 19147651Sbillf#PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile 19224225Sjoerg# 19324225Sjoerg# top(1) uses a hash table for the user names. The size of this hash 19424225Sjoerg# can be tuned to match the number of local users. The table size should 19524225Sjoerg# be a prime number approximately twice as large as the number of lines in 19624225Sjoerg# /etc/passwd. The default number is 20011. 19724225Sjoerg# 19824225Sjoerg#TOP_TABLE_SIZE= 101 19958449Snik# 20058449Snik# Documentation 20158449Snik# 202230306Sschweikh# The list of languages and encodings to build and install. 20358449Snik# 20478035Sache#DOC_LANG= en_US.ISO8859-1 ru_RU.KOI8-R 20565970Sgshapiro# 20665970Sgshapiro# 20765970Sgshapiro# sendmail 20872846Sgshapiro# 20972846Sgshapiro# The following sets the default m4 configuration file to use at 21072846Sgshapiro# install time. Use with caution as a make install will overwrite 21172846Sgshapiro# any existing /etc/mail/sendmail.cf. Note that SENDMAIL_CF is now 21272916Sgshapiro# deprecated. The value should be a fully qualified path name. 21372846Sgshapiro# 21473836Sgshapiro#SENDMAIL_MC=/etc/mail/myconfig.mc 21572846Sgshapiro# 21694676Sgshapiro# The following sets the default m4 configuration file for mail 21794676Sgshapiro# submission to use at install time. Use with caution as a make 21894676Sgshapiro# install will overwrite any existing /etc/mail/submit.cf. The 21994676Sgshapiro# value should be a fully qualified path name. 22094676Sgshapiro# 22194676Sgshapiro#SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc 22294676Sgshapiro# 22372918Sgshapiro# If you need to build additional .cf files during a make buildworld, 22472918Sgshapiro# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC. 22572918Sgshapiro# 22672918Sgshapiro#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc 22772918Sgshapiro# 228120397Sgshapiro# The following overrides the default location for the m4 configuration 229120397Sgshapiro# files used to build a .cf file from a .mc file. 230120397Sgshapiro# 231120397Sgshapiro#SENDMAIL_CF_DIR=/usr/local/share/sendmail/cf 232120397Sgshapiro# 23380175Sgshapiro# Setting the following variable modifies the flags passed to m4 when 23480175Sgshapiro# building a .cf file from a .mc file. It can be used to enable 23580175Sgshapiro# features disabled by default. 23680175Sgshapiro# 23780175Sgshapiro#SENDMAIL_M4_FLAGS= 23880175Sgshapiro# 23978862Sgshapiro# Setting the following variables modifies the build environment for 24065970Sgshapiro# sendmail and its related utilities. For example, SASL support can be 24165970Sgshapiro# added with settings such as: 24265970Sgshapiro# 243103898Sume# with SASLv1: 244101065Sume# SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL 24565970Sgshapiro# SENDMAIL_LDFLAGS=-L/usr/local/lib 24665970Sgshapiro# SENDMAIL_LDADD=-lsasl 24765970Sgshapiro# 248103898Sume# with SASLv2: 249103898Sume# SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2 250103898Sume# SENDMAIL_LDFLAGS=-L/usr/local/lib 251103898Sume# SENDMAIL_LDADD=-lsasl2 252103898Sume# 25369380Sgshapiro# Note: If you are using Cyrus SASL with other applications which require 25493449Sume# access to the sasldb file, you should add the following to your 25593449Sume# sendmail.mc file: 25669380Sgshapiro# 25793446Sume# define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile') 25869380Sgshapiro# 25965970Sgshapiro#SENDMAIL_CFLAGS= 26065970Sgshapiro#SENDMAIL_LDFLAGS= 26165970Sgshapiro#SENDMAIL_LDADD= 26265970Sgshapiro#SENDMAIL_DPADD= 26390803Sgshapiro# 26490803Sgshapiro# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a 26590803Sgshapiro# set-user-ID root binary instead of a set-group-ID smmsp binary and will 26690803Sgshapiro# prevent the installation of /etc/mail/submit.cf. 26790803Sgshapiro# This is a deprecated mode of operation. See etc/mail/README for more 26890803Sgshapiro# information. 26990803Sgshapiro# 27090803Sgshapiro#SENDMAIL_SET_USER_ID= 27197200Sgshapiro# 27297200Sgshapiro# The permissions to use on alias and map databases generated using 27397200Sgshapiro# /etc/mail/Makefile. Defaults to 0640. 27497200Sgshapiro# 27597200Sgshapiro#SENDMAIL_MAP_PERMS= 276217826Ssem# 277217826Ssem# 278217826Ssem# It is also possible to set variables in make.conf which will only be 279217826Ssem# used when compiling a specific port. For more details see make(1). 280217826Ssem# 281217826Ssem#.if ${.CURDIR:M*/irc/irssi-devel*} 282217826Ssem#WITH_DEBUG=YES 283217826Ssem#.endif 284217826Ssem# 285217826Ssem# Another approach is to use /usr/ports/ports-mgmt/portconf which has 286217826Ssem# its own config file for port specific options. 287