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