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