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