1# 2# NOTE: Please would any committer updating this file also update the 3# make.conf(5) manual page, if necessary, which is located in 4# src/share/man/man5/make.conf.5. 5# 6# /etc/make.conf, if present, will be read by make (see 7# /usr/share/mk/sys.mk). It allows you to override macro definitions 8# to make without changing your source tree, or anything the source 9# tree installs. 10# 11# This file must be in valid Makefile syntax. 12# 13# There are additional things you can put into /etc/make.conf. 14# You have to find those in the Makefiles and documentation of 15# the source tree. 16# 17# Note, that you should not set MAKEOBJDIRPREFIX or MAKEOBJDIR 18# from make.conf (or as command line variables to make). 19# Both variables are environment variables for make and must be used as: 20# 21# env MAKEOBJDIRPREFIX=/big/directory make 22# 23# 24# The CPUTYPE variable controls which processor should be targeted for 25# generated code. This controls processor-specific optimizations in 26# certain code (currently only OpenSSL) as well as modifying the value 27# of CFLAGS to contain the appropriate optimization directive to cc. 28# The automatic setting of CFLAGS may be overridden using the 29# NO_CPU_CFLAGS variable below. 30# Currently the following CPU types are recognized: 31# Intel x86 architecture: 32# (AMD CPUs) znver4, znver3, znver2, znver1, bdver4, bdver3, bdver2, 33# bdver1, btver2, btver1, amdfam10, opteron-sse3, 34# athlon64-sse3, k8-sse3, opteron, athlon64, athlon-fx, 35# k8, athlon-mp, athlon-xp, athlon-4, athlon-tbird, 36# athlon, k7, geode, k6-3, k6-2, k6 37# (Intel CPUs) alderlake, sapphirerapids, tigerlake, cooperlake, 38# cascadelake, tremont, goldmont-plus, icelake-server, 39# icelake-client, cannonlake, knm, skylake-avx512, knl, 40# goldmont, skylake, broadwell, haswell, ivybridge, 41# sandybridge, westmere, nehalem, silvermont, bonnell, 42# core2, core, nocona, pentium4m, pentium4, prescott, 43# pentium3m, pentium3, pentium-m, pentium2, pentiumpro, 44# pentium-mmx, pentium, i486 45# (VIA CPUs) c7, c3-2, c3 46# ARM architecture: armv7, armv7-a, armv7ve, generic-armv7-a, cortex-a5, 47# cortex-a7, cortex-a8, cortex-a9, cortex-a12, 48# cortex-a15, cortex-a17 49# ARM64 architecture: cortex-a53, cortex-a57, cortex-a72, 50# exynos-m1 51# 52# (?= allows to buildworld for a different CPUTYPE.) 53# 54#CPUTYPE?=pentium3 55#NO_CPU_CFLAGS= # Don't add -march=<cpu> to CFLAGS automatically 56# 57# CFLAGS controls the compiler settings used when compiling C code. 58# Note that optimization settings other than -O and -O2 are not recommended 59# or supported for compiling the world or the kernel - please revert any 60# nonstandard optimization settings 61# before submitting bug reports without patches to the developers. 62# 63# CFLAGS.arch provides a mechanism for applying CFLAGS only when building 64# the given architecture. This is useful primarily on a system used for 65# cross-building, when you have a set of flags to apply to the TARGET_ARCH 66# being cross-built but don't want those settings applied to building the 67# cross-tools or other components that run on the build host machine. 68# 69# CXXFLAGS controls the compiler settings used when compiling C++ code. 70# Note that CXXFLAGS is initially set to the value of CFLAGS. If you wish 71# to add to CXXFLAGS value, "+=" must be used rather than "=". Using "=" 72# alone will remove the often needed contents of CFLAGS from CXXFLAGS. 73# 74# Additional compiler flags can be specified that extend or override 75# default ones. However, neither the base system nor ports are guaranteed 76# to build and function without problems with non-default settings. 77# 78# CFLAGS+= -msse3 79# CXXFLAGS+= -msse3 80# CFLAGS.armv7+= -mfloat-abi=softfp 81# 82# MAKE_SHELL controls the shell used internally by make(1) to process the 83# command scripts in makefiles. Three shells are supported, sh, ksh, and 84# csh. Using sh is most common, and advised. Using ksh *may* work, but is 85# not guaranteed to. Using csh is absurd. The default is to use sh. 86# 87#MAKE_SHELL?=sh 88# 89# BDECFLAGS are a set of gcc warning settings that Bruce Evans has suggested 90# for use in developing FreeBSD and testing changes. They can be used by 91# putting "CFLAGS+=${BDECFLAGS}" in /etc/make.conf. -Wconversion is not 92# included here due to compiler bugs, e.g., mkdir()'s mode_t argument. 93# 94#BDECFLAGS= -W -Wall -ansi -pedantic -Wbad-function-cast -Wcast-align \ 95# -Wcast-qual -Wchar-subscripts -Winline \ 96# -Wmissing-prototypes -Wnested-externs -Wpointer-arith \ 97# -Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings 98# 99# To compile just the kernel with special optimizations, you should use 100# this instead of CFLAGS (which is not applicable to kernel builds anyway). 101# There is very little to gain by using higher optimization levels, and doing 102# so can cause problems. 103# 104#COPTFLAGS= -O -pipe 105# 106# Compare before install. 107#INSTALL+= -C 108# 109# Mtree will follow symlinks. 110#MTREE_FOLLOWS_SYMLINKS= -L 111# 112# To enable installing newgrp(1) with the setuid bit turned on. 113# Without the setuid bit, newgrp cannot change users' groups. 114#ENABLE_SUID_NEWGRP= 115# 116# To avoid building various parts of the base system: 117#NO_MODULES= # do not build modules with the kernel 118#NO_SHARE= # do not go into the share subdir 119#NO_SHARED= # build /bin and /sbin statically linked (bad idea) 120# 121# Variables that control how ppp(8) is built. 122#PPP_NO_NAT= # do not build with NAT support (see make.conf(5)) 123#PPP_NO_NETGRAPH= # do not build with Netgraph support 124#PPP_NO_RADIUS= # do not build with RADIUS support 125#PPP_NO_SUID= # build with normal permissions 126# 127#TRACEROUTE_NO_IPSEC= # do not build traceroute(8) with IPSEC support 128# 129# To build sys/modules when building the world (our old way of doing things). 130#MODULES_WITH_WORLD= # do not build modules when building kernel 131# 132# The list of modules to build instead of all of them. 133#MODULES_OVERRIDE= linux ipfw 134# 135# The list of modules to never build, applied *after* MODULES_OVERRIDE. 136#WITHOUT_MODULES= plip 137# 138# If you do not want unformatted manual pages to be compressed 139# when they are installed: 140# 141#WITHOUT_MANCOMPRESS=t 142# 143# 144# Default format for system documentation in share/doc, depends on 145# your printer. Set this to "ascii" for simple printers or screen. 146# 147#PRINTERDEVICE= ps 148# 149# 150# How long to wait for a console keypress before booting the default kernel. 151# This value is approximately in milliseconds. Keypresses are accepted by the 152# BIOS before booting from disk, making it possible to give custom boot 153# parameters even when this is set to 0. 154# 155#BOOTWAIT=0 156#BOOTWAIT=30000 157# 158# By default, the system will always use the keyboard/video card as system 159# console. However, the boot blocks may be dynamically configured to use a 160# serial port in addition to or instead of the keyboard/video console. 161# 162# By default we use COM1 as our serial console port *if* we're going to use 163# a serial port as our console at all. Alter as necessary. 164# 165# COM1: = 0x3F8, COM2: = 0x2F8, COM3: = 0x3E8, COM4: = 0x2E8 166# 167#BOOT_COMCONSOLE_PORT= 0x3F8 168# 169# The default serial console speed is 115200. It can be set to a different 170# rate, if desired in your environment. 171# 172#BOOT_COMCONSOLE_SPEED= 9600 173# 174# By default the 'pxeboot' loader retrieves the kernel via NFS. Defining 175# this and recompiling /usr/src/stand will cause it to retrieve the kernel 176# via TFTP. This allows pxeboot to load a custom BOOTP diskless kernel yet 177# still mount the server's '/' (i.e. rather than load the server's kernel). 178# 179#LOADER_TFTP_SUPPORT= YES 180# 181# 182# Kerberos 5 su (k5su) 183# If you want to use the k5su utility, define this to have it installed 184# set-user-ID. 185#ENABLE_SUID_K5SU= 186# 187# 188# top(1) uses a hash table for the user names. The size of this hash 189# can be tuned to match the number of local users. The table size should 190# be a prime number approximately twice as large as the number of lines in 191# /etc/passwd. The default number is 20011. 192# 193#TOP_TABLE_SIZE= 101 194# 195# Documentation 196# 197# The list of languages to build and install. 198# 199#DOC_LANG= en ru 200# 201# 202# sendmail 203# 204# The following sets the default m4 configuration file to use at 205# install time. Use with caution as a make install will overwrite 206# any existing /etc/mail/sendmail.cf. Note that SENDMAIL_CF is now 207# deprecated. The value should be a fully qualified path name. 208# 209#SENDMAIL_MC=/etc/mail/myconfig.mc 210# 211# The following sets the default m4 configuration file for mail 212# submission to use at install time. Use with caution as a make 213# install will overwrite any existing /etc/mail/submit.cf. The 214# value should be a fully qualified path name. 215# 216#SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc 217# 218# If you need to build additional .cf files during a make buildworld, 219# include the full paths to the .mc files in SENDMAIL_ADDITIONAL_MC. 220# 221#SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc 222# 223# The following overrides the default location for the m4 configuration 224# files used to build a .cf file from a .mc file. 225# 226#SENDMAIL_CF_DIR=/usr/local/share/sendmail/cf 227# 228# Setting the following variable modifies the flags passed to m4 when 229# building a .cf file from a .mc file. It can be used to enable 230# features disabled by default. 231# 232#SENDMAIL_M4_FLAGS= 233# 234# Setting the following variables modifies the build environment for 235# sendmail and its related utilities. For example, SASL support can be 236# added with settings such as: 237# 238# with SASLv1: 239# SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL 240# SENDMAIL_LDADD=/usr/local/lib/libsasl.so 241# 242# with SASLv2: 243# SENDMAIL_CFLAGS=-I/usr/local/include -DSASL=2 244# SENDMAIL_LDADD=/usr/local/lib/libsasl2.so 245# 246# Note: If you are using Cyrus SASL with other applications which require 247# access to the sasldb file, you should add the following to your 248# sendmail.mc file: 249# 250# define(`confDONT_BLAME_SENDMAIL',`GroupReadableSASLDBFile') 251# 252#SENDMAIL_CFLAGS= 253#SENDMAIL_LDFLAGS= 254#SENDMAIL_LDADD= 255#SENDMAIL_DPADD= 256# 257# Setting SENDMAIL_SET_USER_ID will install the sendmail binary as a 258# set-user-ID root binary instead of a set-group-ID smmsp binary and will 259# prevent the installation of /etc/mail/submit.cf. 260# This is a deprecated mode of operation. See etc/mail/README for more 261# information. 262# 263#SENDMAIL_SET_USER_ID= 264# 265# The permissions to use on alias and map databases generated using 266# /etc/mail/Makefile. Defaults to 0640. 267# 268#SENDMAIL_MAP_PERMS= 269# 270# 271# It is also possible to set variables in make.conf which will only be 272# used when compiling a specific port. For more details see make(1). 273# 274#.if ${.CURDIR:M*/irc/irssi-devel*} 275#WITH_DEBUG=YES 276#.endif 277# 278# Another approach is to use /usr/ports/ports-mgmt/portconf which has 279# its own config file for port specific options. 280