]> 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
bd7854cb 2dnl "$Id: cups-common.m4 5136 2006-02-19 18:46:46Z 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...
32CUPS_VERSION="1.2svn"
33AC_SUBST(CUPS_VERSION)
34AC_DEFINE_UNQUOTED(CUPS_SVERSION, "CUPS v$CUPS_VERSION")
35AC_DEFINE_UNQUOTED(CUPS_MINIMAL, "CUPS/$CUPS_VERSION")
36
37dnl Default compiler flags...
38CFLAGS="${CFLAGS:=}"
39CPPFLAGS="${CPPFLAGS:=}"
40CXXFLAGS="${CXXFLAGS:=}"
41LDFLAGS="${LDFLAGS:=}"
42
43dnl Checks for programs...
44AC_PROG_AWK
45AC_PROG_CC
46AC_PROG_CXX
47AC_PROG_CPP
48AC_PROG_INSTALL
49if test "$INSTALL" = "$ac_install_sh"; then
50 # Use full path to install-sh script...
51 INSTALL="`pwd`/install-sh -c"
52fi
53AC_PROG_RANLIB
54AC_PATH_PROG(AR,ar)
55AC_PATH_PROG(HTMLDOC,htmldoc)
bd7854cb 56AC_PATH_PROG(LD,ld)
ef416fc2 57AC_PATH_PROG(LN,ln)
58AC_PATH_PROG(MV,mv)
59AC_PATH_PROG(RM,rm)
60AC_PATH_PROG(SED,sed)
61AC_PATH_PROG(STRIP,strip)
62
63if test "x$AR" = x; then
64 AC_MSG_ERROR([Unable to find required library archive command.])
65fi
66if test "x$CC" = x; then
67 AC_MSG_ERROR([Unable to find required C compiler command.])
68fi
69if test "x$CXX" = x; then
70 AC_MSG_ERROR([Unable to find required C++ compiler command.])
71fi
72
923edb68 73dnl Static library option...
74INSTALLSTATIC=""
75AC_ARG_ENABLE(install_static, [ --enable-static install static libraries, default=no])
76
77if test x$enable_install_static = xyes; then
78 INSTALLSTATIC="installstatic"
79fi
80
81AC_SUBST(INSTALLSTATIC)
ef416fc2 82
83dnl Check for libraries...
84AC_SEARCH_LIBS(crypt, crypt)
85AC_SEARCH_LIBS(getspent, sec gen)
86
87LIBMALLOC=""
88AC_ARG_ENABLE(mallinfo, [ --enable-mallinfo turn on malloc debug information, default=no])
89
90if test x$enable_mallinfo = xyes; then
91 AC_CHECK_LIB(c,mallinfo,LIBS="$LIBS"; AC_DEFINE(HAVE_MALLINFO),LIBS="$LIBS")
92 if test "$ac_cv_lib_c_mallinfo" = "no"; then
93 AC_CHECK_LIB(malloc,mallinfo,
94 LIBS="$LIBS"
95 LIBMALLOC="-lmalloc"
96 AC_DEFINE(HAVE_MALLINFO),
97 LIBS="$LIBS")
98 fi
99fi
100
101AC_SUBST(LIBMALLOC)
102
103dnl Check for libpaper support...
104AC_ARG_ENABLE(libpaper, [ --enable-libpaper turn on libpaper support, default=no])
105
106if test x$enable_libpaper = xyes; then
107 AC_CHECK_LIB(paper,systempapername,
108 AC_DEFINE(HAVE_LIBPAPER)
109 LIBPAPER="-lpaper",
110 LIBPAPER="")
111else
112 LIBPAPER=""
113fi
114AC_SUBST(LIBPAPER)
115
116dnl Checks for header files.
117AC_HEADER_STDC
118AC_CHECK_HEADER(crypt.h,AC_DEFINE(HAVE_CRYPT_H))
119AC_CHECK_HEADER(langinfo.h,AC_DEFINE(HAVE_LANGINFO_H))
120AC_CHECK_HEADER(malloc.h,AC_DEFINE(HAVE_MALLOC_H))
121AC_CHECK_HEADER(shadow.h,AC_DEFINE(HAVE_SHADOW_H))
122AC_CHECK_HEADER(string.h,AC_DEFINE(HAVE_STRING_H))
123AC_CHECK_HEADER(strings.h,AC_DEFINE(HAVE_STRINGS_H))
124AC_CHECK_HEADER(bstring.h,AC_DEFINE(HAVE_BSTRING_H))
125AC_CHECK_HEADER(usersec.h,AC_DEFINE(HAVE_USERSEC_H))
126AC_CHECK_HEADER(sys/ioctl.h,AC_DEFINE(HAVE_SYS_IOCTL_H))
127
128dnl Checks for string functions.
129AC_CHECK_FUNCS(strdup strcasecmp strncasecmp strlcat strlcpy)
130if test "$uname" = "HP-UX" -a "$uversion" = "1020"; then
131 echo Forcing snprintf emulation for HP-UX.
132else
133 AC_CHECK_FUNCS(snprintf vsnprintf)
134fi
135
136dnl Checks for mkstemp and mkstemps functions.
137AC_CHECK_FUNCS(mkstemp mkstemps)
138
139dnl Check for geteuid function.
140AC_CHECK_FUNCS(geteuid)
141
142dnl Check for vsyslog function.
143AC_CHECK_FUNCS(vsyslog)
144
145dnl Checks for signal functions.
146case "$uname" in
147 Linux | GNU)
148 # Do not use sigset on Linux or GNU HURD
149 ;;
150 *)
151 # Use sigset on other platforms, if available
152 AC_CHECK_FUNCS(sigset)
153 ;;
154esac
155
156AC_CHECK_FUNCS(sigaction)
157
158dnl Checks for wait functions.
159AC_CHECK_FUNCS(waitpid)
160AC_CHECK_FUNCS(wait3)
161
162dnl See if the tm structure has the tm_gmtoff member...
163AC_MSG_CHECKING(for tm_gmtoff member in tm structure)
164AC_TRY_COMPILE([#include <time.h>],[struct tm t;
165 int o = t.tm_gmtoff;],
166 AC_MSG_RESULT(yes)
167 AC_DEFINE(HAVE_TM_GMTOFF),
168 AC_MSG_RESULT(no))
169
170dnl Flags for "ar" command...
171case $uname in
172 Darwin* | *BSD*)
173 ARFLAGS="-rcv"
174 ;;
175 *)
176 ARFLAGS="crvs"
177 ;;
178esac
179
180AC_SUBST(ARFLAGS)
181
182dnl Extra platform-specific libraries...
bd7854cb 183BACKLIBS=""
184CUPSDLIBS=""
185DBUSDIR=""
186
ef416fc2 187case $uname in
188 Darwin*)
189 BACKLIBS="-framework IOKit"
09ec0018 190 CUPSDLIBS="-framework IOKit -framework SystemConfiguration"
ef416fc2 191 LIBS="-framework CoreFoundation $LIBS"
fa73b229 192
193 dnl Check for CFLocaleCreateCanonicalLocaleIdentifierFromString...
194 AC_MSG_CHECKING(for CFLocaleCreateCanonicalLocaleIdentifierFromString)
195 if test "$uname" = "Darwin" -a $uversion -ge 70; then
196 AC_DEFINE(HAVE_CF_LOCALE_ID)
197 AC_MSG_RESULT(yes)
198 else
199 AC_MSG_RESULT(no)
200 fi
201
202 dnl Check for framework headers...
203 AC_CHECK_HEADER(CoreFoundation/CoreFoundation.h,AC_DEFINE(HAVE_COREFOUNDATION_H))
204 AC_CHECK_HEADER(CoreFoundation/CFPriv.h,AC_DEFINE(HAVE_CFPRIV_H))
205 AC_CHECK_HEADER(CoreFoundation/CFBundlePriv.h,AC_DEFINE(HAVE_CFBUNDLEPRIV_H))
206
207 dnl Check for the new membership functions in MacOSX 10.4 (Tiger)...
208 AC_CHECK_HEADER(membership.h,AC_DEFINE(HAVE_MEMBERSHIP_H))
fa73b229 209 AC_CHECK_FUNCS(mbr_uid_to_uuid)
210
211 dnl Check for notify_post support
212 AC_CHECK_HEADER(notify.h,AC_DEFINE(HAVE_NOTIFY_H))
213 AC_CHECK_FUNCS(notify_post)
ef416fc2 214 ;;
e00b005a 215
216 Linux*)
217 dnl Check for DBUS support
e00b005a 218 AC_PATH_PROG(PKGCONFIG, pkg-config)
219 if test "x$PKGCONFIG" != x; then
220 AC_MSG_CHECKING(for DBUS)
221 if $PKGCONFIG --exists dbus-1; then
222 AC_MSG_RESULT(yes)
bd7854cb 223 AC_CHECK_LIB(dbus-1,
224 dbus_message_iter_init_append,
225 AC_DEFINE(HAVE_DBUS)
226 CFLAGS="$CFLAGS `$PKGCONFIG --cflags dbus-1` -DDBUS_API_SUBJECT_TO_CHANGE"
227 CUPSDLIBS="`$PKGCONFIG --libs dbus-1`"
228 DBUSDIR="/etc/dbus-1/system.d")
e00b005a 229 else
230 AC_MSG_RESULT(no)
231 fi
232 fi
233 ;;
ef416fc2 234esac
235
bd7854cb 236dnl See if we have POSIX ACL support...
237SAVELIBS="$LIBS"
238LIBS=""
239AC_SEARCH_LIBS(acl_init, acl, AC_DEFINE(HAVE_ACL_INIT))
240CUPSDLIBS="$CUPSDLIBS $LIBS"
241LIBS="$SAVELIBS"
242
ef416fc2 243AC_SUBST(BACKLIBS)
09ec0018 244AC_SUBST(CUPSDLIBS)
bd7854cb 245AC_SUBST(DBUSDIR)
ef416fc2 246
247dnl New default port definition for IPP...
248AC_ARG_WITH(ipp-port, [ --with-ipp-port set default port number for IPP ],
249 DEFAULT_IPP_PORT="$withval",
250 DEFAULT_IPP_PORT="631")
251
252AC_SUBST(DEFAULT_IPP_PORT)
253AC_DEFINE_UNQUOTED(CUPS_DEFAULT_IPP_PORT,$DEFAULT_IPP_PORT)
254
255dnl
bd7854cb 256dnl End of "$Id: cups-common.m4 5136 2006-02-19 18:46:46Z mike $".
ef416fc2 257dnl