]> git.ipfire.org Git - thirdparty/cups.git/blob - config-scripts/cups-defaults.m4
Merge changes from CUPS 1.5svn-r9374.
[thirdparty/cups.git] / config-scripts / cups-defaults.m4
1 dnl
2 dnl "$Id: cups-defaults.m4 7959 2008-09-17 19:30:58Z mike $"
3 dnl
4 dnl Default cupsd configuration settings for CUPS.
5 dnl
6 dnl Copyright 2007-2010 by Apple Inc.
7 dnl Copyright 2006-2007 by Easy Software Products, all rights reserved.
8 dnl
9 dnl These coded instructions, statements, and computer programs are the
10 dnl property of Apple Inc. and are protected by Federal copyright
11 dnl law. Distribution and use rights are outlined in the file "LICENSE.txt"
12 dnl which should have been included with this file. If this file is
13 dnl file is missing or damaged, see the license at "http://www.cups.org/".
14 dnl
15
16 dnl Default languages...
17 LANGUAGES="`ls -1 locale/cups_*.po | sed -e '1,$s/locale\/cups_//' -e '1,$s/\.po//' | tr '\n' ' '`"
18
19 AC_ARG_WITH(languages, [ --with-languages set installed languages, default=all ],[
20 case "$withval" in
21 none | no) LANGUAGES="" ;;
22 all) ;;
23 *) LANGUAGES="$withval" ;;
24 esac])
25 AC_SUBST(LANGUAGES)
26
27 dnl Default ConfigFilePerm
28 AC_ARG_WITH(config_file_perm, [ --with-config-file-perm set default ConfigFilePerm value, default=0640],
29 CUPS_CONFIG_FILE_PERM="$withval",
30 if test "x$uname" = xDarwin; then
31 CUPS_CONFIG_FILE_PERM="644"
32 else
33 CUPS_CONFIG_FILE_PERM="640"
34 fi)
35 AC_SUBST(CUPS_CONFIG_FILE_PERM)
36 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_CONFIG_FILE_PERM, 0$CUPS_CONFIG_FILE_PERM)
37
38 dnl Default LogFilePerm
39 AC_ARG_WITH(log_file_perm, [ --with-log-file-perm set default LogFilePerm value, default=0644],
40 CUPS_LOG_FILE_PERM="$withval",
41 CUPS_LOG_FILE_PERM="644")
42 AC_SUBST(CUPS_LOG_FILE_PERM)
43 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_FILE_PERM, 0$CUPS_LOG_FILE_PERM)
44
45 dnl Default FatalErrors
46 AC_ARG_WITH(fatal_errors, [ --with-fatal-errors set default FatalErrors value, default=config],
47 CUPS_FATAL_ERRORS="$withval",
48 CUPS_FATAL_ERRORS="config")
49 AC_SUBST(CUPS_FATAL_ERRORS)
50 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_FATAL_ERRORS, "$CUPS_FATAL_ERRORS")
51
52
53 dnl Default LogLevel
54 AC_ARG_WITH(log_level, [ --with-log-level set default LogLevel value, default=warn],
55 CUPS_LOG_LEVEL="$withval",
56 CUPS_LOG_LEVEL="warn")
57 AC_SUBST(CUPS_LOG_LEVEL)
58 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LOG_LEVEL, "$CUPS_LOG_LEVEL")
59
60 dnl Default AccessLogLevel
61 AC_ARG_WITH(access_log_level, [ --with-access-log-level set default AccessLogLevel value, default=actions],
62 CUPS_ACCESS_LOG_LEVEL="$withval",
63 CUPS_ACCESS_LOG_LEVEL="actions")
64 AC_SUBST(CUPS_ACCESS_LOG_LEVEL)
65 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_ACCESS_LOG_LEVEL, "$CUPS_ACCESS_LOG_LEVEL")
66
67 dnl Default Browsing
68 AC_ARG_ENABLE(browsing, [ --disable-browsing disable Browsing by default])
69 if test "x$enable_browsing" = xno; then
70 CUPS_BROWSING="No"
71 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 0)
72 else
73 CUPS_BROWSING="Yes"
74 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSING, 1)
75 fi
76 AC_SUBST(CUPS_BROWSING)
77
78 dnl Default BrowseLocalProtocols
79 AC_ARG_WITH(local_protocols, [ --with-local-protocols set default BrowseLocalProtocols, default="CUPS"],
80 default_local_protocols="$withval",
81 default_local_protocols="default")
82
83 if test x$with_local_protocols != xno; then
84 if test "x$default_local_protocols" = "xdefault"; then
85 if test "x$DNSSDLIBS" != "x"; then
86 CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS dnssd"
87 else
88 CUPS_BROWSE_LOCAL_PROTOCOLS="CUPS"
89 fi
90 else
91 CUPS_BROWSE_LOCAL_PROTOCOLS="$default_local_protocols"
92 fi
93 else
94 CUPS_BROWSE_LOCAL_PROTOCOLS=""
95 fi
96
97 AC_SUBST(CUPS_BROWSE_LOCAL_PROTOCOLS)
98 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS,
99 "$CUPS_BROWSE_LOCAL_PROTOCOLS")
100
101 dnl Default BrowseRemoteProtocols
102 AC_ARG_WITH(remote_protocols, [ --with-remote-protocols set default BrowseRemoteProtocols, default="CUPS"],
103 default_remote_protocols="$withval",
104 default_remote_protocols="default")
105
106 if test x$with_remote_protocols != xno; then
107 if test "x$default_remote_protocols" = "xdefault"; then
108 if test "$uname" = "Darwin" -a $uversion -ge 90; then
109 CUPS_BROWSE_REMOTE_PROTOCOLS=""
110 else
111 CUPS_BROWSE_REMOTE_PROTOCOLS="CUPS"
112 fi
113 else
114 CUPS_BROWSE_REMOTE_PROTOCOLS="$default_remote_protocols"
115 fi
116 else
117 CUPS_BROWSE_REMOTE_PROTOCOLS=""
118 fi
119
120 AC_SUBST(CUPS_BROWSE_REMOTE_PROTOCOLS)
121 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS,
122 "$CUPS_BROWSE_REMOTE_PROTOCOLS")
123
124 dnl Default BrowseShortNames
125 AC_ARG_ENABLE(browse_short, [ --disable-browse-short-names
126 disable BrowseShortNames by default])
127 if test "x$enable_browse_short" = xno; then
128 CUPS_BROWSE_SHORT_NAMES="No"
129 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_SHORT_NAMES, 0)
130 else
131 CUPS_BROWSE_SHORT_NAMES="Yes"
132 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_BROWSE_SHORT_NAMES, 1)
133 fi
134 AC_SUBST(CUPS_BROWSE_SHORT_NAMES)
135
136 dnl Default DefaultShared
137 AC_ARG_ENABLE(default_shared, [ --disable-default-shared
138 disable DefaultShared by default])
139 if test "x$enable_default_shared" = xno; then
140 CUPS_DEFAULT_SHARED="No"
141 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 0)
142 else
143 CUPS_DEFAULT_SHARED="Yes"
144 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_DEFAULT_SHARED, 1)
145 fi
146 AC_SUBST(CUPS_DEFAULT_SHARED)
147
148 dnl Default ImplicitClasses
149 AC_ARG_ENABLE(implicit, [ --disable-implicit-classes
150 disable ImplicitClasses by default])
151 if test "x$enable_implicit" = xno; then
152 CUPS_IMPLICIT_CLASSES="No"
153 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IMPLICIT_CLASSES, 0)
154 else
155 CUPS_IMPLICIT_CLASSES="Yes"
156 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IMPLICIT_CLASSES, 1)
157 fi
158 AC_SUBST(CUPS_IMPLICIT_CLASSES)
159
160 dnl Default UseNetworkDefault
161 AC_ARG_ENABLE(use_network_default, [ --enable-use-network-default
162 set UseNetworkDefault to Yes by default])
163 if test "x$enable_use_network_default" != xno; then
164 AC_MSG_CHECKING(whether to use network default printers)
165 if test "x$enable_use_network_default" = xyes -o $uname != Darwin; then
166 CUPS_USE_NETWORK_DEFAULT="Yes"
167 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 1)
168 AC_MSG_RESULT(yes)
169 else
170 CUPS_USE_NETWORK_DEFAULT="No"
171 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 0)
172 AC_MSG_RESULT(no)
173 fi
174 else
175 CUPS_USE_NETWORK_DEFAULT="No"
176 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USE_NETWORK_DEFAULT, 0)
177 fi
178 AC_SUBST(CUPS_USE_NETWORK_DEFAULT)
179
180 dnl Determine the correct username and group for this OS...
181 AC_ARG_WITH(cups_user, [ --with-cups-user set default user for CUPS],
182 CUPS_USER="$withval",
183 AC_MSG_CHECKING(for default print user)
184 if test x$uname = xDarwin; then
185 if test x`id -u _lp 2>/dev/null` = x; then
186 CUPS_USER="lp";
187 else
188 CUPS_USER="_lp";
189 fi
190 AC_MSG_RESULT($CUPS_USER)
191 elif test -f /etc/passwd; then
192 CUPS_USER=""
193 for user in lp lpd guest daemon nobody; do
194 if test "`grep \^${user}: /etc/passwd`" != ""; then
195 CUPS_USER="$user"
196 AC_MSG_RESULT($user)
197 break;
198 fi
199 done
200
201 if test x$CUPS_USER = x; then
202 CUPS_USER="nobody"
203 AC_MSG_RESULT(not found, using "$CUPS_USER")
204 fi
205 else
206 CUPS_USER="nobody"
207 AC_MSG_RESULT(no password file, using "$CUPS_USER")
208 fi)
209
210 if test "x$CUPS_USER" = "xroot" -o "x$CUPS_USER" = "x0"; then
211 AC_MSG_ERROR([The default user for CUPS cannot be root!])
212 fi
213
214 AC_ARG_WITH(cups_group, [ --with-cups-group set default group for CUPS],
215 CUPS_GROUP="$withval",
216 AC_MSG_CHECKING(for default print group)
217 if test x$uname = xDarwin; then
218 if test x`id -g _lp 2>/dev/null` = x; then
219 CUPS_GROUP="lp";
220 else
221 CUPS_GROUP="_lp";
222 fi
223 AC_MSG_RESULT($CUPS_GROUP)
224 elif test -f /etc/group; then
225 GROUP_LIST="_lp lp nobody"
226 CUPS_GROUP=""
227 for group in $GROUP_LIST; do
228 if test "`grep \^${group}: /etc/group`" != ""; then
229 CUPS_GROUP="$group"
230 AC_MSG_RESULT($group)
231 break;
232 fi
233 done
234
235 if test x$CUPS_GROUP = x; then
236 CUPS_GROUP="nobody"
237 AC_MSG_RESULT(not found, using "$CUPS_GROUP")
238 fi
239 else
240 CUPS_GROUP="nobody"
241 AC_MSG_RESULT(no group file, using "$CUPS_GROUP")
242 fi)
243
244 if test "x$CUPS_GROUP" = "xroot" -o "x$CUPS_GROUP" = "xwheel" -o "x$CUPS_GROUP" = "x0"; then
245 AC_MSG_ERROR([The default group for CUPS cannot be root!])
246 fi
247
248 AC_ARG_WITH(system_groups, [ --with-system-groups set default system groups for CUPS],
249 CUPS_SYSTEM_GROUPS="$withval",
250 if test x$uname = xDarwin; then
251 CUPS_SYSTEM_GROUPS="admin"
252 else
253 AC_MSG_CHECKING(for default system groups)
254 if test -f /etc/group; then
255 CUPS_SYSTEM_GROUPS=""
256 GROUP_LIST="lpadmin sys system root"
257 for group in $GROUP_LIST; do
258 if test "`grep \^${group}: /etc/group`" != ""; then
259 if test "x$CUPS_SYSTEM_GROUPS" = x; then
260 CUPS_SYSTEM_GROUPS="$group"
261 else
262 CUPS_SYSTEM_GROUPS="$CUPS_SYSTEM_GROUPS $group"
263 fi
264 fi
265 done
266
267 if test "x$CUPS_SYSTEM_GROUPS" = x; then
268 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
269 AC_MSG_RESULT(no groups found, using "$CUPS_SYSTEM_GROUPS")
270 else
271 AC_MSG_RESULT("$CUPS_SYSTEM_GROUPS")
272 fi
273 else
274 CUPS_SYSTEM_GROUPS="$GROUP_LIST"
275 AC_MSG_RESULT(no group file, using "$CUPS_SYSTEM_GROUPS")
276 fi
277 fi)
278
279 CUPS_PRIMARY_SYSTEM_GROUP="`echo $CUPS_SYSTEM_GROUPS | awk '{print $1}'`"
280
281 for group in $CUPS_SYSTEM_GROUPS; do
282 if test "x$CUPS_GROUP" = "x$group"; then
283 AC_MSG_ERROR([The default system groups cannot contain the default CUPS group!])
284 fi
285 done
286
287 AC_SUBST(CUPS_USER)
288 AC_SUBST(CUPS_GROUP)
289 AC_SUBST(CUPS_SYSTEM_GROUPS)
290 AC_SUBST(CUPS_PRIMARY_SYSTEM_GROUP)
291
292 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_USER, "$CUPS_USER")
293 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_GROUP, "$CUPS_GROUP")
294 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SYSTEM_GROUPS, "$CUPS_SYSTEM_GROUPS")
295
296 dnl Default printcap file...
297 AC_ARG_WITH(printcap, [ --with-printcap set default printcap file],
298 default_printcap="$withval",
299 default_printcap="default")
300
301 if test x$default_printcap != xno; then
302 if test "x$default_printcap" = "xdefault"; then
303 case $uname in
304 Darwin*)
305 if test $uversion -ge 90; then
306 CUPS_DEFAULT_PRINTCAP="/Library/Preferences/org.cups.printers.plist"
307 else
308 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
309 fi
310 ;;
311 SunOS*)
312 CUPS_DEFAULT_PRINTCAP="/etc/printers.conf"
313 ;;
314 *)
315 CUPS_DEFAULT_PRINTCAP="/etc/printcap"
316 ;;
317 esac
318 else
319 CUPS_DEFAULT_PRINTCAP="$default_printcap"
320 fi
321 else
322 CUPS_DEFAULT_PRINTCAP=""
323 fi
324
325 AC_SUBST(CUPS_DEFAULT_PRINTCAP)
326 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_PRINTCAP, "$CUPS_DEFAULT_PRINTCAP")
327
328 dnl Default LPD config file...
329 AC_ARG_WITH(lpdconfigfile, [ --with-lpdconfigfile set default LPDConfigFile URI],
330 default_lpdconfigfile="$withval",
331 default_lpdconfigfile="default")
332
333 if test x$default_lpdconfigfile != xno; then
334 if test "x$default_lpdconfigfile" = "xdefault"; then
335 case $uname in
336 Darwin*)
337 CUPS_DEFAULT_LPD_CONFIG_FILE="launchd:///System/Library/LaunchDaemons/org.cups.cups-lpd.plist"
338 ;;
339 *)
340 if test "x$XINETD" != x; then
341 CUPS_DEFAULT_LPD_CONFIG_FILE="xinetd://$XINETD/cups-lpd"
342 else
343 CUPS_DEFAULT_LPD_CONFIG_FILE=""
344 fi
345 ;;
346 esac
347 else
348 CUPS_DEFAULT_LPD_CONFIG_FILE="$default_lpdconfigfile"
349 fi
350 else
351 CUPS_DEFAULT_LPD_CONFIG_FILE=""
352 fi
353
354 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_LPD_CONFIG_FILE, "$CUPS_DEFAULT_LPD_CONFIG_FILE")
355
356 dnl Default SMB config file...
357 AC_ARG_WITH(smbconfigfile, [ --with-smbconfigfile set default SMBConfigFile URI],
358 default_smbconfigfile="$withval",
359 default_smbconfigfile="default")
360
361 if test x$default_smbconfigfile != xno; then
362 if test "x$default_smbconfigfile" = "xdefault"; then
363 if test -f /etc/smb.conf; then
364 CUPS_DEFAULT_SMB_CONFIG_FILE="samba:///etc/smb.conf"
365 else
366 CUPS_DEFAULT_SMB_CONFIG_FILE=""
367 fi
368 else
369 CUPS_DEFAULT_SMB_CONFIG_FILE="$default_smbconfigfile"
370 fi
371 else
372 CUPS_DEFAULT_SMB_CONFIG_FILE=""
373 fi
374
375 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_SMB_CONFIG_FILE, "$CUPS_DEFAULT_SMB_CONFIG_FILE")
376
377 dnl Default MaxCopies value...
378 AC_ARG_WITH(max-copies, [ --with-max-copies set default max copies value, default=9999 ],
379 CUPS_MAX_COPIES="$withval",
380 CUPS_MAX_COPIES="9999")
381
382 AC_SUBST(CUPS_MAX_COPIES)
383 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_MAX_COPIES, $CUPS_MAX_COPIES)
384
385 dnl Default raw printing state
386 AC_ARG_ENABLE(raw_printing, [ --disable-raw-printing do not allow raw printing by default])
387 if test "x$enable_raw_printing" != xno; then
388 DEFAULT_RAW_PRINTING=""
389 else
390 DEFAULT_RAW_PRINTING="#"
391 fi
392 AC_SUBST(DEFAULT_RAW_PRINTING)
393
394 dnl Default SNMP options...
395 AC_ARG_WITH(snmp-address, [ --with-snmp-address set SNMP query address, default=auto ],
396 if test "x$withval" = x; then
397 CUPS_SNMP_ADDRESS=""
398 else
399 CUPS_SNMP_ADDRESS="Address $withval"
400 fi,
401 if test "x$uname" = xDarwin; then
402 CUPS_SNMP_ADDRESS=""
403 else
404 CUPS_SNMP_ADDRESS="Address @LOCAL"
405 fi)
406
407 AC_ARG_WITH(snmp-community, [ --with-snmp-community set SNMP community, default=public ],
408 CUPS_SNMP_COMMUNITY="Community $withval",
409 CUPS_SNMP_COMMUNITY="Community public")
410
411 AC_SUBST(CUPS_SNMP_ADDRESS)
412 AC_SUBST(CUPS_SNMP_COMMUNITY)
413
414 dnl New default port definition for IPP...
415 AC_ARG_WITH(ipp-port, [ --with-ipp-port set port number for IPP, default=631 ],
416 DEFAULT_IPP_PORT="$withval",
417 DEFAULT_IPP_PORT="631")
418
419 AC_SUBST(DEFAULT_IPP_PORT)
420 AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
421
422 dnl Filters
423 AC_ARG_ENABLE(bannertops, [ --enable-bannertops always build the banner filter ])
424 AC_ARG_ENABLE(texttops, [ --enable-texttops always build the text filter ])
425
426 if test "x$enable_bannertops" = xno; then
427 BANNERTOPS=""
428 elif test "x$enable_bannertops" = xyes; then
429 BANNERTOPS="bannertops"
430 elif test $uname = Darwin; then
431 BANNERTOPS=""
432 else
433 BANNERTOPS="bannertops"
434 fi
435
436 if test "x$enable_texttops" = xno; then
437 TEXTTOPS=""
438 elif test "x$enable_texttops" = xyes; then
439 TEXTTOPS="texttops"
440 elif test $uname = Darwin; then
441 TEXTTOPS=""
442 else
443 TEXTTOPS="texttops"
444 fi
445
446 AC_SUBST(BANNERTOPS)
447 AC_SUBST(TEXTTOPS)
448
449 dnl Fonts
450 if test "x$BANNERTOPS" = x -a "x$TEXTTOPS" = x; then
451 FONTS=""
452 else
453 FONTS="fonts"
454 fi
455
456 AC_SUBST(FONTS)
457
458 dnl
459 dnl End of "$Id: cups-defaults.m4 7959 2008-09-17 19:30:58Z mike $".
460 dnl