]>
Commit | Line | Data |
---|---|---|
ef416fc2 | 1 | dnl |
757d2cad | 2 | dnl "$Id: cups-common.m4 5229 2006-03-05 16:48:12Z mike $" |
ef416fc2 | 3 | dnl |
4 | dnl Common configuration stuff for the Common UNIX Printing System (CUPS). | |
5 | dnl | |
bd7854cb | 6 | dnl Copyright 1997-2006 by Easy Software Products, all rights reserved. |
ef416fc2 | 7 | dnl |
8 | dnl These coded instructions, statements, and computer programs are the | |
9 | dnl property of Easy Software Products and are protected by Federal | |
10 | dnl copyright law. Distribution and use rights are outlined in the file | |
11 | dnl "LICENSE.txt" which should have been included with this file. If this | |
12 | dnl file is missing or damaged please contact Easy Software Products | |
13 | dnl at: | |
14 | dnl | |
15 | dnl Attn: CUPS Licensing Information | |
16 | dnl Easy Software Products | |
17 | dnl 44141 Airport View Drive, Suite 204 | |
18 | dnl Hollywood, Maryland 20636 USA | |
19 | dnl | |
20 | dnl Voice: (301) 373-9600 | |
21 | dnl EMail: cups-info@cups.org | |
22 | dnl WWW: http://www.cups.org | |
23 | dnl | |
24 | ||
25 | dnl We need at least autoconf 2.50... | |
26 | AC_PREREQ(2.50) | |
27 | ||
28 | dnl Set the name of the config header file... | |
29 | AC_CONFIG_HEADER(config.h) | |
30 | ||
31 | dnl Versio number information... | |
32 | CUPS_VERSION="1.2svn" | |
ecdc0628 | 33 | CUPS_REVISION="" |
34 | if test -z "$CUPS_REVISION" -a -d .svn; then | |
35 | CUPS_REVISION="-r`svnversion . | awk -F: '{print $NF}' | sed -e '1,$s/[[a-zA-Z]]*//g'`" | |
36 | fi | |
37 | ||
ef416fc2 | 38 | AC_SUBST(CUPS_VERSION) |
ecdc0628 | 39 | AC_SUBST(CUPS_REVISION) |
40 | AC_DEFINE_UNQUOTED(CUPS_SVERSION, "CUPS v$CUPS_VERSION$CUPS_REVISION") | |
41 | AC_DEFINE_UNQUOTED(CUPS_MINIMAL, "CUPS/$CUPS_VERSION$CUPS_REVISION") | |
ef416fc2 | 42 | |
43 | dnl Default compiler flags... | |
44 | CFLAGS="${CFLAGS:=}" | |
45 | CPPFLAGS="${CPPFLAGS:=}" | |
46 | CXXFLAGS="${CXXFLAGS:=}" | |
47 | LDFLAGS="${LDFLAGS:=}" | |
48 | ||
49 | dnl Checks for programs... | |
50 | AC_PROG_AWK | |
51 | AC_PROG_CC | |
52 | AC_PROG_CXX | |
53 | AC_PROG_CPP | |
54 | AC_PROG_INSTALL | |
55 | if test "$INSTALL" = "$ac_install_sh"; then | |
56 | # Use full path to install-sh script... | |
57 | INSTALL="`pwd`/install-sh -c" | |
58 | fi | |
59 | AC_PROG_RANLIB | |
60 | AC_PATH_PROG(AR,ar) | |
61 | AC_PATH_PROG(HTMLDOC,htmldoc) | |
bd7854cb | 62 | AC_PATH_PROG(LD,ld) |
ef416fc2 | 63 | AC_PATH_PROG(LN,ln) |
64 | AC_PATH_PROG(MV,mv) | |
65 | AC_PATH_PROG(RM,rm) | |
757d2cad | 66 | AC_PATH_PROG(RM,rmdir) |
ef416fc2 | 67 | AC_PATH_PROG(SED,sed) |
68 | AC_PATH_PROG(STRIP,strip) | |
69 | ||
70 | if test "x$AR" = x; then | |
71 | AC_MSG_ERROR([Unable to find required library archive command.]) | |
72 | fi | |
73 | if test "x$CC" = x; then | |
74 | AC_MSG_ERROR([Unable to find required C compiler command.]) | |
75 | fi | |
76 | if test "x$CXX" = x; then | |
77 | AC_MSG_ERROR([Unable to find required C++ compiler command.]) | |
78 | fi | |
79 | ||
923edb68 | 80 | dnl Static library option... |
81 | INSTALLSTATIC="" | |
82 | AC_ARG_ENABLE(install_static, [ --enable-static install static libraries, default=no]) | |
83 | ||
84 | if test x$enable_install_static = xyes; then | |
85 | INSTALLSTATIC="installstatic" | |
86 | fi | |
87 | ||
88 | AC_SUBST(INSTALLSTATIC) | |
ef416fc2 | 89 | |
90 | dnl Check for libraries... | |
91 | AC_SEARCH_LIBS(crypt, crypt) | |
92 | AC_SEARCH_LIBS(getspent, sec gen) | |
93 | ||
94 | LIBMALLOC="" | |
95 | AC_ARG_ENABLE(mallinfo, [ --enable-mallinfo turn on malloc debug information, default=no]) | |
96 | ||
97 | if test x$enable_mallinfo = xyes; then | |
98 | AC_CHECK_LIB(c,mallinfo,LIBS="$LIBS"; AC_DEFINE(HAVE_MALLINFO),LIBS="$LIBS") | |
99 | if test "$ac_cv_lib_c_mallinfo" = "no"; then | |
100 | AC_CHECK_LIB(malloc,mallinfo, | |
101 | LIBS="$LIBS" | |
102 | LIBMALLOC="-lmalloc" | |
103 | AC_DEFINE(HAVE_MALLINFO), | |
104 | LIBS="$LIBS") | |
105 | fi | |
106 | fi | |
107 | ||
108 | AC_SUBST(LIBMALLOC) | |
109 | ||
110 | dnl Check for libpaper support... | |
111 | AC_ARG_ENABLE(libpaper, [ --enable-libpaper turn on libpaper support, default=no]) | |
112 | ||
113 | if test x$enable_libpaper = xyes; then | |
114 | AC_CHECK_LIB(paper,systempapername, | |
115 | AC_DEFINE(HAVE_LIBPAPER) | |
116 | LIBPAPER="-lpaper", | |
117 | LIBPAPER="") | |
118 | else | |
119 | LIBPAPER="" | |
120 | fi | |
121 | AC_SUBST(LIBPAPER) | |
122 | ||
123 | dnl Checks for header files. | |
124 | AC_HEADER_STDC | |
125 | AC_CHECK_HEADER(crypt.h,AC_DEFINE(HAVE_CRYPT_H)) | |
126 | AC_CHECK_HEADER(langinfo.h,AC_DEFINE(HAVE_LANGINFO_H)) | |
127 | AC_CHECK_HEADER(malloc.h,AC_DEFINE(HAVE_MALLOC_H)) | |
128 | AC_CHECK_HEADER(shadow.h,AC_DEFINE(HAVE_SHADOW_H)) | |
129 | AC_CHECK_HEADER(string.h,AC_DEFINE(HAVE_STRING_H)) | |
130 | AC_CHECK_HEADER(strings.h,AC_DEFINE(HAVE_STRINGS_H)) | |
131 | AC_CHECK_HEADER(bstring.h,AC_DEFINE(HAVE_BSTRING_H)) | |
132 | AC_CHECK_HEADER(usersec.h,AC_DEFINE(HAVE_USERSEC_H)) | |
133 | AC_CHECK_HEADER(sys/ioctl.h,AC_DEFINE(HAVE_SYS_IOCTL_H)) | |
134 | ||
135 | dnl Checks for string functions. | |
136 | AC_CHECK_FUNCS(strdup strcasecmp strncasecmp strlcat strlcpy) | |
137 | if test "$uname" = "HP-UX" -a "$uversion" = "1020"; then | |
138 | echo Forcing snprintf emulation for HP-UX. | |
139 | else | |
140 | AC_CHECK_FUNCS(snprintf vsnprintf) | |
141 | fi | |
142 | ||
143 | dnl Checks for mkstemp and mkstemps functions. | |
144 | AC_CHECK_FUNCS(mkstemp mkstemps) | |
145 | ||
146 | dnl Check for geteuid function. | |
147 | AC_CHECK_FUNCS(geteuid) | |
148 | ||
149 | dnl Check for vsyslog function. | |
150 | AC_CHECK_FUNCS(vsyslog) | |
151 | ||
152 | dnl Checks for signal functions. | |
153 | case "$uname" in | |
154 | Linux | GNU) | |
155 | # Do not use sigset on Linux or GNU HURD | |
156 | ;; | |
157 | *) | |
158 | # Use sigset on other platforms, if available | |
159 | AC_CHECK_FUNCS(sigset) | |
160 | ;; | |
161 | esac | |
162 | ||
163 | AC_CHECK_FUNCS(sigaction) | |
164 | ||
165 | dnl Checks for wait functions. | |
166 | AC_CHECK_FUNCS(waitpid) | |
167 | AC_CHECK_FUNCS(wait3) | |
168 | ||
169 | dnl See if the tm structure has the tm_gmtoff member... | |
170 | AC_MSG_CHECKING(for tm_gmtoff member in tm structure) | |
171 | AC_TRY_COMPILE([#include <time.h>],[struct tm t; | |
172 | int o = t.tm_gmtoff;], | |
173 | AC_MSG_RESULT(yes) | |
174 | AC_DEFINE(HAVE_TM_GMTOFF), | |
175 | AC_MSG_RESULT(no)) | |
176 | ||
177 | dnl Flags for "ar" command... | |
178 | case $uname in | |
179 | Darwin* | *BSD*) | |
180 | ARFLAGS="-rcv" | |
181 | ;; | |
182 | *) | |
183 | ARFLAGS="crvs" | |
184 | ;; | |
185 | esac | |
186 | ||
187 | AC_SUBST(ARFLAGS) | |
188 | ||
189 | dnl Extra platform-specific libraries... | |
bd7854cb | 190 | BACKLIBS="" |
191 | CUPSDLIBS="" | |
192 | DBUSDIR="" | |
193 | ||
ecdc0628 | 194 | AC_ARG_ENABLE(dbus, [ --enable-dbus enable DBUS support, default=auto]) |
195 | ||
ef416fc2 | 196 | case $uname in |
197 | Darwin*) | |
198 | BACKLIBS="-framework IOKit" | |
09ec0018 | 199 | CUPSDLIBS="-framework IOKit -framework SystemConfiguration" |
ef416fc2 | 200 | LIBS="-framework CoreFoundation $LIBS" |
fa73b229 | 201 | |
202 | dnl Check for CFLocaleCreateCanonicalLocaleIdentifierFromString... | |
203 | AC_MSG_CHECKING(for CFLocaleCreateCanonicalLocaleIdentifierFromString) | |
204 | if test "$uname" = "Darwin" -a $uversion -ge 70; then | |
205 | AC_DEFINE(HAVE_CF_LOCALE_ID) | |
206 | AC_MSG_RESULT(yes) | |
207 | else | |
208 | AC_MSG_RESULT(no) | |
209 | fi | |
210 | ||
211 | dnl Check for framework headers... | |
212 | AC_CHECK_HEADER(CoreFoundation/CoreFoundation.h,AC_DEFINE(HAVE_COREFOUNDATION_H)) | |
213 | AC_CHECK_HEADER(CoreFoundation/CFPriv.h,AC_DEFINE(HAVE_CFPRIV_H)) | |
214 | AC_CHECK_HEADER(CoreFoundation/CFBundlePriv.h,AC_DEFINE(HAVE_CFBUNDLEPRIV_H)) | |
215 | ||
216 | dnl Check for the new membership functions in MacOSX 10.4 (Tiger)... | |
217 | AC_CHECK_HEADER(membership.h,AC_DEFINE(HAVE_MEMBERSHIP_H)) | |
fa73b229 | 218 | AC_CHECK_FUNCS(mbr_uid_to_uuid) |
219 | ||
220 | dnl Check for notify_post support | |
221 | AC_CHECK_HEADER(notify.h,AC_DEFINE(HAVE_NOTIFY_H)) | |
222 | AC_CHECK_FUNCS(notify_post) | |
ef416fc2 | 223 | ;; |
e00b005a | 224 | |
225 | Linux*) | |
226 | dnl Check for DBUS support | |
ecdc0628 | 227 | if test "x$enable_dbus" != xno; then |
228 | AC_PATH_PROG(PKGCONFIG, pkg-config) | |
229 | if test "x$PKGCONFIG" != x; then | |
230 | AC_MSG_CHECKING(for DBUS) | |
231 | if $PKGCONFIG --exists dbus-1; then | |
232 | AC_MSG_RESULT(yes) | |
233 | AC_CHECK_LIB(dbus-1, | |
234 | dbus_message_iter_init_append, | |
235 | AC_DEFINE(HAVE_DBUS) | |
236 | CFLAGS="$CFLAGS `$PKGCONFIG --cflags dbus-1` -DDBUS_API_SUBJECT_TO_CHANGE" | |
237 | CUPSDLIBS="`$PKGCONFIG --libs dbus-1`" | |
238 | DBUSDIR="/etc/dbus-1/system.d") | |
239 | else | |
240 | AC_MSG_RESULT(no) | |
241 | fi | |
e00b005a | 242 | fi |
243 | fi | |
244 | ;; | |
ef416fc2 | 245 | esac |
246 | ||
bd7854cb | 247 | dnl See if we have POSIX ACL support... |
248 | SAVELIBS="$LIBS" | |
249 | LIBS="" | |
250 | AC_SEARCH_LIBS(acl_init, acl, AC_DEFINE(HAVE_ACL_INIT)) | |
251 | CUPSDLIBS="$CUPSDLIBS $LIBS" | |
252 | LIBS="$SAVELIBS" | |
253 | ||
ef416fc2 | 254 | AC_SUBST(BACKLIBS) |
09ec0018 | 255 | AC_SUBST(CUPSDLIBS) |
bd7854cb | 256 | AC_SUBST(DBUSDIR) |
ef416fc2 | 257 | |
258 | dnl New default port definition for IPP... | |
259 | AC_ARG_WITH(ipp-port, [ --with-ipp-port set default port number for IPP ], | |
260 | DEFAULT_IPP_PORT="$withval", | |
261 | DEFAULT_IPP_PORT="631") | |
262 | ||
263 | AC_SUBST(DEFAULT_IPP_PORT) | |
264 | AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT) | |
265 | ||
266 | dnl | |
757d2cad | 267 | dnl End of "$Id: cups-common.m4 5229 2006-03-05 16:48:12Z mike $". |
ef416fc2 | 268 | dnl |