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