2 dnl Default cupsd configuration settings for CUPS.
4 dnl Copyright 2007-2017 by Apple Inc.
5 dnl Copyright 2006-2007 by Easy Software Products, all rights reserved.
7 dnl These coded instructions, statements, and computer programs are the
8 dnl property of Apple Inc. and are protected by Federal copyright
9 dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
10 dnl which should have been included with this file. If this file is
11 dnl missing or damaged, see the license at "http://www.cups.org/".
14 dnl Default languages...
15 LANGUAGES="`ls -1 locale/cups_*.po 2>/dev/null | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
17 AC_ARG_WITH(languages, [ --with-languages set installed languages, default=all ],[
19 none | no) LANGUAGES="" ;;
21 *) LANGUAGES="$withval" ;;
25 dnl macOS bundle-based localization support
26 AC_ARG_WITH(bundledir, [ --with-bundledir set macOS localization bundle directory ],
27 CUPS_BUNDLEDIR="$withval",
28 if test "x$host_os_name" = xdarwin -a $host_os_version -ge 100; then
29 CUPS_BUNDLEDIR="/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A"
35 AC_SUBST(CUPS_BUNDLEDIR)
36 if test "x$CUPS_BUNDLEDIR" != x; then
37 AC_DEFINE_UNQUOTED(CUPS_BUNDLEDIR, "$CUPS_BUNDLEDIR")
40 dnl Default executable file permissions
41 AC_ARG_WITH(exe_file_perm, [ --with-exe-file-perm set default exectuable permissions value, default=0555],
42 CUPS_EXE_FILE_PERM="$withval",
43 [case "$host_os_name" in
45 CUPS_EXE_FILE_PERM="755"
48 CUPS_EXE_FILE_PERM="555"
51 AC_SUBST(CUPS_EXE_FILE_PERM)
53 dnl Default ConfigFilePerm
54 AC_ARG_WITH(config_file_perm, [ --with-config-file-perm set default ConfigFilePerm value, default=0640],
55 CUPS_CONFIG_FILE_PERM="$withval",
56 [if test "x$host_os_name" = xdarwin; then
57 CUPS_CONFIG_FILE_PERM="644"
59 CUPS_CONFIG_FILE_PERM="640"
61 AC_SUBST(CUPS_CONFIG_FILE_PERM)
62 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_CONFIG_FILE_PERM, 0$CUPS_CONFIG_FILE_PERM)
64 dnl Default permissions for cupsd
65 AC_ARG_WITH(cupsd_file_perm, [ --with-cupsd-file-perm set default cupsd permissions, default=0500],
66 CUPS_CUPSD_FILE_PERM="$withval",
67 [case "$host_os_name" in
69 CUPS_CUPSD_FILE_PERM="700"
72 CUPS_CUPSD_FILE_PERM="500"
75 AC_SUBST(CUPS_CUPSD_FILE_PERM)
77 dnl Default LogFilePerm
78 AC_ARG_WITH(log_file_perm, [ --with-log-file-perm set default LogFilePerm value, default=0644],
79 CUPS_LOG_FILE_PERM="$withval",
80 CUPS_LOG_FILE_PERM="644")
81 AC_SUBST(CUPS_LOG_FILE_PERM)
82 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_FILE_PERM, 0$CUPS_LOG_FILE_PERM)
84 dnl Default FatalErrors
85 AC_ARG_WITH(fatal_errors, [ --with-fatal-errors set default FatalErrors value, default=config],
86 CUPS_FATAL_ERRORS="$withval",
87 CUPS_FATAL_ERRORS="config")
88 AC_SUBST(CUPS_FATAL_ERRORS)
89 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_FATAL_ERRORS, "$CUPS_FATAL_ERRORS")
92 AC_ARG_WITH(log_level, [ --with-log-level set default LogLevel value, default=warn],
93 CUPS_LOG_LEVEL="$withval",
94 CUPS_LOG_LEVEL="warn")
95 AC_SUBST(CUPS_LOG_LEVEL)
96 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_LEVEL, "$CUPS_LOG_LEVEL")
98 dnl Default AccessLogLevel
99 AC_ARG_WITH(access_log_level, [ --with-access-log-level set default AccessLogLevel value, default=none],
100 CUPS_ACCESS_LOG_LEVEL="$withval",
101 CUPS_ACCESS_LOG_LEVEL="none")
102 AC_SUBST(CUPS_ACCESS_LOG_LEVEL)
103 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_ACCESS_LOG_LEVEL, "$CUPS_ACCESS_LOG_LEVEL")
105 dnl Default PageLogFormat
106 AC_ARG_ENABLE(page_logging, [ --enable-page-logging enable page_log by default])
107 if test "x$enable_page_logging" = xyes; then
108 CUPS_PAGE_LOG_FORMAT=""
110 CUPS_PAGE_LOG_FORMAT="PageLogFormat"
112 AC_SUBST(CUPS_PAGE_LOG_FORMAT)
115 AC_ARG_ENABLE(browsing, [ --disable-browsing disable Browsing by default])
116 if test "x$enable_browsing" = xno; then
118 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 0)
121 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 1)
123 AC_SUBST(CUPS_BROWSING)
125 dnl Default BrowseLocalProtocols
126 AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalProtocols, default=""],
127 default_local_protocols="$withval",
128 default_local_protocols="default")
130 if test x$with_local_protocols != xno; then
131 if test "x$default_local_protocols" = "xdefault"; then
132 if test "x$DNSSD_BACKEND" != "x"; then
133 CUPS_BROWSE_LOCAL_PROTOCOLS="dnssd"
135 CUPS_BROWSE_LOCAL_PROTOCOLS=""
138 CUPS_BROWSE_LOCAL_PROTOCOLS="$default_local_protocols"
141 CUPS_BROWSE_LOCAL_PROTOCOLS=""
144 AC_SUBST(CUPS_BROWSE_LOCAL_PROTOCOLS)
145 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS,
146 "$CUPS_BROWSE_LOCAL_PROTOCOLS")
148 dnl Default DefaultShared
149 AC_ARG_ENABLE(default_shared, [ --disable-default-shared
150 disable DefaultShared by default])
151 if test "x$enable_default_shared" = xno; then
152 CUPS_DEFAULT_SHARED="No"
153 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 0)
155 CUPS_DEFAULT_SHARED="Yes"
156 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 1)
158 AC_SUBST(CUPS_DEFAULT_SHARED)
160 dnl Determine the correct username and group for this OS...
161 AC_ARG_WITH(cups_user, [ --with-cups-user set default user for CUPS],
162 CUPS_USER="$withval",
163 AC_MSG_CHECKING(for default print user)
164 if test x$host_os_name = xdarwin; then
165 if test x`id -u _lp 2>/dev/null` = x; then
170 AC_MSG_RESULT($CUPS_USER)
171 elif test -f /etc/passwd; then
173 for user in lp lpd guest daemon nobody; do
174 if test "`grep \^${user}: /etc/passwd`" != ""; then
181 if test x$CUPS_USER = x; then
183 AC_MSG_RESULT(not found, using "$CUPS_USER")
187 AC_MSG_RESULT(no password file, using "$CUPS_USER")
190 if test "x$CUPS_USER" = "xroot" -o "x$CUPS_USER" = "x0"; then
191 AC_MSG_ERROR([The default user for CUPS cannot be root!])
194 AC_ARG_WITH(cups_group, [ --with-cups-group set default group for CUPS],
195 CUPS_GROUP="$withval",
196 AC_MSG_CHECKING(for default print group)
197 if test x$host_os_name = xdarwin; then
198 if test x`id -g _lp 2>/dev/null` = x; then
203 AC_MSG_RESULT($CUPS_GROUP)
204 elif test -f /etc/group; then
205 GROUP_LIST="_lp lp nobody"
207 for group in $GROUP_LIST; do
208 if test "`grep \^${group}: /etc/group`" != ""; then
210 AC_MSG_RESULT($group)
215 if test x$CUPS_GROUP = x; then
217 AC_MSG_RESULT(not found, using "$CUPS_GROUP")
221 AC_MSG_RESULT(no group file, using "$CUPS_GROUP")
224 if test "x$CUPS_GROUP" = "xroot" -o "x$CUPS_GROUP" = "xwheel" -o "x$CUPS_GROUP" = "x0"; then
225 AC_MSG_ERROR([The default group for CUPS cannot be root!])
228 AC_ARG_WITH(system_groups, [ --with-system-groups set default system groups for CUPS],
229 CUPS_SYSTEM_GROUPS="$withval",
230 if test x$host_os_name = xdarwin; then
231 CUPS_SYSTEM_GROUPS="admin"
233 AC_MSG_CHECKING(for default system groups)
234 if test -f /etc/group; then
235 CUPS_SYSTEM_GROUPS=""
236 GROUP_LIST="lpadmin sys system root"
237 for group in $GROUP_LIST; do
238 if test "`grep \^${group}: /etc/group`" != ""; then
239 if test "x$CUPS_SYSTEM_GROUPS" = x; then
240 CUPS_SYSTEM_GROUPS="$group"
242 CUPS_SYSTEM_GROUPS="$CUPS_SYSTEM_GROUPS $group"
247 if test "x$CUPS_SYSTEM_GROUPS" = x; then
248 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
249 AC_MSG_RESULT(no groups found, using "$CUPS_SYSTEM_GROUPS")
251 AC_MSG_RESULT("$CUPS_SYSTEM_GROUPS")
254 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
255 AC_MSG_RESULT(no group file, using "$CUPS_SYSTEM_GROUPS")
259 CUPS_PRIMARY_SYSTEM_GROUP="`echo $CUPS_SYSTEM_GROUPS | awk '{print $1}'`"
261 for group in $CUPS_SYSTEM_GROUPS; do
262 if test "x$CUPS_GROUP" = "x$group"; then
263 AC_MSG_ERROR([The default system groups cannot contain the default CUPS group!])
269 AC_SUBST(CUPS_SYSTEM_GROUPS)
270 AC_SUBST(CUPS_PRIMARY_SYSTEM_GROUP)
272 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USER, "$CUPS_USER")
273 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GROUP, "$CUPS_GROUP")
274 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SYSTEM_GROUPS, "$CUPS_SYSTEM_GROUPS")
276 dnl Default printcap file...
277 AC_ARG_WITH(printcap, [ --with-printcap set default printcap file],
278 default_printcap="$withval",
279 default_printcap="default")
281 if test x$default_printcap != xno; then
282 if test "x$default_printcap" = "xdefault"; then
283 case $host_os_name in
285 if test $host_os_version -ge 90; then
286 CUPS_DEFAULT_PRINTCAP="/Library/Preferences/org.cups.printers.plist"
288 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
292 CUPS_DEFAULT_PRINTCAP="/etc/printers.conf"
295 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
299 CUPS_DEFAULT_PRINTCAP="$default_printcap"
302 CUPS_DEFAULT_PRINTCAP=""
305 AC_SUBST(CUPS_DEFAULT_PRINTCAP)
306 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTCAP, "$CUPS_DEFAULT_PRINTCAP")
308 dnl Default LPD config file...
309 AC_ARG_WITH(lpdconfigfile, [ --with-lpdconfigfile set default LPDConfigFile URI],
310 default_lpdconfigfile="$withval",
311 default_lpdconfigfile="default")
313 if test x$default_lpdconfigfile != xno; then
314 if test "x$default_lpdconfigfile" = "xdefault"; then
315 case $host_os_name in
317 CUPS_DEFAULT_LPD_CONFIG_FILE="launchd:///System/Library/LaunchDaemons/org.cups.cups-lpd.plist"
320 if test "x$XINETD" != x; then
321 CUPS_DEFAULT_LPD_CONFIG_FILE="xinetd://$XINETD/cups-lpd"
323 CUPS_DEFAULT_LPD_CONFIG_FILE=""
328 CUPS_DEFAULT_LPD_CONFIG_FILE="$default_lpdconfigfile"
331 CUPS_DEFAULT_LPD_CONFIG_FILE=""
334 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LPD_CONFIG_FILE, "$CUPS_DEFAULT_LPD_CONFIG_FILE")
335 AC_SUBST(CUPS_DEFAULT_LPD_CONFIG_FILE)
337 dnl Default SMB config file...
338 AC_ARG_WITH(smbconfigfile, [ --with-smbconfigfile set default SMBConfigFile URI],
339 default_smbconfigfile="$withval",
340 default_smbconfigfile="default")
342 if test x$default_smbconfigfile != xno; then
343 if test "x$default_smbconfigfile" = "xdefault"; then
344 if test -f /etc/smb.conf; then
345 CUPS_DEFAULT_SMB_CONFIG_FILE="samba:///etc/smb.conf"
347 CUPS_DEFAULT_SMB_CONFIG_FILE=""
350 CUPS_DEFAULT_SMB_CONFIG_FILE="$default_smbconfigfile"
353 CUPS_DEFAULT_SMB_CONFIG_FILE=""
356 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SMB_CONFIG_FILE, "$CUPS_DEFAULT_SMB_CONFIG_FILE")
357 AC_SUBST(CUPS_DEFAULT_SMB_CONFIG_FILE)
359 dnl Default MaxCopies value...
360 AC_ARG_WITH(max-copies, [ --with-max-copies set default max copies value, default=9999 ],
361 CUPS_MAX_COPIES="$withval",
362 CUPS_MAX_COPIES="9999")
364 AC_SUBST(CUPS_MAX_COPIES)
365 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_MAX_COPIES, $CUPS_MAX_COPIES)
367 dnl Default raw printing state
368 AC_ARG_ENABLE(raw_printing, [ --disable-raw-printing do not allow raw printing by default])
369 if test "x$enable_raw_printing" != xno; then
370 DEFAULT_RAW_PRINTING=""
372 DEFAULT_RAW_PRINTING="#"
374 AC_SUBST(DEFAULT_RAW_PRINTING)
376 dnl Default SNMP options...
377 AC_ARG_WITH(snmp-address, [ --with-snmp-address set SNMP query address, default=auto ],
378 if test "x$withval" = x; then
381 CUPS_SNMP_ADDRESS="Address $withval"
383 if test "x$host_os_name" = xdarwin; then
386 CUPS_SNMP_ADDRESS="Address @LOCAL"
389 AC_ARG_WITH(snmp-community, [ --with-snmp-community set SNMP community, default=public ],
390 CUPS_SNMP_COMMUNITY="Community $withval",
391 CUPS_SNMP_COMMUNITY="Community public")
393 AC_SUBST(CUPS_SNMP_ADDRESS)
394 AC_SUBST(CUPS_SNMP_COMMUNITY)
396 dnl New default port definition for IPP...
397 AC_ARG_WITH(ipp-port, [ --with-ipp-port set port number for IPP, default=631 ],
398 DEFAULT_IPP_PORT="$withval",
399 DEFAULT_IPP_PORT="631")
401 AC_SUBST(DEFAULT_IPP_PORT)
402 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
405 AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for macOS])
406 case "x$enable_webif" in
416 if test $host_os_name = darwin; then
427 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_WEBIF, $CUPS_DEFAULT_WEBIF)