]> git.ipfire.org Git - thirdparty/cups.git/blame - config-scripts/cups-defaults.m4
License change: Apache License, Version 2.0.
[thirdparty/cups.git] / config-scripts / cups-defaults.m4
CommitLineData
09ec0018 1dnl
503b54c9 2dnl Default cupsd configuration settings for CUPS.
09ec0018 3dnl
105922ec 4dnl Copyright 2007-2017 by Apple Inc.
503b54c9 5dnl Copyright 2006-2007 by Easy Software Products, all rights reserved.
09ec0018 6dnl
e3101897 7dnl Licensed under Apache License v2.0. See the file "LICENSE" for more information.
09ec0018 8dnl
9
bc44d920 10dnl Default languages...
82cc1f9a 11LANGUAGES="`ls -1 locale/cups_*.po 2>/dev/null | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
bc44d920 12
13AC_ARG_WITH(languages, [ --with-languages set installed languages, default=all ],[
14 case "$withval" in
15 none | no) LANGUAGES="" ;;
16 all) ;;
17 *) LANGUAGES="$withval" ;;
18 esac])
e1d6a774 19AC_SUBST(LANGUAGES)
20
8072030b
MS
21dnl macOS bundle-based localization support
22AC_ARG_WITH(bundledir, [ --with-bundledir set macOS localization bundle directory ],
0837b7e8 23 CUPS_BUNDLEDIR="$withval",
105922ec 24 if test "x$host_os_name" = xdarwin -a $host_os_version -ge 100; then
c779abb0 25 CUPS_BUNDLEDIR="/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A"
0837b7e8
MS
26 LANGUAGES=""
27 else
28 CUPS_BUNDLEDIR=""
29 fi)
30
31AC_SUBST(CUPS_BUNDLEDIR)
32if test "x$CUPS_BUNDLEDIR" != x; then
33 AC_DEFINE_UNQUOTED(CUPS_BUNDLEDIR, "$CUPS_BUNDLEDIR")
34fi
35
d4a895f8 36dnl Default executable file permissions
6eda776e 37AC_ARG_WITH(exe_file_perm, [ --with-exe-file-perm set default executable permissions value, default=0555],
d4a895f8 38 CUPS_EXE_FILE_PERM="$withval",
134d0579 39 [case "$host_os_name" in
827bf9ce
MS
40 linux* | gnu*)
41 CUPS_EXE_FILE_PERM="755"
42 ;;
43 *)
44 CUPS_EXE_FILE_PERM="555"
45 ;;
134d0579 46 esac])
d4a895f8
MS
47AC_SUBST(CUPS_EXE_FILE_PERM)
48
09ec0018 49dnl Default ConfigFilePerm
ed486911 50AC_ARG_WITH(config_file_perm, [ --with-config-file-perm set default ConfigFilePerm value, default=0640],
a4d04587 51 CUPS_CONFIG_FILE_PERM="$withval",
134d0579 52 [if test "x$host_os_name" = xdarwin; then
745129be
MS
53 CUPS_CONFIG_FILE_PERM="644"
54 else
55 CUPS_CONFIG_FILE_PERM="640"
134d0579 56 fi])
09ec0018 57AC_SUBST(CUPS_CONFIG_FILE_PERM)
a4d04587 58AC_DEFINE_UNQUOTED(CUPS_DEFAULT_CONFIG_FILE_PERM, 0$CUPS_CONFIG_FILE_PERM)
09ec0018 59
82cc1f9a
MS
60dnl Default permissions for cupsd
61AC_ARG_WITH(cupsd_file_perm, [ --with-cupsd-file-perm set default cupsd permissions, default=0500],
62 CUPS_CUPSD_FILE_PERM="$withval",
134d0579 63 [case "$host_os_name" in
827bf9ce
MS
64 linux* | gnu*)
65 CUPS_CUPSD_FILE_PERM="700"
66 ;;
67 *)
68 CUPS_CUPSD_FILE_PERM="500"
69 ;;
134d0579 70 esac])
82cc1f9a
MS
71AC_SUBST(CUPS_CUPSD_FILE_PERM)
72
09ec0018 73dnl Default LogFilePerm
ed486911 74AC_ARG_WITH(log_file_perm, [ --with-log-file-perm set default LogFilePerm value, default=0644],
a4d04587 75 CUPS_LOG_FILE_PERM="$withval",
76 CUPS_LOG_FILE_PERM="644")
09ec0018 77AC_SUBST(CUPS_LOG_FILE_PERM)
a4d04587 78AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_FILE_PERM, 0$CUPS_LOG_FILE_PERM)
09ec0018 79
49d87452 80dnl Default FatalErrors
b19ccc9e 81AC_ARG_WITH(fatal_errors, [ --with-fatal-errors set default FatalErrors value, default=config],
49d87452
MS
82 CUPS_FATAL_ERRORS="$withval",
83 CUPS_FATAL_ERRORS="config")
84AC_SUBST(CUPS_FATAL_ERRORS)
85AC_DEFINE_UNQUOTED(CUPS_DEFAULT_FATAL_ERRORS, "$CUPS_FATAL_ERRORS")
86
1f0275e3
MS
87dnl Default LogLevel
88AC_ARG_WITH(log_level, [ --with-log-level set default LogLevel value, default=warn],
89 CUPS_LOG_LEVEL="$withval",
90 CUPS_LOG_LEVEL="warn")
91AC_SUBST(CUPS_LOG_LEVEL)
92AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_LEVEL, "$CUPS_LOG_LEVEL")
93
94dnl Default AccessLogLevel
c9dcc485 95AC_ARG_WITH(access_log_level, [ --with-access-log-level set default AccessLogLevel value, default=none],
9f5eb9be 96 CUPS_ACCESS_LOG_LEVEL="$withval",
c9dcc485 97 CUPS_ACCESS_LOG_LEVEL="none")
1f0275e3
MS
98AC_SUBST(CUPS_ACCESS_LOG_LEVEL)
99AC_DEFINE_UNQUOTED(CUPS_DEFAULT_ACCESS_LOG_LEVEL, "$CUPS_ACCESS_LOG_LEVEL")
100
c9dcc485 101dnl Default PageLogFormat
e87a9968 102AC_ARG_ENABLE(page_logging, [ --enable-page-logging enable page_log by default])
c9dcc485
MS
103if test "x$enable_page_logging" = xyes; then
104 CUPS_PAGE_LOG_FORMAT=""
105else
106 CUPS_PAGE_LOG_FORMAT="PageLogFormat"
107fi
108AC_SUBST(CUPS_PAGE_LOG_FORMAT)
109
09ec0018 110dnl Default Browsing
bf3816c7 111AC_ARG_ENABLE(browsing, [ --disable-browsing disable Browsing by default])
09ec0018 112if test "x$enable_browsing" = xno; then
113 CUPS_BROWSING="No"
114 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 0)
115else
116 CUPS_BROWSING="Yes"
117 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 1)
118fi
119AC_SUBST(CUPS_BROWSING)
120
121dnl Default BrowseLocalProtocols
a2326b5b 122AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalProtocols, default=""],
f7deaa1a 123 default_local_protocols="$withval",
124 default_local_protocols="default")
125
126if test x$with_local_protocols != xno; then
127 if test "x$default_local_protocols" = "xdefault"; then
f3c17241 128 if test "x$DNSSD_BACKEND" != "x"; then
a2326b5b
MS
129 CUPS_BROWSE_LOCAL_PROTOCOLS="dnssd"
130 else
131 CUPS_BROWSE_LOCAL_PROTOCOLS=""
f7deaa1a 132 fi
133 else
134 CUPS_BROWSE_LOCAL_PROTOCOLS="$default_local_protocols"
135 fi
136else
137 CUPS_BROWSE_LOCAL_PROTOCOLS=""
138fi
139
09ec0018 140AC_SUBST(CUPS_BROWSE_LOCAL_PROTOCOLS)
141AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS,
a4d04587 142 "$CUPS_BROWSE_LOCAL_PROTOCOLS")
09ec0018 143
09ec0018 144dnl Default DefaultShared
bf3816c7
MS
145AC_ARG_ENABLE(default_shared, [ --disable-default-shared
146 disable DefaultShared by default])
09ec0018 147if test "x$enable_default_shared" = xno; then
148 CUPS_DEFAULT_SHARED="No"
149 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 0)
150else
151 CUPS_DEFAULT_SHARED="Yes"
152 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 1)
153fi
154AC_SUBST(CUPS_DEFAULT_SHARED)
155
bd7854cb 156dnl Determine the correct username and group for this OS...
ed486911 157AC_ARG_WITH(cups_user, [ --with-cups-user set default user for CUPS],
bd7854cb 158 CUPS_USER="$withval",
159 AC_MSG_CHECKING(for default print user)
105922ec 160 if test x$host_os_name = xdarwin; then
c24d2134 161 if test x`id -u _lp 2>/dev/null` = x; then
355e94dc
MS
162 CUPS_USER="lp";
163 else
164 CUPS_USER="_lp";
165 fi
c24d2134 166 AC_MSG_RESULT($CUPS_USER)
355e94dc 167 elif test -f /etc/passwd; then
bd7854cb 168 CUPS_USER=""
169 for user in lp lpd guest daemon nobody; do
170 if test "`grep \^${user}: /etc/passwd`" != ""; then
171 CUPS_USER="$user"
172 AC_MSG_RESULT($user)
173 break;
174 fi
175 done
176
177 if test x$CUPS_USER = x; then
178 CUPS_USER="nobody"
179 AC_MSG_RESULT(not found, using "$CUPS_USER")
180 fi
181 else
182 CUPS_USER="nobody"
183 AC_MSG_RESULT(no password file, using "$CUPS_USER")
184 fi)
185
5a662dc0
MS
186if test "x$CUPS_USER" = "xroot" -o "x$CUPS_USER" = "x0"; then
187 AC_MSG_ERROR([The default user for CUPS cannot be root!])
188fi
189
ed486911 190AC_ARG_WITH(cups_group, [ --with-cups-group set default group for CUPS],
bd7854cb 191 CUPS_GROUP="$withval",
192 AC_MSG_CHECKING(for default print group)
105922ec 193 if test x$host_os_name = xdarwin; then
c24d2134 194 if test x`id -g _lp 2>/dev/null` = x; then
355e94dc
MS
195 CUPS_GROUP="lp";
196 else
197 CUPS_GROUP="_lp";
198 fi
c24d2134 199 AC_MSG_RESULT($CUPS_GROUP)
355e94dc
MS
200 elif test -f /etc/group; then
201 GROUP_LIST="_lp lp nobody"
bd7854cb 202 CUPS_GROUP=""
203 for group in $GROUP_LIST; do
204 if test "`grep \^${group}: /etc/group`" != ""; then
205 CUPS_GROUP="$group"
206 AC_MSG_RESULT($group)
207 break;
208 fi
209 done
210
211 if test x$CUPS_GROUP = x; then
212 CUPS_GROUP="nobody"
213 AC_MSG_RESULT(not found, using "$CUPS_GROUP")
214 fi
215 else
216 CUPS_GROUP="nobody"
217 AC_MSG_RESULT(no group file, using "$CUPS_GROUP")
218 fi)
219
5a662dc0
MS
220if test "x$CUPS_GROUP" = "xroot" -o "x$CUPS_GROUP" = "xwheel" -o "x$CUPS_GROUP" = "x0"; then
221 AC_MSG_ERROR([The default group for CUPS cannot be root!])
222fi
223
ed486911 224AC_ARG_WITH(system_groups, [ --with-system-groups set default system groups for CUPS],
bd7854cb 225 CUPS_SYSTEM_GROUPS="$withval",
105922ec 226 if test x$host_os_name = xdarwin; then
355e94dc 227 CUPS_SYSTEM_GROUPS="admin"
bd7854cb 228 else
bc44d920 229 AC_MSG_CHECKING(for default system groups)
230 if test -f /etc/group; then
231 CUPS_SYSTEM_GROUPS=""
232 GROUP_LIST="lpadmin sys system root"
233 for group in $GROUP_LIST; do
234 if test "`grep \^${group}: /etc/group`" != ""; then
235 if test "x$CUPS_SYSTEM_GROUPS" = x; then
236 CUPS_SYSTEM_GROUPS="$group"
237 else
238 CUPS_SYSTEM_GROUPS="$CUPS_SYSTEM_GROUPS $group"
239 fi
bd7854cb 240 fi
bc44d920 241 done
bd7854cb 242
bc44d920 243 if test "x$CUPS_SYSTEM_GROUPS" = x; then
244 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
245 AC_MSG_RESULT(no groups found, using "$CUPS_SYSTEM_GROUPS")
246 else
247 AC_MSG_RESULT("$CUPS_SYSTEM_GROUPS")
248 fi
bd7854cb 249 else
bc44d920 250 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
251 AC_MSG_RESULT(no group file, using "$CUPS_SYSTEM_GROUPS")
bd7854cb 252 fi
bd7854cb 253 fi)
254
255CUPS_PRIMARY_SYSTEM_GROUP="`echo $CUPS_SYSTEM_GROUPS | awk '{print $1}'`"
256
5a662dc0
MS
257for group in $CUPS_SYSTEM_GROUPS; do
258 if test "x$CUPS_GROUP" = "x$group"; then
259 AC_MSG_ERROR([The default system groups cannot contain the default CUPS group!])
260 fi
261done
262
bd7854cb 263AC_SUBST(CUPS_USER)
264AC_SUBST(CUPS_GROUP)
265AC_SUBST(CUPS_SYSTEM_GROUPS)
266AC_SUBST(CUPS_PRIMARY_SYSTEM_GROUP)
267
268AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USER, "$CUPS_USER")
269AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GROUP, "$CUPS_GROUP")
270AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SYSTEM_GROUPS, "$CUPS_SYSTEM_GROUPS")
271
e53920b9 272dnl Default printcap file...
a74454a7 273AC_ARG_WITH(printcap, [ --with-printcap set default printcap file],
e53920b9 274 default_printcap="$withval",
ed486911 275 default_printcap="default")
e53920b9 276
07725fee 277if test x$default_printcap != xno; then
ed486911 278 if test "x$default_printcap" = "xdefault"; then
105922ec
MS
279 case $host_os_name in
280 darwin*)
281 if test $host_os_version -ge 90; then
0af14961 282 CUPS_DEFAULT_PRINTCAP="/Library/Preferences/org.cups.printers.plist"
ed486911 283 else
284 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
285 fi
286 ;;
105922ec 287 sunos*)
ed486911 288 CUPS_DEFAULT_PRINTCAP="/etc/printers.conf"
289 ;;
290 *)
291 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
292 ;;
293 esac
07725fee 294 else
295 CUPS_DEFAULT_PRINTCAP="$default_printcap"
e53920b9 296 fi
297else
298 CUPS_DEFAULT_PRINTCAP=""
299fi
300
0af14961 301AC_SUBST(CUPS_DEFAULT_PRINTCAP)
e53920b9 302AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTCAP, "$CUPS_DEFAULT_PRINTCAP")
09ec0018 303
568fa3fa
MS
304dnl Default LPD config file...
305AC_ARG_WITH(lpdconfigfile, [ --with-lpdconfigfile set default LPDConfigFile URI],
306 default_lpdconfigfile="$withval",
307 default_lpdconfigfile="default")
308
309if test x$default_lpdconfigfile != xno; then
310 if test "x$default_lpdconfigfile" = "xdefault"; then
105922ec
MS
311 case $host_os_name in
312 darwin*)
568fa3fa
MS
313 CUPS_DEFAULT_LPD_CONFIG_FILE="launchd:///System/Library/LaunchDaemons/org.cups.cups-lpd.plist"
314 ;;
315 *)
b226ab99
MS
316 if test "x$XINETD" != x; then
317 CUPS_DEFAULT_LPD_CONFIG_FILE="xinetd://$XINETD/cups-lpd"
568fa3fa
MS
318 else
319 CUPS_DEFAULT_LPD_CONFIG_FILE=""
320 fi
321 ;;
322 esac
323 else
324 CUPS_DEFAULT_LPD_CONFIG_FILE="$default_lpdconfigfile"
325 fi
326else
327 CUPS_DEFAULT_LPD_CONFIG_FILE=""
328fi
329
330AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LPD_CONFIG_FILE, "$CUPS_DEFAULT_LPD_CONFIG_FILE")
c41769ff 331AC_SUBST(CUPS_DEFAULT_LPD_CONFIG_FILE)
568fa3fa
MS
332
333dnl Default SMB config file...
334AC_ARG_WITH(smbconfigfile, [ --with-smbconfigfile set default SMBConfigFile URI],
335 default_smbconfigfile="$withval",
336 default_smbconfigfile="default")
337
338if test x$default_smbconfigfile != xno; then
339 if test "x$default_smbconfigfile" = "xdefault"; then
340 if test -f /etc/smb.conf; then
341 CUPS_DEFAULT_SMB_CONFIG_FILE="samba:///etc/smb.conf"
342 else
343 CUPS_DEFAULT_SMB_CONFIG_FILE=""
344 fi
345 else
346 CUPS_DEFAULT_SMB_CONFIG_FILE="$default_smbconfigfile"
347 fi
348else
349 CUPS_DEFAULT_SMB_CONFIG_FILE=""
350fi
351
352AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SMB_CONFIG_FILE, "$CUPS_DEFAULT_SMB_CONFIG_FILE")
c41769ff 353AC_SUBST(CUPS_DEFAULT_SMB_CONFIG_FILE)
568fa3fa 354
f7deaa1a 355dnl Default MaxCopies value...
bf3816c7 356AC_ARG_WITH(max-copies, [ --with-max-copies set default max copies value, default=9999 ],
f7deaa1a 357 CUPS_MAX_COPIES="$withval",
bf3816c7 358 CUPS_MAX_COPIES="9999")
f7deaa1a 359
360AC_SUBST(CUPS_MAX_COPIES)
361AC_DEFINE_UNQUOTED(CUPS_DEFAULT_MAX_COPIES, $CUPS_MAX_COPIES)
362
09a101d6 363dnl Default raw printing state
bf3816c7 364AC_ARG_ENABLE(raw_printing, [ --disable-raw-printing do not allow raw printing by default])
09a101d6 365if test "x$enable_raw_printing" != xno; then
bf3816c7 366 DEFAULT_RAW_PRINTING=""
09a101d6 367else
368 DEFAULT_RAW_PRINTING="#"
369fi
370AC_SUBST(DEFAULT_RAW_PRINTING)
371
bc44d920 372dnl Default SNMP options...
373AC_ARG_WITH(snmp-address, [ --with-snmp-address set SNMP query address, default=auto ],
374 if test "x$withval" = x; then
375 CUPS_SNMP_ADDRESS=""
376 else
377 CUPS_SNMP_ADDRESS="Address $withval"
378 fi,
105922ec 379 if test "x$host_os_name" = xdarwin; then
bc44d920 380 CUPS_SNMP_ADDRESS=""
381 else
382 CUPS_SNMP_ADDRESS="Address @LOCAL"
383 fi)
384
385AC_ARG_WITH(snmp-community, [ --with-snmp-community set SNMP community, default=public ],
386 CUPS_SNMP_COMMUNITY="Community $withval",
387 CUPS_SNMP_COMMUNITY="Community public")
388
389AC_SUBST(CUPS_SNMP_ADDRESS)
390AC_SUBST(CUPS_SNMP_COMMUNITY)
391
ac884b6a 392dnl New default port definition for IPP...
bf3816c7 393AC_ARG_WITH(ipp-port, [ --with-ipp-port set port number for IPP, default=631 ],
ac884b6a
MS
394 DEFAULT_IPP_PORT="$withval",
395 DEFAULT_IPP_PORT="631")
396
397AC_SUBST(DEFAULT_IPP_PORT)
398AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
399
229681c1 400dnl Web interface...
8072030b 401AC_ARG_ENABLE(webif, [ --enable-webif enable the web interface by default, default=no for macOS])
229681c1
MS
402case "x$enable_webif" in
403 xno)
404 CUPS_WEBIF=No
405 CUPS_DEFAULT_WEBIF=0
406 ;;
407 xyes)
408 CUPS_WEBIF=Yes
409 CUPS_DEFAULT_WEBIF=1
410 ;;
411 *)
105922ec 412 if test $host_os_name = darwin; then
229681c1
MS
413 CUPS_WEBIF=No
414 CUPS_DEFAULT_WEBIF=0
415 else
416 CUPS_WEBIF=Yes
417 CUPS_DEFAULT_WEBIF=1
418 fi
419 ;;
420esac
421
422AC_SUBST(CUPS_WEBIF)
423AC_DEFINE_UNQUOTED(CUPS_DEFAULT_WEBIF, $CUPS_DEFAULT_WEBIF)