1 dnl Process this file with autoconf to produce a configure script.
4 # UPDATING VERSION NUMBERS FOR RELEASES
6 # purple_micro_version += 1
8 # If any functions have been added to libpurple, Pidgin, or Finch:
9 # purple_micro_version = 0
10 # purple_minor_version += 1
11 # purple_lt_current += 1
13 # If backwards compatibility has been broken in libpurple, Pidgin, or Finch:
14 # purple_micro_version = 0
15 # purple_minor_version = 0
16 # purple_major_version += 1;
17 # purple_lt_current += 1
19 # purple_version_suffix should be similar to one of the following:
20 # For beta releases: [beta2]
21 # For code under development: [devel]
22 # For production releases: []
25 # If any code has changed in libgnt:
26 # gnt_micro_version += 1
28 # If any functions have been added to libgnt:
29 # gnt_micro_version = 0
30 # gnt_minor_version += 1
33 # If backwards compatibility has been broken in libgnt:
34 # gnt_micro_version = 0
35 # gnt_minor_version = 0
36 # gnt_major_version += 1;
39 # gnt_version_suffix should be similar to one of the following:
40 # For beta releases: [beta2]
41 # For code under development: [devel]
42 # For production releases: []
44 # Make sure to update finch/libgnt/configure.ac with libgnt version changes.
46 m4_define([purple_lt_current], [20])
47 m4_define([purple_major_version], [3])
48 m4_define([purple_minor_version], [0])
49 m4_define([purple_micro_version], [0])
50 m4_define([purple_version_suffix], [devel])
51 m4_define([purple_version],
52 [purple_major_version.purple_minor_version.purple_micro_version])
53 m4_define([purple_display_version], purple_version[]m4_ifdef([purple_version_suffix],[purple_version_suffix]))
55 # the last version for Finch 2 was 2.8.10,
56 # the first version for Finch 3 was 2.9.0
57 m4_define([gnt_lt_current], [9])
58 m4_define([gnt_major_version], [2])
59 m4_define([gnt_minor_version], [9])
60 m4_define([gnt_micro_version], [0])
61 m4_define([gnt_version_suffix], [devel])
62 m4_define([gnt_version],
63 [gnt_major_version.gnt_minor_version.gnt_micro_version])
64 m4_define([gnt_display_version], gnt_version[]m4_ifdef([gnt_version_suffix],[gnt_version_suffix]))
67 AC_INIT([pidgin], [purple_display_version], [devel@pidgin.im])
69 if test `pwd | wc -w` -ne 1; then
71 You are attempting to build in a path that contains spaces. This
72 will fail. Relocate this source tree to a path that does not contain
73 spaces and run configure again.
78 AC_CONFIG_HEADERS([config.h])
79 AC_CONFIG_MACRO_DIR([m4macros])
80 AM_INIT_AUTOMAKE([1.11 -Wno-portability dist-bzip2 subdir-objects])
81 AM_SILENT_RULES([yes])
83 PURPLE_MAJOR_VERSION=purple_major_version
84 PURPLE_MINOR_VERSION=purple_minor_version
85 PURPLE_MICRO_VERSION=purple_micro_version
86 PURPLE_VERSION=purple_display_version
87 PURPLE_API_VERSION=$((purple_lt_current - purple_minor_version))
88 AC_SUBST(PURPLE_MAJOR_VERSION)
89 AC_SUBST(PURPLE_MINOR_VERSION)
90 AC_SUBST(PURPLE_MICRO_VERSION)
91 AC_SUBST(PURPLE_VERSION)
92 AC_SUBST(PURPLE_API_VERSION)
94 PURPLE_LT_VERSION_INFO="purple_lt_current:purple_micro_version:purple_minor_version"
95 AC_SUBST(PURPLE_LT_VERSION_INFO)
97 GNT_MAJOR_VERSION=gnt_major_version
98 GNT_MINOR_VERSION=gnt_minor_version
99 GNT_MICRO_VERSION=gnt_micro_version
100 GNT_VERSION=gnt_display_version
101 GNT_API_VERSION=$((gnt_lt_current - gnt_minor_version))
102 AC_SUBST(GNT_MAJOR_VERSION)
103 AC_SUBST(GNT_MINOR_VERSION)
104 AC_SUBST(GNT_MICRO_VERSION)
105 AC_SUBST(GNT_VERSION)
106 AC_SUBST(GNT_API_VERSION)
108 GNT_LT_VERSION_INFO="gnt_lt_current:gnt_micro_version:gnt_minor_version"
109 AC_SUBST(GNT_LT_VERSION_INFO)
111 AC_PATH_PROG(sedpath, sed)
113 dnl Storing configure arguments
114 AC_DEFINE_UNQUOTED(CONFIG_ARGS, "$ac_configure_args", [configure arguments])
116 dnl Checks for programs.
121 LT_INIT([disable-static])
126 dnl Check for Sun compiler
127 AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
131 *-*-mingw* | *-*-cygwin*)
134 LIBS="$LIBS -lws2_32"
135 DNSAPI_LIBS="-ldnsapi"
136 PLUGIN_LDFLAGS="-avoid-version -no-undefined"
137 AC_SUBST(DNSAPI_LIBS)
138 AC_CHECK_TOOL(WINDRES, windres)
139 AC_DEFINE(IS_WIN32_CROSS_COMPILED, 1,
140 [Define to 1, when building with autotools (not necessarily
141 cross-compiling) for windows. It's a temporary hack to remain
142 non-autotools win32 build working. Drop it when we fully
143 switch our win32 build to autotools.])
144 AC_DEFINE(WIN32_LEAN_AND_MEAN, 1,
145 [Define to 1, to build faster for win32.])
150 PLUGIN_LDFLAGS="-avoid-version"
153 AM_CONDITIONAL(IS_WIN32, test "x$is_win32" = "xyes")
154 AC_SUBST([PLUGIN_LDFLAGS])
157 PURPLE_LIBS="\$(top_builddir)/libpurple/libpurple.la \$(GLIB_LIBS) \$(GPLUGIN_LIBS)"
158 PIDGIN_LIBS="\$(top_builddir)/pidgin/libpidgin.la \$(GTK_LIBS) \$(PURPLE_LIBS) \$(WEBKIT_LIBS)"
159 FINCH_LIBS="\$(top_builddir)/finch/libfinch.la \$(top_builddir)/finch/libgnt/libgnt.la \$(PURPLE_LIBS)"
160 AC_SUBST(PURPLE_LIBS)
161 AC_SUBST(PIDGIN_LIBS)
164 dnl Checks for header files.
166 AC_CHECK_HEADERS(fcntl.h unistd.h stdint.h)
168 dnl Checks for typedefs, structures, and compiler characteristics.
169 AC_CHECK_SIZEOF(time_t, ,[
175 AC_ARG_WITH(win32-dirs, [AS_HELP_STRING([--with-win32-dirs=<classic|fhs>],
176 [use win32 classic (Program Files-like) or FHS (unix-like) directory structure (default: classic)])], [
177 if test "x$withval" != "xclassic" -a "x$withval" != "xfhs" ; then
178 AC_MSG_ERROR([Unsupported win32-dirs option. Please choose "classic" or "fhs".])
180 with_win32_dirs="$withval"
181 ], with_win32_dirs="classic")
182 if test "x$is_win32" = "xyes" -a "x$with_win32_dirs" = "xfhs" ; then
183 AC_DEFINE(USE_WIN32_FHS, 1, [Define to 1, to use FHS on win32.])
186 dnl Check for directories
187 if test "x$is_win32" = "xyes" ; then
188 if test "x$with_win32_dirs" = "xfhs" ; then
189 AS_AC_EXPAND(win32_fhs_bindir, "$bindir")
190 AC_DEFINE_UNQUOTED([WIN32_FHS_BINDIR], ["$win32_fhs_bindir"],
191 [bindir, as defined by configure])
192 AS_AC_EXPAND(win32_fhs_libdir, "$libdir")
193 AC_DEFINE_UNQUOTED([WIN32_FHS_LIBDIR], ["$win32_fhs_libdir"],
194 [libdir, as defined by configure])
195 AS_AC_EXPAND(win32_fhs_datadir, "$datadir")
196 AC_DEFINE_UNQUOTED([WIN32_FHS_DATADIR], ["$win32_fhs_datadir"],
197 [datadir, as defined by configure])
198 AS_AC_EXPAND(win32_fhs_sysconfdir, "$sysconfdir")
199 AC_DEFINE_UNQUOTED([WIN32_FHS_SYSCONFDIR], ["$win32_fhs_sysconfdir"],
200 [sysconfdir, as defined by configure])
201 AS_AC_EXPAND(win32_fhs_localedir, "$localedir")
202 AC_DEFINE_UNQUOTED([WIN32_FHS_LOCALEDIR], ["$win32_fhs_localedir"],
203 [localedir, as defined by configure])
205 purple_libdir="wpurple_lib_dir(\"purple-$PURPLE_MAJOR_VERSION\")"
206 pidgin_libdir="wpurple_lib_dir(\"pidgin-$PURPLE_MAJOR_VERSION\")"
207 finch_libdir="wpurple_lib_dir(\"finch-$PURPLE_MAJOR_VERSION\")"
209 purple_libdir="wpurple_lib_dir(NULL)"
210 pidgin_libdir="wpurple_lib_dir(NULL)"
211 finch_libdir="wpurple_lib_dir(NULL)"
214 purple_datadir="wpurple_data_dir()"
215 purple_sysconfdir="wpurple_sysconf_dir()"
216 purple_localedir="wpurple_locale_dir()"
218 AS_AC_EXPAND(purple_datadir, "$datadir")
219 purple_datadir="\"$purple_datadir\""
220 AS_AC_EXPAND(purple_sysconfdir, "$sysconfdir")
221 purple_sysconfdir="\"$purple_sysconfdir\""
222 AS_AC_EXPAND(purple_localedir, "$localedir")
223 purple_localedir="\"$purple_localedir\""
225 AS_AC_EXPAND(common_libdir, "$libdir")
226 purple_libdir="\"$common_libdir/purple-$PURPLE_MAJOR_VERSION\""
227 pidgin_libdir="\"$common_libdir/pidgin-$PURPLE_MAJOR_VERSION\""
228 finch_libdir="\"$common_libdir/finch-$PURPLE_MAJOR_VERSION\""
230 AC_DEFINE_UNQUOTED([PURPLE_DATADIR], [$purple_datadir],
231 [datadir to use, may expand into a function call that returns const char *])
232 AC_DEFINE_UNQUOTED([PURPLE_LIBDIR], [$purple_libdir],
233 [libdir to use for libpurple, may expand into a function call that returns const char *])
234 AC_DEFINE_UNQUOTED([PIDGIN_LIBDIR], [$pidgin_libdir],
235 [libdir to use for Pidgin, may expand into a function call that returns const char *])
236 AC_DEFINE_UNQUOTED([FINCH_LIBDIR], [$finch_libdir],
237 [libdir to use for Finch, may expand into a function call that returns const char *])
238 AC_DEFINE_UNQUOTED([PURPLE_SYSCONFDIR], [$purple_sysconfdir],
239 [sysconfdir to use, may expand into a function call that returns const char *])
240 AC_DEFINE_UNQUOTED([PURPLE_LOCALEDIR], [$purple_localedir],
241 [localedir to use, may expand into a function call that returns const char *])
243 PURPLE_PLUGINDIR="\$(libdir)/purple-$PURPLE_MAJOR_VERSION"
244 AC_SUBST([PURPLE_PLUGINDIR])
245 PIDGIN_PLUGINDIR="\$(libdir)/pidgin-$PURPLE_MAJOR_VERSION"
246 AC_SUBST([PIDGIN_PLUGINDIR])
247 FINCH_PLUGINDIR="\$(libdir)/finch-$PURPLE_MAJOR_VERSION"
248 AC_SUBST([FINCH_PLUGINDIR])
250 dnl Checks for library functions.
251 AC_CHECK_FUNCS(strdup)
253 dnl Check for inet_aton
254 if test "x$is_win32" != "xyes" ; then
255 AC_CHECK_FUNC(inet_aton, , [AC_CHECK_LIB(resolv, inet_aton, ,
256 [AC_MSG_ERROR([inet_aton not found])])])
258 AC_CHECK_LIB(nsl, gethostent)
259 if test "x$is_win32" = "xyes" ; then
260 AC_DEFINE(HAVE_GETADDRINFO, 1, [Define to 1 if you have the getaddrinfo function.])
261 AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have the `inet_ntop' function.])
263 AC_CHECK_FUNC(socket, , [AC_CHECK_LIB(socket, socket, ,
264 [AC_MSG_ERROR([socket not found])])])
265 dnl If all goes well, by this point the previous two checks will have
266 dnl pulled in -lsocket and -lnsl if we need them.
267 AC_CHECK_FUNC(getaddrinfo,
268 [AC_DEFINE([HAVE_GETADDRINFO], [1],
269 [Define to 1 if you have the getaddrinfo function.])],
270 [AC_CHECK_LIB(socket, getaddrinfo,
271 [AC_DEFINE([HAVE_GETADDRINFO]) LIBS="-lsocket -lnsl $LIBS"], , -lnsl)])
272 AC_CHECK_FUNCS(inet_ntop)
274 AC_CHECK_FUNCS(getifaddrs)
275 dnl Check for socklen_t (in Unix98)
276 AC_MSG_CHECKING(for socklen_t)
277 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
278 #include <sys/types.h>
280 # include <ws2tcpip.h>
282 # include <sys/socket.h>
288 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
289 #include <sys/types.h>
291 # include <ws2tcpip.h>
293 # include <sys/socket.h>
295 int accept(int, struct sockaddr *, size_t *);
297 AC_MSG_RESULT(size_t)
298 AC_DEFINE(socklen_t, size_t, [socklen_t size])
301 AC_DEFINE(socklen_t, int, [socklen_t size])
305 dnl Some systems do not have sa_len field for struct sockaddr.
306 AC_CHECK_MEMBER([struct sockaddr.sa_len],
307 [AC_DEFINE([HAVE_STRUCT_SOCKADDR_SA_LEN],[1],
308 [Define if struct sockaddr has an sa_len member])],[:],
311 # include <ws2tcpip.h>
313 # include <sys/socket.h>
317 dnl Check for v6-only sockets
318 AC_CHECK_DECL([IPV6_V6ONLY],
319 [AC_DEFINE([HAVE_IPV6_V6ONLY],[1],
320 [Define if the IPV6_V6ONLY setsockopt option exists])],
323 # include <ws2tcpip.h>
325 # include <netinet/in.h>
329 dnl to prevent the g_stat()/g_unlink() crash,
330 dnl (09:50:07) Robot101: LSchiere2: it's easy. +LC_SYS_LARGEFILE somewhere in configure.ac
333 dnl FreeBSD doesn't have libdl, dlopen is provided by libc
334 AC_CHECK_FUNC(dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
336 dnl Windows and Haiku do not use libm for the math functions, they are part
338 AC_SEARCH_LIBS([ceil], [m], [], [
339 AC_MSG_ERROR([unable to find the ceil() function])
342 AC_MSG_CHECKING([for fileno()])
343 AC_RUN_IFELSE([AC_LANG_SOURCE([[
346 int main(int argc, char *argv[])
356 AC_DEFINE([HAVE_FILENO], [1],
357 [Define to 1 if your stdio has int fileno(FILE *).])
361 # Fallback for Cross Compiling...
362 # This will enable the compatibility code.
366 AC_MSG_CHECKING([for the %z format string in strftime()])
367 AC_RUN_IFELSE([AC_LANG_SOURCE([[
374 time_t t = time(NULL);
376 if (strftime(buf, sizeof(buf), "%z", localtime(&t)) != 5)
379 fprintf(stderr, "strftime(\"%%z\") yields: \"%s\"\n", buf);
381 return !((buf[0] == '-' || buf[0] == '+') &&
382 (buf[1] >= '0' && buf[1] <= '9') &&
383 (buf[2] >= '0' && buf[2] <= '9') &&
384 (buf[3] >= '0' && buf[3] <= '9') &&
385 (buf[4] >= '0' && buf[4] <= '9')
390 AC_DEFINE([HAVE_STRFTIME_Z_FORMAT], [1],
391 [Define to 1 if you have a strftime() that supports the %z format string.])
395 # Fallback for Cross Compiling...
396 # This will enable the compatibility code.
400 # before gettexting, in case iconv matters
403 AC_CHECK_HEADER(CoreFoundation/CoreFoundation.h, [
404 AC_CHECK_HEADER(IOKit/IOKitLib.h, [
405 AC_DEFINE(HAVE_IOKIT, 1, [Define if we have IOKit])
406 LIBS="$LIBS -framework IOKit -framework CoreFoundation"
410 AC_MSG_CHECKING([for fink])
412 AC_MSG_RESULT([found, adding /sw to search paths])
413 CPPFLAGS="$CPPFLAGS -I/sw/include"
414 LDFLAGS="$LDFLAGS -L/sw/lib"
416 AC_MSG_RESULT([not found])
423 dnl #######################################################################
424 dnl # Disable creation and installation of translation files
425 dnl #######################################################################
426 AC_ARG_ENABLE(nls, AS_HELP_STRING([--disable-nls], [disable installation of translation files]), enable_i18n="$enableval", enable_i18n=yes)
428 if test x$enable_i18n = xyes; then
430 GETTEXT_PACKAGE=pidgin
431 AC_SUBST(GETTEXT_PACKAGE)
433 ALL_LINGUAS="af am ar as ast az be@latin bg bn_IN bn br brx bs ca ca@valencia cs da de dz el en_AU en_CA en_GB eo es_AR es et eu fa fi fr ga gl gu he hi hr hu id it ja ka kk km kn ko ks ku_IQ ku lt lv mai mhr mk ml mn mr ms_MY my_MM nb ne nl nn oc or pa pl ps pt_BR pt ro ru sd si sk sl sq sr@latin sr sv sw ta te th tr tt uk ur uz vi xh zh_CN zh_HK zh_TW"
436 dnl If we don't have msgfmt, then po/ is going to fail -- ensure that
437 dnl AM_GLIB_GNU_GETTEXT found it.
439 if test x$MSGFMT = xno -o x$MSGFMT$GMSGFMT$INTLTOOL_MSGFMT = x
443 The msgfmt command is required to build libpurple. If it is installed
444 on your system, ensure that it is in your path. If it is not, install
445 GNU gettext to continue.
447 If you have msgfmt installed, but for some reason this error message
448 is still displayed, you have encountered what appears to be a bug in
449 third-party configure macros. Try setting the MSGFMT environment
450 variable to the absolute path to your msgfmt binary and trying
451 configure again, like this:
453 MSGFMT=/path/to/msgfmt ./configure ...
458 AM_CONDITIONAL(INSTALL_I18N, test "x$enable_i18n" = "xyes")
460 dnl #######################################################################
461 dnl # Check for GLib 2.40 (required)
462 dnl #######################################################################
463 PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.40.0 gio-2.0 gobject-2.0 gthread-2.0], , [
467 You must have GLib 2.40.0 or newer development headers installed to build.
469 If you have these installed already you may need to install pkg-config so
472 AC_SUBST(GLIB_CFLAGS)
475 GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
476 AC_SUBST(GLIB_GENMARSHAL)
478 GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
479 AC_SUBST(GLIB_MKENUMS)
481 AC_PATH_PROG(GLIB_COMPILE_RESOURCES, [glib-compile-resources])
483 AC_PATH_PROG(GTESTER, gtester)
486 AC_ARG_WITH([extraversion],
487 AS_HELP_STRING([--with-extraversion=STRING],
488 [extra version number to be displayed in Help->About and --help (for packagers)]),
489 EXTRA_VERSION=$withval)
491 if test x"$EXTRA_VERSION" != "x" ; then
492 AC_DEFINE_UNQUOTED(DISPLAY_VERSION, "$VERSION-$EXTRA_VERSION", [display version info])
494 AC_DEFINE_UNQUOTED(DISPLAY_VERSION, "$VERSION", [display version info])
497 AC_ARG_ENABLE(missing-dependencies, [AS_HELP_STRING([--disable-missing-dependencies],
498 [skip missing dependencies instead of aborting configure])],
499 force_deps="$enableval", force_deps="yes")
502 with_x="$withval", with_x="$is_not_win32")
503 AC_ARG_ENABLE(gtkui, [AS_HELP_STRING([--disable-gtkui],
504 [compile without GTK+ user interface])],
505 enable_gtkui="$enableval", enable_gtkui="yes")
506 AC_ARG_ENABLE(consoleui, [AS_HELP_STRING([--disable-consoleui],
507 [compile without console user interface])],
508 [enable_consoleui=$enableval force_finch=$enableval], [enable_consoleui=yes force_finch=no])
510 dnl #######################################################################
511 dnl # Check for GTK+ 2.18 and other things used by the GTK UI
512 dnl #######################################################################
513 AC_ARG_ENABLE(enchant,
514 [AS_HELP_STRING([--disable-enchant],
515 [compile without Enchant spell checking support])],
516 enable_enchant="$enableval", enable_enchant="yes")
517 AC_ARG_ENABLE(gevolution,
518 [AS_HELP_STRING([--enable-gevolution],
519 [compile with the Evolution plugin])],
520 enable_gevolution="$enableval", enable_gevolution="no")
522 [AS_HELP_STRING([--enable-cap],
523 [compile with Contact Availability Prediction plugin])],
524 enable_cap="$enableval", enable_cap="no")
525 AC_ARG_ENABLE(gestures,
526 [AS_HELP_STRING([--disable-gestures],
527 [compile without the gestures plugin])],
528 enable_gestures="$enableval", enable_gestures="yes")
530 [AS_HELP_STRING([--enable-gcr],
531 [compile with GCR certificate widgets])],
532 enable_gcr="$enableval", enable_gcr="no")
535 # We can't assume that $x_libraries will be set, because autoconf does not
536 # set it in the case when the X libraries are in a standard place.
537 # Ditto for $x_includes
538 if test X"$x_libraries" = X"" || test X"$x_libraries" = XNONE; then
541 x_libpath_add="-L$x_libraries"
543 if test X"$x_includes" = X"" || test X"$x_includes" = XNONE; then
546 x_incpath_add="-I$x_includes"
549 dnl #######################################################################
550 dnl Check Pidgin dependencies
551 dnl #######################################################################
552 if test "x$enable_gtkui" = "xyes" ; then
553 PKG_CHECK_MODULES(GTK, [gtk+-3.0 >= 3.4.2], , [
556 You must have GTK+ 3.4.2 or newer development headers installed to compile
557 Pidgin. If you want to build only Finch then specify --disable-gtkui when
563 dnl We only really need Pango >= 1.4 for decent RTL support
564 PKG_CHECK_MODULES(PANGO, [pango >= 1.4.0],
565 AC_DEFINE(HAVE_PANGO14, 1, [Define if we have Pango 1.4 or newer.]),:)
568 PKG_CHECK_MODULES(WEBKIT, ["webkitgtk-3.0" >= $WEBKIT_VERSION], , [
571 You must have WebKit for GTK+3 $WEBKIT_VERSION or newer development headers
572 installed to compile Pidgin. If you want to build only Finch then specify
573 --disable-gtkui when running configure.
575 AC_SUBST(WEBKIT_CFLAGS)
576 AC_SUBST(WEBKIT_LIBS)
578 dnl #######################################################################
579 dnl # Check if we should compile with enchant support
580 dnl #######################################################################
581 dnl We need enchant for spell checking dictionary enumeration,
582 dnl because webkit1 doesn't have this.
584 if test "x$enable_enchant" = "xyes" ; then
586 PKG_CHECK_MODULES(ENCHANT, enchant, , [
590 if test "x$force_deps" = "xyes" -a "x$use_enchant" = "xno"; then
592 Enchant development headers not found.
593 Use --disable-enchant if you do not need it.
596 if test "x$use_enchant" = "xyes" ; then
597 AC_DEFINE(USE_ENCHANT, 1, [Define if we're using enchant])
598 AC_SUBST(ENCHANT_CFLAGS)
599 AC_SUBST(ENCHANT_LIBS)
603 dnl #######################################################################
604 dnl # Check if we should compile with X support
605 dnl #######################################################################
606 if test "x$with_x" = "xyes" ; then
607 PKG_CHECK_MODULES(X11, x11,
608 [AC_DEFINE(HAVE_X11, 1, [Define to 1 if you have X11])],
610 if test "x$x_incpath_add" != "x" -a "x$x_libpath_add" != "x"; then
611 X11_LIBS="$x_libpath_add"
612 X11_CFLAGS="$x_incpath_add"
615 if test "x$force_deps" = "xyes" ; then
617 X11 development headers not found.
618 Use --without-x if you do not need X11 support.
629 dnl #######################################################################
630 dnl # Check for X11 to allow the gestures plugin
631 dnl #######################################################################
632 if test "x$enable_gestures" = "xyes"; then
633 if test "x$with_x" = "xno" ; then
638 dnl #######################################################################
639 dnl # Check for stuff needed by the Evolution integration plugin.
640 dnl #######################################################################
641 if test "x$enable_gevolution" = "xyes"; then
642 evo_deps="libebook-1.2 libedata-book-1.2 evolution-data-server-1.2 >= 3.6"
643 PKG_CHECK_MODULES(EVOLUTION_ADDRESSBOOK, $evo_deps, , [
644 enable_gevolution="no"
646 if test "x$enable_gevolution" = "xyes"; then
647 AC_DEFINE(HAVE_EVOLUTION_ADDRESSBOOK, 1, [Define if we're using evolution addressbook.])
648 AC_SUBST(EVOLUTION_ADDRESSBOOK_CFLAGS)
649 AC_SUBST(EVOLUTION_ADDRESSBOOK_LIBS)
651 if test "x$force_deps" = "xyes" ; then
653 Evolution development headers not found (libebook, libedata-book, evolution-data-server >= 3.6).
654 Use --disable-gevolution if you do not need it.
660 dnl #######################################################################
661 dnl # Check for libsqlite3 (for the Contact Availability Prediction plugin)
662 dnl #######################################################################
663 if test "x$enable_cap" = "xyes"; then
664 PKG_CHECK_MODULES(SQLITE3, sqlite3 >= 3.3,,[
667 if test "x$force_deps" = "xyes" ; then
669 sqlite3 development headers not found.
670 Use --disable-cap if you do not need the Contact Availability Prediction plugin.
675 dnl #######################################################################
676 dnl # Check for GCR for its certificate widgets
677 dnl #######################################################################
678 if test "x$enable_gcr" = "xyes"; then
679 PKG_CHECK_MODULES(GCR, gcr-3, [
680 AC_DEFINE(ENABLE_GCR, 1, [Define to 1 if GCR is found.])], [
683 if test "x$force_deps" = "xyes" ; then
685 GCR for GTK+3 development headers not found.
686 Use --disable-gcr if you do not need GCR certificate widgets.
698 AM_CONDITIONAL(ENABLE_GTK, test "x$enable_gtkui" = "xyes")
699 AM_CONDITIONAL(BUILD_GEVOLUTION, test "x$enable_gevolution" = "xyes")
700 AM_CONDITIONAL(ENABLE_CAP, test "x$enable_cap" = "xyes")
701 AM_CONDITIONAL(ENABLE_GESTURES, test "x$enable_gestures" = "xyes")
702 AM_CONDITIONAL(ENABLE_GCR, test "x$enable_gcr" = "xyes")
705 dnl #######################################################################
706 dnl # Check for ncurses and other things used by the console UI
707 dnl #######################################################################
710 AC_ARG_WITH(ncurses-headers, [AS_HELP_STRING([--with-ncurses-headers=DIR],
711 [compile finch against the ncurses includes in DIR])],
712 [ac_ncurses_includes="$withval"], [ac_ncurses_includes=""])
713 if test "x$enable_consoleui" = "xyes"; then
714 AC_CHECK_LIB(ncursesw, initscr, [GNT_LIBS="-lncursesw"], [enable_consoleui=no])
715 AC_CHECK_LIB(panelw, update_panels, [GNT_LIBS="$GNT_LIBS -lpanelw"],
716 [enable_consoleui=no], [$GNT_LIBS])
718 if test "x$is_win32" = "xyes" ; then
719 ncurses_sys_prefix="/usr/$host/sys-root/mingw"
721 ncurses_sys_prefix="/usr"
724 ncurses_sys_dirs="$ncurses_sys_prefix/include/ncursesw $ncurses_sys_prefix/include"
726 if test "x$enable_consoleui" = "xyes"; then
727 dnl # Some distros put the headers in ncursesw/, some don't
729 for location in $ac_ncurses_includes $NCURSES_HEADERS $ncurses_sys_dirs
731 f="$location/ncurses.h"
732 orig_CFLAGS="$CFLAGS"
733 orig_CPPFLAGS="$CPPFLAGS"
734 CFLAGS="$CFLAGS -I$location"
735 CPPFLAGS="$CPPFLAGS -I$location"
737 AC_MSG_CHECKING([if $f supports wide characters])
738 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
739 #define _XOPEN_SOURCE_EXTENDED
743 # error get_wch not found!
747 if test x"$dir" != x"." ; then
754 CFLAGS="$orig_CFLAGS"
755 CPPFLAGS="$orig_CPPFLAGS"
759 CFLAGS="$orig_CFLAGS"
760 CPPFLAGS="$orig_CPPFLAGS"
766 if test x"$found_ncurses_h" = x"no" ; then
772 # ncursesw was not found. Look for plain old ncurses
774 AC_CHECK_LIB(ncurses, initscr, [GNT_LIBS="-lncurses"], [enable_consoleui=no])
775 AC_CHECK_LIB(panel, update_panels, [GNT_LIBS="$GNT_LIBS -lpanel"],
776 [enable_consoleui=no], [$GNT_LIBS])
777 AC_DEFINE(NO_WIDECHAR, 1, [Define to 1 if you don't have wide-character support.])
778 if test x"$ac_ncurses_includes" != "x"; then
779 GNT_CFLAGS="-I$ac_ncurses_includes"
781 if test x"$NCURSES_HEADERS" != "x"; then
782 GNT_CFLAGS="-I$NCURSES_HEADERS"
788 if test "x$force_finch" = "xyes" -a "x$enable_consoleui" != "xyes"; then
791 Finch will not be built. You need to install ncursesw (or ncurses) and its development headers.
798 AM_CONDITIONAL(ENABLE_GNT, test "x$enable_consoleui" = "xyes")
800 #AC_CHECK_FUNC(wcwidth, [AC_DEFINE([HAVE_WCWIDTH], [1], [Define to 1 if you have wcwidth function.])])
802 dnl #######################################################################
803 dnl # Check for LibXML2 (required)
804 dnl #######################################################################
805 PKG_CHECK_MODULES(LIBXML, [libxml-2.0 >= 2.6.0], , [
808 You must have libxml2 >= 2.6.0 development headers installed to build.
810 PKG_CHECK_EXISTS([libxml-2.0 >= 2.6.18], , [
812 Versions of libxml2 < 2.6.18 may contain bugs that could cause XMPP messages to be discarded.
815 AC_SUBST(LIBXML_CFLAGS)
816 AC_SUBST(LIBXML_LIBS)
818 dnl #######################################################################
819 dnl # Check for JSON-GLib (required)
820 dnl #######################################################################
822 PKG_CHECK_MODULES([JSON], [json-glib-1.0 >= 0.14.0], , [
825 You must have JSON-GLib >= 0.14.0 development headers installed to build.
828 AC_SUBST(JSON_CFLAGS)
831 dnl #######################################################################
832 dnl # Check for GStreamer
833 dnl #######################################################################
834 AC_ARG_ENABLE(gstreamer,
835 [AS_HELP_STRING([--disable-gstreamer], [compile without GStreamer audio support])],
836 enable_gst="$enableval", enable_gst="yes")
838 if test x"$enable_gst" != "xno"; then
839 PKG_CHECK_MODULES(GSTREAMER, [gstreamer-1.0], [
840 AC_DEFINE(USE_GSTREAMER, 1, [Use GStreamer for playing sounds])
841 AC_SUBST(GSTREAMER_CFLAGS)
842 AC_SUBST(GSTREAMER_LIBS)
846 if test "x$force_deps" = "xyes" ; then
848 GStreamer development headers not found.
849 Use --disable-gstreamer if you do not need GStreamer (sound) support.
855 dnl #######################################################################
856 dnl # Check for GStreamer Video
857 dnl #######################################################################
858 if test "x$enable_gst" != "xno"; then
859 AC_ARG_ENABLE(gstreamer-video,
860 [AS_HELP_STRING([--disable-gstreamer-video], [compile without GStreamer 1.0 Video Overlay support])],
861 enable_gstvideo="$enableval", enable_gstvideo="yes")
862 if test "x$enable_gstvideo" != "xno"; then
863 PKG_CHECK_MODULES(GSTVIDEO, [gstreamer-video-1.0], [
864 AC_DEFINE(USE_GSTVIDEO, 1, [Use GStreamer Video Overlay support])
865 AC_SUBST(GSTVIDEO_CFLAGS)
866 AC_SUBST(GSTVIDEO_LIBS)
875 dnl #######################################################################
876 dnl # Check for Farstream
877 dnl #######################################################################
878 AC_ARG_ENABLE(farstream,
879 [AS_HELP_STRING([--disable-farstream], [compile without farstream support])],
880 enable_farstream="$enableval", enable_farstream="yes")
881 if test "x$enable_farstream" != "xno"; then
882 PKG_CHECK_MODULES(FARSTREAM, [farstream-0.2 >= 0.2.7], [
883 AC_SUBST(FARSTREAM_CFLAGS)
884 AC_SUBST(FARSTREAM_LIBS)
886 enable_farstream="no"
890 dnl #######################################################################
891 dnl # Check for Voice and Video support
892 dnl #######################################################################
894 [AS_HELP_STRING([--disable-vv], [compile without voice and video support])],
895 enable_vv="$enableval", enable_vv="yes")
896 if test "x$enable_vv" != "xno"; then
897 if test "x$enable_gst" != "xno" -a "x$enable_gstvideo" != "xno" -a "x$enable_farstream" != "xno"; then
898 AC_DEFINE(USE_VV, 1, [Use voice and video])
901 if test "x$force_deps" = "xyes"; then
903 Dependencies for voice/video were not met.
904 Install the necessary gstreamer and farstream packages first.
905 Or use --disable-vv if you do not need voice/video support.
910 AM_CONDITIONAL(USE_VV, test "x$enable_vv" != "xno")
912 dnl #######################################################################
913 dnl # Check for Raw data streams support in Farstream
914 dnl #######################################################################
915 if test "x$enable_vv" != "xno"; then
916 PKG_CHECK_MODULES(GSTAPP, [gstreamer-app-1.0], [
917 AC_DEFINE(USE_GSTAPP, 1, [Use GStreamer Video Overlay support])
918 AC_SUBST(GSTAPP_CFLAGS)
919 AC_SUBST(GSTAPP_LIBS)
920 AC_DEFINE(HAVE_MEDIA_APPLICATION, 1, [Define if we have support for application media type.])
924 dnl #######################################################################
925 dnl # Check for Internationalized Domain Name support
926 dnl #######################################################################
929 [AS_HELP_STRING([--disable-idn], [compile without IDN support])],
930 [enable_idn="$enableval" force_idn=$enableval], [enable_idn="yes" force_idn=no])
931 if test "x$enable_idn" != "xno"; then
932 PKG_CHECK_MODULES(IDN, libidn >= 0.0.0, [
933 AC_DEFINE(USE_IDN, 1, [Use GNU Libidn for stringprep and IDN])
939 if test "x$force_deps" = "xyes" ; then
941 GNU Libidn development headers not found.
942 Use --disable-idn if you do not need it.
948 dnl #######################################################################
949 dnl # Check for Meanwhile headers (for Sametime)
950 dnl #######################################################################
951 AC_ARG_ENABLE(meanwhile,
952 [AS_HELP_STRING([--disable-meanwhile],
953 [compile without meanwhile (required for Sametime support)])],
954 enable_meanwhile="$enableval", enable_meanwhile="yes")
955 if test "x$enable_meanwhile" = "xyes"; then
956 PKG_CHECK_MODULES(MEANWHILE, [meanwhile >= 1.0.0 meanwhile < 2.0.0], [
960 if test "x$force_deps" = "xyes" ; then
962 Meanwhile development headers not found.
963 Use --disable-meanwhile if you do not need meanwhile (Sametime) support.
967 AC_SUBST(MEANWHILE_CFLAGS)
968 AC_SUBST(MEANWHILE_LIBS)
970 dnl #######################################################################
971 dnl # Check for Native Avahi headers (for Bonjour)
972 dnl #######################################################################
974 [AS_HELP_STRING([--disable-avahi],
975 [compile without avahi (required for Bonjour support)])],
976 enable_avahi="$enableval", enable_avahi="yes")
978 if test "x$enable_avahi" = "xyes" -a "x$is_win32" = "xyes" ; then
981 elif test "x$enable_avahi" = "xyes"; then
982 AC_ARG_WITH(avahi-client-includes, [AS_HELP_STRING([--with-avahi-client-includes=DIR], [compile the Bonjour plugin against the Avahi Client includes in DIR])], [ac_avahi_client_includes="$withval"], [ac_avahi_client_includes="no"])
983 AC_ARG_WITH(avahi-client-libs, [AS_HELP_STRING([--with-avahi-client-libs=DIR], [compile the Bonjour plugin against the Avahi Client libs in DIR])], [ac_avahi_client_libs="$withval"], [ac_avahi_client_libs="no"])
987 dnl Attempt to autodetect Avahi
988 PKG_CHECK_MODULES(AVAHI, [avahi-client avahi-glib], [
996 dnl Override AVAHI_CFLAGS if the user specified an include dir
997 if test "$ac_avahi_client_includes" != "no"; then
998 AVAHI_CFLAGS="-I$ac_avahi_client_includes"
1000 CPPFLAGS_save="$CPPFLAGS"
1001 CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS"
1002 AC_CHECK_HEADER(avahi-client/client.h, [avahiincludes=yes], [avahiincludes=no])
1003 CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS $GLIB_CFLAGS"
1004 AC_CHECK_HEADER(avahi-glib/glib-malloc.h, [avahiincludes=yes], [avahiincludes=no])
1005 CPPFLAGS="$CPPFLAGS_save"
1007 dnl Override AVAHI_LIBS if the user specified a libs dir
1008 if test "$ac_avahi_client_libs" != "no"; then
1009 AVAHI_LIBS="-L$ac_avahi_client_libs -lavahi-common -lavahi-client -lavahi-glib "
1011 AC_CHECK_LIB(avahi-client, avahi_client_new, [avahilibs=yes], [avahilibs=no], $AVAHI_LIBS)
1014 if test "x$enable_avahi" = "xyes" -a \( "x$avahiincludes" = "xno" -o "x$avahilibs" = "xno" \); then
1016 if test "x$force_deps" = "xyes"; then
1018 avahi development headers not found.
1019 Use --disable-avahi if you do not need avahi (Bonjour) support.
1023 AC_SUBST(AVAHI_CFLAGS)
1024 AC_SUBST(AVAHI_LIBS)
1027 dnl #######################################################################
1028 dnl # Check for SILC client includes and libraries
1029 dnl #######################################################################
1030 AC_ARG_WITH(silc-includes, [AS_HELP_STRING([--with-silc-includes=DIR], [compile the SILC plugin against includes in DIR])], [ac_silc_includes="$withval"], [ac_silc_includes="no"])
1031 AC_ARG_WITH(silc-libs, [AS_HELP_STRING([--with-silc-libs=DIR], [compile the SILC plugin against the SILC libs in DIR])], [ac_silc_libs="$withval"], [ac_silc_libs="no"])
1035 if test -n "$with_silc_includes" || test -n "$with_silc_libs"; then
1036 silc_manual_check="yes"
1038 silc_manual_check="no"
1040 if test "x$silc_manual_check" = "xno"; then
1041 PKG_CHECK_MODULES(SILC, [silcclient >= 1.1], [
1049 if test "$ac_silc_includes" != "no"; then
1050 SILC_CFLAGS="-I$ac_silc_includes"
1052 CPPFLAGS_save="$CPPFLAGS"
1053 CPPFLAGS="$CPPFLAGS $SILC_CFLAGS"
1054 AC_CHECK_HEADER(silc.h, [silcincludes=yes])
1055 CPPFLAGS="$CPPFLAGS_save"
1057 if test "$ac_silc_libs" != "no"; then
1058 SILC_LIBS="-L$ac_silc_libs"
1060 SILC_LIBS="$SILC_LIBS -lsilc -lsilcclient -lpthread $LIBDL"
1061 AC_CHECK_LIB(silcclient, silc_client_init, [silcclient=yes], , $SILC_LIBS)
1063 if test "x$silcincludes" = "xyes" -a "x$silcclient" = "xyes"; then
1068 AC_SUBST(SILC_CFLAGS)
1069 dnl SILC Toolkit >= 1.0.1 has a new MIME API
1070 if test "x$silcclient" = "xyes"; then
1071 AC_DEFINE(HAVE_SILCMIME_H, 1, [Define if we have silcmime.h])
1074 dnl #######################################################################
1075 dnl # Check for Gadu-Gadu protocol library (libgadu)
1076 dnl #######################################################################
1077 AC_ARG_ENABLE(libgadu,
1078 [AS_HELP_STRING([--disable-libgadu],
1079 [compile without libgadu (required for GaduGadu support)])],
1080 enable_libgadu="$enableval", enable_libgadu="yes")
1082 if test "x$enable_libgadu" = "xyes"; then
1083 PKG_CHECK_MODULES(LIBGADU, [libgadu >= 1.12.0], [
1085 AC_CHECK_LIB(gadu, gg_is_gpl_compliant, [ ], [
1089 if test "x$force_deps" = "xyes" ; then
1091 libgadu is not compatible with the GPL when compiled with OpenSSL support.
1093 To link against libgadu, please recompile it using:
1094 ./configure --with-openssl=no
1095 Then rerun this ./configure
1103 if test "x$have_libgadu" != "xyes" -a "x$force_deps" = "xyes" ; then
1105 Libgadu development headers not found.
1106 Use --disable-libgadu if you do not need GG (GaduGadu) support.
1111 AC_SUBST(LIBGADU_LIBS)
1112 AC_SUBST(LIBGADU_CFLAGS)
1116 AC_ARG_WITH(static-prpls, [AS_HELP_STRING([--with-static-prpls], [Link to certain protocols statically])], [STATIC_PRPLS=`echo $withval | $sedpath 's/,/ /g'`], [STATIC_PRPLS=""])
1117 if test "x$STATIC_PRPLS" != "x" -a "x$DYNAMIC_PRPLS" = "xall"; then
1121 if test "x$STATIC_PRPLS" = "xall" ; then
1122 STATIC_PRPLS="bonjour facebook gg irc jabber novell oscar sametime silc simple zephyr"
1124 if test "x$have_meanwhile" != "xyes" ; then
1125 STATIC_PRPLS=`echo $STATIC_PRPLS | $sedpath 's/sametime//'`
1127 if test "x$avahiincludes" != "xyes" -o "x$avahilibs" != "xyes"; then
1128 STATIC_PRPLS=`echo $STATIC_PRPLS | $sedpath 's/bonjour//'`
1130 if test "x$silcincludes" != "xyes" -o "x$silcclient" != "xyes"; then
1131 STATIC_PRPLS=`echo $STATIC_PRPLS | $sedpath 's/silc//'`
1133 if test "x$have_libgadu" != "xyes" ; then
1134 STATIC_PRPLS=`echo $STATIC_PRPLS | $sedpath 's/gg//'`
1136 if test "x$is_win32" = "xyes" ; then
1137 STATIC_PRPLS=`echo $STATIC_PRPLS | $sedpath 's/zephyr//'`
1139 AC_SUBST(STATIC_PRPLS)
1145 for i in $STATIC_PRPLS ; do
1146 dnl Ugly special case for "libsilcpurple.la":
1147 if test "x$i" = "xsilc"; then
1148 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib${i}purple.la"
1150 STATIC_LINK_LIBS="$STATIC_LINK_LIBS \$(top_builddir)/libpurple/protocols/$i/lib$i.la"
1152 extern_load="$extern_load extern gboolean ${i}_plugin_load();"
1153 load_proto="$load_proto ${i}_plugin_load();"
1154 extern_unload="$extern_unload extern gboolean ${i}_plugin_unload();"
1155 unload_proto="$unload_proto ${i}_plugin_unload();"
1158 bonjour) static_bonjour=yes ;;
1159 facebook) static_facebook=yes ;;
1160 gg) static_gg=yes ;;
1161 irc) static_irc=yes ;;
1162 jabber) static_jabber=yes ;;
1163 novell) static_novell=yes ;;
1164 oscar) static_oscar=yes ;;
1165 aim) static_oscar=yes ;;
1166 icq) static_oscar=yes ;;
1167 sametime) static_sametime=yes ;;
1168 silc) static_silc=yes ;;
1169 simple) static_simple=yes ;;
1170 zephyr) static_zephyr=yes ;;
1171 *) echo "Invalid static protocol $i!!" ; exit 1 ;;
1174 AM_CONDITIONAL(STATIC_BONJOUR, test "x$static_bonjour" = "xyes")
1175 AM_CONDITIONAL(STATIC_FACEBOOK, test "x$static_facebook" = "xyes")
1176 AM_CONDITIONAL(STATIC_GG, test "x$static_gg" = "xyes")
1177 AM_CONDITIONAL(STATIC_IRC, test "x$static_irc" = "xyes")
1178 AM_CONDITIONAL(STATIC_JABBER, test "x$static_jabber" = "xyes")
1179 AM_CONDITIONAL(STATIC_NOVELL, test "x$static_novell" = "xyes")
1180 AM_CONDITIONAL(STATIC_OSCAR, test "x$static_oscar" = "xyes")
1181 AM_CONDITIONAL(STATIC_SAMETIME, test "x$static_sametime" = "xyes" -a "x$have_meanwhile" = "xyes")
1182 AM_CONDITIONAL(STATIC_SILC, test "x$static_silc" = "xyes" -a "x$have_silc" = "xyes")
1183 AM_CONDITIONAL(STATIC_SIMPLE, test "x$static_simple" = "xyes")
1184 AM_CONDITIONAL(STATIC_ZEPHYR, test "x$static_zephyr" = "xyes")
1185 AC_SUBST(STATIC_LINK_LIBS)
1186 AC_DEFINE_UNQUOTED(STATIC_PROTO_LOAD, $extern_load static void static_proto_load(void) { $load_proto },
1187 [Loads protocols from static protocol plugin modules.])
1188 AC_DEFINE_UNQUOTED(STATIC_PROTO_UNLOAD, $extern_unload static void static_proto_unload(void) { $unload_proto },
1189 [Unloads protocols from static protocol plugin modules.])
1191 AC_ARG_WITH(dynamic_prpls, [AS_HELP_STRING([--with-dynamic-prpls], [specify which protocols to build dynamically])], [DYNAMIC_PRPLS=`echo $withval | $sedpath 's/,/ /g'`])
1192 if test "x$DYNAMIC_PRPLS" = "xall" ; then
1193 DYNAMIC_PRPLS="bonjour facebook gg irc jabber novell oscar sametime silc simple zephyr"
1195 if test "x$have_meanwhile" != "xyes"; then
1196 DYNAMIC_PRPLS=`echo $DYNAMIC_PRPLS | $sedpath 's/sametime//'`
1198 if test "x$avahiincludes" != "xyes" -o "x$avahilibs" != "xyes"; then
1199 DYNAMIC_PRPLS=`echo $DYNAMIC_PRPLS | $sedpath 's/bonjour//'`
1201 if test "x$silcincludes" != "xyes" -o "x$silcclient" != "xyes"; then
1202 DYNAMIC_PRPLS=`echo $DYNAMIC_PRPLS | $sedpath 's/silc//'`
1204 if test "x$have_libgadu" != "xyes"; then
1205 DYNAMIC_PRPLS=`echo $DYNAMIC_PRPLS | $sedpath 's/gg//'`
1207 if test "x$is_win32" = "xyes" ; then
1208 DYNAMIC_PRPLS=`echo $DYNAMIC_PRPLS | $sedpath 's/zephyr//'`
1210 AC_SUBST(DYNAMIC_PRPLS)
1211 for i in $DYNAMIC_PRPLS ; do
1213 bonjour) dynamic_bonjour=yes ;;
1214 facebook) dynamic_facebook=yes ;;
1215 gg) dynamic_gg=yes ;;
1216 irc) dynamic_irc=yes ;;
1217 jabber) dynamic_jabber=yes ;;
1218 novell) dynamic_novell=yes ;;
1219 null) dynamic_null=yes ;;
1220 oscar) dynamic_oscar=yes ;;
1221 aim) dynamic_oscar=yes ;;
1222 icq) dynamic_oscar=yes ;;
1223 sametime) dynamic_sametime=yes ;;
1224 silc) dynamic_silc=yes ;;
1225 simple) dynamic_simple=yes ;;
1226 zephyr) dynamic_zephyr=yes ;;
1227 *) echo "Invalid dynamic protocol $i!!" ; exit 1 ;;
1231 AC_ARG_ENABLE(plugins, [AS_HELP_STRING([--disable-plugins], [compile without plugin support])], , enable_plugins=yes)
1232 AC_ARG_WITH(krb4, [AS_HELP_STRING([--with-krb4=PREFIX], [compile Zephyr plugin with Kerberos 4 support])], kerberos="$withval", kerberos="no")
1233 AC_ARG_WITH(zephyr, [AS_HELP_STRING([--with-zephyr=PREFIX], [compile Zephyr plugin against external libzephyr])], zephyr="$withval", zephyr="no")
1234 AM_CONDITIONAL(EXTERNAL_LIBZEPHYR, test "x$zephyr" != "xno")
1236 AC_CHECK_HEADERS(sys/utsname.h)
1237 AC_CHECK_FUNC(uname)
1239 AC_ARG_ENABLE(fortify, [AS_HELP_STRING([--disable-fortify], [compile without FORTIFY_SOURCE support])], , enable_fortify=yes)
1241 DEBUG_CFLAGS="$DEBUG_CFLAGS -DPURPLE_DISABLE_DEPRECATED -DPIDGIN_DISABLE_DEPRECATED -DFINCH_DISABLE_DEPRECATED -DGNT_DISABLE_DEPRECATED"
1242 if test "x$GCC" = "xyes"; then
1243 dnl We enable -Wall later.
1244 dnl If it's set after the warning CFLAGS in the compiler invocation, it counteracts the -Wno... flags.
1245 dnl This leads to warnings we don't want.
1246 CFLAGS=`echo $CFLAGS |$sedpath 's/-Wall//'`
1248 dnl ENABLE WARNINGS SUPPORTED BY THE VERSION OF GCC IN USE
1250 dnl Future Possibilities
1252 dnl Consider adding -Wbad-function-cast.
1253 dnl This leads to spurious warnings using GPOINTER_TO_INT(), et al. directly on a function call.
1254 dnl We'd need an intermediate variable.
1257 "-Waggregate-return" \
1259 "-Wdeclaration-after-statement" \
1261 "-Werror-implicit-function-declaration" \
1262 "-Wextra -Wno-unused-parameter" \
1263 "-Wno-missing-field-initializers" \
1264 "-Wformat-security" \
1265 "-Werror=format-security" \
1267 "-Wmissing-declarations" \
1268 "-Wmissing-noreturn" \
1269 "-Wmissing-prototypes" \
1274 orig_CFLAGS="$CFLAGS"
1275 CFLAGS="$CFLAGS $newflag"
1276 AC_MSG_CHECKING(for $newflag option to gcc)
1277 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [
1279 CFLAGS="$orig_CFLAGS"
1280 DEBUG_CFLAGS="$DEBUG_CFLAGS $newflag"
1283 CFLAGS="$orig_CFLAGS"
1287 if test "x$enable_fortify" = "xyes"; then
1288 AC_MSG_CHECKING(for FORTIFY_SOURCE support)
1289 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <features.h>]], [[
1290 #if !(__GNUC_PREREQ (4, 1) \
1291 || (defined __GNUC_RH_RELEASE__ && __GNUC_PREREQ (4, 0)) \
1292 || (defined __GNUC_RH_RELEASE__ && __GNUC_PREREQ (3, 4) \
1293 && __GNUC_MINOR__ == 4 \
1294 && (__GNUC_PATCHLEVEL__ > 2 \
1295 || (__GNUC_PATCHLEVEL__ == 2 && __GNUC_RH_RELEASE__ >= 8))))
1296 #error No FORTIFY_SOURCE support
1301 DEBUG_CFLAGS="$DEBUG_CFLAGS -Wp,-D_FORTIFY_SOURCE=2"
1307 DEBUG_CFLAGS="-Wall $DEBUG_CFLAGS"
1310 DEBUG_CPPFLAGS=`echo "$DEBUG_CFLAGS" | $sedpath 's/-Wdeclaration-after-statement//' | $sedpath 's/-Wmissing-prototypes//' | $sedpath 's/-Waggregate-return//'`
1312 if test "x$SUNCC" = "xyes"; then
1313 CFLAGS="$CFLAGS -features=extensions"
1317 AC_PATH_PROG(pidginpath, pidgin)
1319 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [
1320 #if !defined(__clang__)
1323 ])], have_clang=yes, have_clang=no)
1325 AC_ARG_ENABLE(clang-address-sanitizer,
1326 [AS_HELP_STRING([--enable-clang-address-sanitizer],
1327 [compile with the Clang's address sanitizer enabled])],
1328 enable_clang_address_sanitizer="$enableval", enable_clang_address_sanitizer="no")
1330 if test "x$enable_clang_address_sanitizer" = "xyes" -a "x$have_clang" = "xno"; then
1332 Clang address sanitizer requested, but we don't compile with Clang.
1333 Disable the sanitizer or run configure script with CC and CCX set to clang binaries.
1337 if test "x$have_clang" = "xyes"; then
1338 GLIB_LIBS=`echo $GLIB_LIBS | $sedpath 's/-pthread/-lpthread/'`
1341 if test "x$enable_clang_address_sanitizer" = "xyes"; then
1342 CFLAGS="$CFLAGS -faddress-sanitizer -g -fno-omit-frame-pointer -fno-inline -fno-optimize-sibling-calls"
1346 AC_ARG_ENABLE(glib-errors-trace, [AS_HELP_STRING([--enable-glib-errors-trace], [print backtraces for glib errors])], enable_glibtrace="$enableval", enable_glibtrace="no")
1347 if test "x$enable_glibtrace" = "xyes"; then
1348 if test "x$have_clang" = "xyes"; then
1349 AC_MSG_ERROR([--enable-glib-errors-trace doesn't work with clang])
1351 AC_DEFINE(ENABLE_GLIBTRACE, 1, [Define if backtraces should be printed for glib errors.])
1352 dnl CFLAGS="$CFLAGS -rdynamic"
1353 CFLAGS="$CFLAGS -rdynamic"
1356 dnl #######################################################################
1357 dnl # Check for D-Bus libraries
1358 dnl #######################################################################
1360 # dbus doesn't compile for win32 at the moment
1362 [AS_HELP_STRING([--disable-dbus], [disable D-Bus support])], ,
1363 enable_dbus="$is_not_win32")
1365 if test "x$enable_dbus" = "xyes" ; then
1366 AC_CHECK_PROG(enable_dbus, dbus-binding-tool, yes, no)
1369 if test "x$enable_dbus" = "xyes" ; then
1370 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.60 dbus-glib-1 >= 0.60], [
1371 AC_SUBST(DBUS_CFLAGS)
1376 if test "x$force_deps" = "xyes" ; then
1378 D-Bus development headers not found.
1379 Use --disable-dbus if you do not need D-Bus support.
1384 dnl #######################################################################
1385 dnl # Check for Unity and Messaging Menu
1386 dnl # Remove when Ubuntu 16.04 is EOL
1387 dnl #######################################################################
1388 AC_ARG_ENABLE(unity, [AC_HELP_STRING([--enable-unity],
1389 [compile with support for unity integration plugin])], enable_unity="$enableval", enable_unity="no")
1390 if test "$enable_unity" = yes; then
1391 PKG_CHECK_MODULES(UNITY, [unity >= 6.8 messaging-menu >= 12.10], , [
1394 You must have libunity9 >= 6.8 and libmessaging-menu >= 12.10 to build the unity integration plugin.
1396 USES_MM_CHAT_SECTION="X-MessagingMenu-UsesChatSection=true"
1397 AC_SUBST(UNITY_CFLAGS)
1398 AC_SUBST(UNITY_LIBS)
1399 AC_SUBST(USES_MM_CHAT_SECTION)
1403 AM_CONDITIONAL(ENABLE_UNITY, [test "x$enable_unity" = "xyes"])
1405 dnl #######################################################################
1406 dnl # Check for Secret Service headers
1407 dnl #######################################################################
1409 AC_ARG_ENABLE(libsecret,
1410 [AC_HELP_STRING([--disable-libsecret], [enable Secret Service support])],
1411 enable_secret_service="$enableval", enable_secret_service="$is_not_win32")
1413 if test "x$enable_secret_service" = "xyes" ; then
1414 PKG_CHECK_MODULES(SECRETSERVICE, [libsecret-1], [
1415 AC_SUBST(SECRETSERVICE_CFLAGS)
1416 AC_SUBST(SECRETSERVICE_LIBS)
1417 AC_DEFINE(HAVE_SECRETSERVICE, 1, [Define if we have Secret Service.])
1420 enable_secret_service="no"
1421 if test "x$force_deps" = "xyes" ; then
1423 Libsecret development headers not found
1424 Use --disable-libsecret if you do not need it.
1431 AM_CONDITIONAL(ENABLE_SECRETSERVICE, test "x$enable_secret_service" = "xyes")
1433 dnl #######################################################################
1434 dnl # Check for GNOME Keyring headers
1435 dnl #######################################################################
1437 AC_ARG_ENABLE(gnome-keyring,
1438 [AC_HELP_STRING([--disable-gnome-keyring], [disable GNOME Keyring support])],
1439 enable_gnome_keyring="$enableval", enable_gnome_keyring="$is_not_win32")
1441 if test "x$enable_gnome_keyring" = "xyes" ; then
1442 PKG_CHECK_MODULES(GNOMEKEYRING, [gnome-keyring-1], [
1443 AC_SUBST(GNOMEKEYRING_CFLAGS)
1444 AC_SUBST(GNOMEKEYRING_LIBS)
1445 AC_DEFINE(HAVE_GNOMEKEYRING, 1, [Define if we have GNOME Keyring.])
1448 enable_gnome_keyring="no"
1449 if test "x$force_deps" = "xyes" ; then
1451 GNOME Keyring development headers not found
1452 Use --disable-gnome-keyring if you do not need it.
1458 AM_CONDITIONAL(ENABLE_GNOMEKEYRING, test "x$enable_gnome_keyring" = "xyes")
1460 dnl #######################################################################
1461 dnl # Check for KWallet headers
1462 dnl #######################################################################
1464 AC_ARG_ENABLE(kwallet,
1465 [AC_HELP_STRING([--disable-kwallet], [disable KWallet support])],
1466 enable_kwallet="$enableval", enable_kwallet="$is_not_win32")
1467 AC_ARG_WITH(kwallet-includes, [AC_HELP_STRING([--with-kwallet-includes=DIR], [compile the KWallet plugin against includes in DIR])], [ac_kwallet_includes="$withval"], [ac_kwallet_includes="no"])
1468 AC_ARG_WITH(kwallet-libs, [AC_HELP_STRING([--with-kwallet-libs=DIR], [compile the KWallet plugin against the KWallet libs in DIR])], [ac_kwallet_libs="$withval"], [ac_kwallet_libs="no"])
1470 if test "x$enable_kwallet" = "xyes"; then
1471 dnl Ensure C++ compiler works
1472 AC_CHECK_PROG(CXXTEST, [$CXX], [$CXX])
1473 if test "x$CXXTEST" = "x"; then
1475 if test "x$force_deps" = "xyes"; then
1477 A C++ compiler was not found.
1478 Use --disable-kwallet if you do not need KWallet support.
1485 CPPFLAGS_save="$CPPFLAGS"
1488 if test "x$enable_kwallet" = "xyes"; then
1489 PKG_CHECK_MODULES(QT4, [QtCore], [
1490 AC_SUBST(QT4_CFLAGS)
1495 if test "x$force_deps" = "xyes"; then
1497 Qt4 development headers not found.
1498 Use --disable-kwallet if you do not need KWallet support.
1504 if test "x$enable_kwallet" = "xyes"; then
1505 AC_MSG_CHECKING([for metaobject compiler])
1506 MOC=`$PKG_CONFIG --variable=moc_location QtCore`
1508 AC_MSG_RESULT([$MOC])
1512 if test -z "$with_kwallet_includes" || test -z "$with_kwallet_libs"; then
1513 AC_CHECK_PROG(KDE4_CONFIG, kde4-config, kde4-config, no)
1514 if test "x$KDE4_CONFIG" = "xno"; then
1516 if test "x$force_deps" = "xyes"; then
1518 kde4-config not found. $KDE4_CONFIG
1519 Use --disable-kwallet if you do not need KWallet support.
1520 Use --with-kwallet-includes and --with-kwallet-libs to set up includes manually.
1527 if test "x$enable_kwallet" = "xyes"; then
1528 if test "$ac_kwallet_includes" != "no"; then
1529 KWALLET_CXXFLAGS="-I$ac_kwallet_includes"
1530 elif test "x$KDE4_CONFIG" != "xno"; then
1531 KWALLET_CXXFLAGS="$QT4_CFLAGS -I`$KDE4_CONFIG --path include`"
1533 CPPFLAGS="$CPPFLAGS $KWALLET_CXXFLAGS"
1534 AC_CHECK_HEADER([kwallet.h], , [
1536 if test "x$force_deps" = "xyes"; then
1538 KWallet development headers not found.
1539 Use --disable-kwallet if you do not need KWallet support.
1545 if test "x$enable_kwallet" = "xyes"; then
1546 AC_MSG_CHECKING([for KWallet libraries])
1547 if test "$ac_kwallet_libs" != "no"; then
1548 KWALLET_LIBS="-L$ac_kwallet_libs -lkdeui"
1549 elif test "x$KDE4_CONFIG" != "xno"; then
1550 KWALLET_LIBS="-L`$KDE4_CONFIG --install lib`/kde4/devel -lkdeui"
1552 KWALLET_LIBS="-lkdeui"
1554 KWALLET_LIBS="$KWALLET_LIBS"
1555 LIBS="$LIBS $KWALLET_LIBS $QT4_LIBS"
1556 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <kwallet.h>],
1557 [KWallet::Wallet::LocalWallet();])], [AC_MSG_RESULT([yes])],
1561 if test "x$force_deps" = "xyes"; then
1563 KWallet development libraries not found.
1564 Use --disable-kwallet if you do not need KWallet support.
1570 CPPFLAGS="$CPPFLAGS_save"
1574 AC_SUBST(KWALLET_CXXFLAGS)
1575 AC_SUBST(KWALLET_LIBS)
1577 AM_CONDITIONAL(ENABLE_KWALLET, test "x$enable_kwallet" = "xyes")
1579 dnl #######################################################################
1580 dnl # Check for GPlugin 0.0.17
1581 dnl #######################################################################
1582 if test "x$enable_plugins" = "xyes" ; then
1583 PKG_CHECK_MODULES(GPLUGIN, [gplugin >= 0.0.17 gmodule-2.0], [
1584 dnl # GPLUGIN_REQ sets pkg-config requirements in the .pc file
1585 GPLUGIN_REQ=[", gplugin"]
1589 GPlugin 0.0.17 development headers not found, which are required if you wish to
1591 Use --disable-plugins if you want to disable plugins.
1593 AC_SUBST(GPLUGIN_REQ)
1594 AC_SUBST(GPLUGIN_CFLAGS)
1595 AC_SUBST(GPLUGIN_LIBS)
1597 enable_introspection=no
1600 dnl # Check for gobject introspection
1601 GOBJECT_INTROSPECTION_CHECK([1.30.0])
1603 if test "x$enable_introspection" = "xyes" ; then
1604 AC_DEFINE(ENABLE_INTROSPECTION, 1, [Define if GObject introspection is enabled.])
1607 dnl #######################################################################
1608 dnl # Check for Python
1609 dnl #######################################################################
1611 dnl Python scripts are used to auto-generate about 3000 lines of C
1612 dnl and XML code that wraps (part of) the existing API so that
1613 dnl it is now accessible through D-Bus.
1615 dnl Python is only required if --enable-dbus is used, and only for
1616 dnl the build process to generate the code, not for running pidgin.
1617 dnl This autogenerated code is system-independent, so in principle we
1618 dnl can generate all of it before shipping. But I thought adding
1619 dnl auto-generated stuff to the repository is inelegant.
1620 dnl Alternatively, these python scripts could be rewritten
1621 dnl in C (brrrr ...).
1623 AC_ARG_WITH([python],
1624 AS_HELP_STRING([--with-python=PATH],
1625 [which python interpreter to use for dbus code generation]),
1628 if test "x$enable_dbus" = "xyes" || test "x$enable_consoleui" = "xyes" ; then
1629 if test -z "$PYTHON" -a "x$is_win32" = "xyes" ; then
1630 dnl there are problems with include files when cross compiling
1631 dnl feel free to fix it, if you want
1633 elif test -z "$PYTHON" -o "x$PYTHON" = "xyes"; then
1634 AC_PATH_PROG([PYTHON], [python], [no])
1637 if test x"$PYTHON" = x"no" -a "x$is_win32" != "xyes" ; then
1638 AC_MSG_WARN([python interpreter not found in your path])
1642 if test "x$PYTHON" != "xno" ; then
1643 if $PYTHON -c "import sys; sys.exit(sys.version[[:3]] >= '2.4')" ; then
1644 AC_MSG_WARN([python version >= 2.4 required])
1650 dnl ###########################################################################
1651 dnl # Find the D-Bus services dir.
1653 dnl # This is a 3 step process that
1655 dnl # 1. checks if --with-dbus-services was set, if so use that.
1656 dnl # 2. checks if --prefix was given, if so use that.
1657 dnl # 3. fallbacks to installing into what should be the correct system
1660 dnl # This is still prone to error if one of the legacy directories exist
1661 dnl # although a newer dbus is installed. But I have tried to order the
1662 dnl # directory searching to keep this situation at a minimum.
1663 dnl ###########################################################################
1664 AC_ARG_WITH(dbus-services, [AS_HELP_STRING([--with-dbus-services=<dir>], [where the D-Bus services directory is located.])])
1666 DBUS_SERVICES_DIR=""
1668 if test x"$enable_dbus" = "xyes" ; then
1669 AC_MSG_CHECKING([location of the D-Bus services directory])
1670 if ! test -z "$with_dbus_services" ; then
1671 if ! test -d "$with_dbus_services" ; then
1672 AC_MSG_ERROR([$with_dbus_services does not exist, if this is the correct location please make sure that it exists.])
1675 DBUS_SERVICES_DIR="$with_dbus_services"
1677 if test x"$prefix" = x"NONE" ; then
1678 dnl # no prefix given, so we look for the correct dbus system paths.
1679 dnl # if a prefix is given, we use it.
1681 serviceprefixes="$prefix/share $prefix/lib /usr/share /usr/local/share"
1682 DBUS_SERVICES_DIR=""
1684 for d in $serviceprefixes ; do
1685 dir="$d/dbus-1/services"
1686 if test -d $dir ; then
1687 DBUS_SERVICES_DIR="$dir"
1692 if test -z $DBUS_SERVICES_DIR ; then
1693 AC_MSG_ERROR([D-Bus services directory was not found! Please use --with-dbus-services and specify its location.])
1696 DBUS_SERVICES_DIR="$datadir/dbus-1/services"
1699 AC_MSG_RESULT([$DBUS_SERVICES_DIR])
1700 AC_DEFINE(HAVE_DBUS, 1, [Define if we are using D-Bus.])
1702 AC_SUBST(DBUS_SERVICES_DIR)
1704 if test "x$enable_dbus" = "xyes" ; then
1705 echo "Building with D-Bus support"
1707 echo "Building without D-Bus support"
1710 AM_CONDITIONAL(ENABLE_DBUS, test "x$enable_dbus" = "xyes")
1712 dnl Check for Python headers (currently useful only for libgnt)
1713 dnl (Thanks to XChat)
1714 if test "x$enable_consoleui" = "xyes" -a ! -z "$PYTHON" -a x"$PYTHON" != x"no" ; then
1715 AC_MSG_CHECKING(for Python compile flags)
1716 if test -f ${PYTHON}-config; then
1717 PY_CFLAGS=`${PYTHON}-config --includes`
1718 PY_LIBS=`${PYTHON}-config --libs`
1719 AC_DEFINE(USE_PYTHON, [1], [Define if python headers are available.])
1722 AC_MSG_RESULT([Cannot find ${PYTHON}-config])
1730 dnl #######################################################################
1733 dnl # Thanks go to Evolution for the checks.
1734 dnl #######################################################################
1736 AC_ARG_WITH(system-ssl-certs, [AS_HELP_STRING([--with-system-ssl-certs=<dir>], [directory containing system-wide SSL CA certificates])], [ssl_certificates_dir=$withval])
1738 SSL_CERTIFICATES_DIR=""
1739 if ! test -z "$ssl_certificates_dir" ; then
1740 if test "x$ssl_certificates_dir" = "xyes" ; then
1741 AC_MSG_ERROR([--with-system-ssl-certs requires that a location is specified, eg. --with-system-ssl-certs=/etc/pki/tls/certs])
1743 if ! test -d "$ssl_certificates_dir" ; then
1744 if test "x$is_win32" = "xyes" ; then
1745 AC_MSG_WARN([$ssl_certificates_dir does not exist. \
1746 It may be OK when cross-compiling, but please make sure about it.])
1748 AC_MSG_ERROR([$ssl_certificates_dir does not exist, \
1749 if this is the correct location please make sure that it exists.])
1752 SSL_CERTIFICATES_DIR="$ssl_certificates_dir"
1754 AC_SUBST(SSL_CERTIFICATES_DIR)
1755 if test "x$SSL_CERTIFICATES_DIR" != "x" ; then
1756 AC_DEFINE_UNQUOTED([SSL_CERTIFICATES_DIR], ["$SSL_CERTIFICATES_DIR"],
1757 [Directory where SSL certificates can be found])
1759 AM_CONDITIONAL(INSTALL_SSL_CERTIFICATES, test "x$SSL_CERTIFICATES_DIR" = "x")
1761 if test "$ac_cv_cygwin" = yes ; then
1762 LDADD="$LDADD -static"
1763 AC_DEFINE(DEBUG, 1, [Define if debugging is enabled.])
1766 AC_SUBST(DEBUG_CPPFLAGS)
1767 AC_SUBST(DEBUG_CFLAGS)
1771 if test "x$enable_plugins" = "xyes" ; then
1772 AC_DEFINE(PURPLE_PLUGINS, 1, [Define if plugins are enabled.])
1773 AM_CONDITIONAL(PLUGINS, true)
1774 PLUGINS_DEFINE="#define PURPLE_PLUGINS 1"
1776 AM_CONDITIONAL(PLUGINS, false)
1777 PLUGINS_DEFINE="#undef PURPLE_PLUGINS"
1779 AC_SUBST(PLUGINS_DEFINE)
1781 dnl #######################################################################
1782 dnl # Check for Nettle (Crypto Library)
1783 dnl #######################################################################
1784 AC_ARG_ENABLE(nettle,
1785 [AC_HELP_STRING([--disable-nettle], [disable Nettle support])],
1786 enable_nettle="$enableval", enable_nettle="yes")
1788 if test "x$enable_nettle" = "xyes" ; then
1789 PKG_CHECK_MODULES(NETTLE, [nettle >= 3.0], [
1791 AC_SUBST(NETTLE_CFLAGS)
1792 AC_SUBST(NETTLE_LIBS)
1793 AC_DEFINE(HAVE_NETTLE, 1, [Define if we have Nettle.])
1798 if test "x$enable_nettle" != "xyes" -a "x$force_deps" = "xyes" ; then
1800 Nettle development headers not found
1801 Use --disable-nettle if you do not need it.
1806 AM_CONDITIONAL(ENABLE_NETTLE, test "x$enable_nettle" = "xyes")
1808 dnl #######################################################################
1809 dnl # Check for Cyrus-SASL (for xmpp/irc)
1810 dnl #######################################################################
1811 dnl AC_CHECK_SIZEOF(short)
1812 AC_CHECK_FUNCS(snprintf connect)
1814 AC_ARG_ENABLE(cyrus-sasl, AS_HELP_STRING([--enable-cyrus-sasl], [enable Cyrus SASL support for xmpp/irc]), enable_cyrus_sasl=$enableval, enable_cyrus_sasl=no)
1815 if test "x$enable_cyrus_sasl" = "xyes" ; then
1816 AC_CHECK_LIB(sasl2, sasl_client_init, [
1817 AM_CONDITIONAL(USE_CYRUS_SASL, true)
1818 AC_DEFINE(HAVE_CYRUS_SASL, [1], [Define to 1 if Cyrus SASL is present])
1821 AM_CONDITIONAL(USE_CYRUS_SASL, false)
1822 AC_MSG_ERROR([Cyrus SASL library not found])
1825 AM_CONDITIONAL(USE_CYRUS_SASL, false)
1828 dnl #######################################################################
1829 dnl # Check for Kerberos (for Zephyr)
1830 dnl #######################################################################
1831 AC_DEFINE(ZEPHYR_INT32, long, [Size of an int32.])
1832 AC_SUBST(KRB4_CFLAGS)
1833 AC_SUBST(KRB4_LDFLAGS)
1835 if test "$kerberos" != "no" ; then
1836 if test "$kerberos" != "yes" ; then
1837 KRB4_CFLAGS="-I${kerberos}/include"
1838 if test -d "$kerberos/include/kerberosIV" ; then
1839 KRB4_CFLAGS="$KRB4_CFLAGS -I${kerberos}/include/kerberosIV"
1841 KRB4_LDFLAGS="-L${kerberos}/lib"
1842 elif test -d /usr/local/include/kerberosIV ; then
1843 KRB4_CFLAGS="-I/usr/local/include/kerberosIV"
1844 elif test -d /usr/include/kerberosIV ; then
1845 KRB4_CFLAGS="-I/usr/include/kerberosIV"
1847 AC_DEFINE(ZEPHYR_USES_KERBEROS, 1, [Define if kerberos should be used in Zephyr.])
1849 orig_LDFLAGS="$LDFLAGS"
1850 LDFLAGS="$LDFLAGS $KRB4_LDFLAGS"
1851 AC_CHECK_LIB(krb4, krb_rd_req,
1852 [KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -lk5crypto -lcom_err"],
1853 [AC_CHECK_LIB(krb, krb_rd_req,
1854 [KRB4_LIBS="-lkrb -ldes"],
1855 [AC_MSG_ERROR([Kerberos 4 libraries not found])],
1857 -ldes425 -lkrb5 -lk5crypto -lcom_err)
1859 LIBS="$LIBS $KRB4_LIBS"
1860 AC_CHECK_FUNCS(krb_set_key krb_rd_req krb_get_lrealm)
1861 AC_CHECK_FUNCS(krb_get_err_text krb_log)
1863 LDFLAGS="$orig_LDFLAGS"
1866 dnl #######################################################################
1867 dnl # Check for external libzephyr
1868 dnl #######################################################################
1869 AC_SUBST(ZEPHYR_CFLAGS)
1870 AC_SUBST(ZEPHYR_LDFLAGS)
1871 AC_SUBST(ZEPHYR_LIBS)
1872 if test "$zephyr" != "no" ; then
1873 if test "$zephyr" != "yes" ; then
1874 ZEPHYR_CFLAGS="-I${zephyr}/include"
1875 ZEPHYR_LDFLAGS="-L${zephyr}/lib"
1876 elif test -d /usr/athena/include/zephyr ; then
1877 ZEPHYR_CFLAGS="-I/usr/athena/include"
1878 elif test -d /usr/include/zephyr ; then
1879 ZEPHYR_CFLAGS="-I/usr/include"
1880 elif test -d /usr/local/include/zephyr ; then
1881 ZEPHYR_CFLAGS="-I/usr/local/include"
1883 AC_DEFINE(LIBZEPHYR_EXT, 1 , [Define if external libzephyr should be used.])
1884 AM_CONDITIONAL(EXTERNAL_LIBZEPHYR, test "x$zephyr" != "xno")
1885 orig_LDFLAGS="$LDFLAGS"
1886 LDFLAGS="$LDFLAGS $ZEPHYR_LDFLAGS"
1887 AC_CHECK_LIB(zephyr, ZInitialize,
1888 [ZEPHYR_LIBS="-lzephyr"],
1889 [AC_MSG_ERROR([Zephyr libraries not found])],
1893 LDFLAGS="$orig_LDFLAGS"
1896 AC_MSG_CHECKING(for me pot o' gold)
1898 AC_CHECK_FUNCS(gethostid timegm)
1899 AC_CHECK_HEADERS(paths.h sgtty.h sys/cdefs.h)
1900 AC_CHECK_HEADERS(sys/file.h sys/filio.h sys/ioctl.h sys/msgbuf.h)
1901 AC_CHECK_HEADERS(sys/select.h sys/uio.h sys/wait.h)
1902 AC_CHECK_HEADERS(termios.h)
1904 # sys/sysctl.h on OpenBSD 4.2 requires sys/param.h
1905 # sys/sysctl.h on FreeBSD requires sys/types.h
1906 AC_CHECK_HEADERS(sys/param.h)
1907 AC_CHECK_HEADERS(sys/sysctl.h, [], [],
1909 #include <sys/types.h>
1911 # include <sys/param.h>
1915 AC_CHECK_HEADERS(sys/socket.h)
1916 AC_VAR_TIMEZONE_EXTERNALS
1918 AC_CHECK_MEMBER([struct tm.tm_gmtoff],
1919 [AC_DEFINE(HAVE_TM_GMTOFF, 1, [Define if you have a tm_gmtoff member in struct tm])],
1921 [[#include <time.h>]])
1923 dnl #######################################################################
1924 dnl # Disable pixmap installation
1925 dnl #######################################################################
1926 AC_ARG_ENABLE(pixmaps-install, AS_HELP_STRING([--disable-pixmaps-install], [disable installation of pixmap files - Pidgin still needs them!]), enable_pixmaps="$enableval", enable_pixmaps=yes)
1928 AM_CONDITIONAL(INSTALL_PIXMAPS, test "x$enable_pixmaps" = "xyes")
1930 dnl #######################################################################
1931 dnl # Tweak status tray icon installation directory
1932 dnl #######################################################################
1933 AC_ARG_ENABLE(trayicon-compat, AS_HELP_STRING([--enable-trayicon-compat], [install tray icons in location compatible with older releases of hicolor-icon-theme]), enable_traycompat="$enableval", enable_traycompat=no)
1935 AM_CONDITIONAL(ENABLE_TRAYCOMPAT, test "x$enable_traycompat" = "xyes")
1938 m4_ifdef([GTK_DOC_CHECK], [
1939 GTK_DOC_CHECK([1.16],[--flavour no-tmpl])
1941 if test "x$force_deps" = "xyes" -a "x$enable_gtk_doc" = "xyes"; then
1943 You have requested to generate documentation, but gtk-doc was not found.
1947 AM_CONDITIONAL([ENABLE_GTK_DOC], false)
1951 AC_ARG_ENABLE(debug, [AS_HELP_STRING([--enable-debug],
1952 [compile with debugging support])], , enable_debug=no)
1954 if test "x$enable_debug" = "xyes" ; then
1955 AC_DEFINE(DEBUG, 1, [Define if debugging is enabled.])
1958 AM_CONDITIONAL(PURPLE_AVAILABLE, true)
1960 AC_CONFIG_FILES([Makefile
1964 doc/reference/Makefile
1965 doc/reference/finch/Makefile
1966 doc/reference/finch/version.xml
1967 doc/reference/libpurple/Makefile
1968 doc/reference/libpurple/version.xml
1969 doc/reference/protocols/Makefile
1970 doc/reference/protocols/facebook/Makefile
1971 doc/reference/protocols/version.xml
1972 doc/reference/pidgin/Makefile
1973 doc/reference/pidgin/version.xml
1976 pidgin/data/im.pidgin.Pidgin.desktop.in
1977 pidgin/data/pidgin-3.pc
1978 pidgin/data/pidgin-3-uninstalled.pc
1979 pidgin/pixmaps/Makefile
1980 pidgin/pixmaps/emotes/default/24/Makefile
1981 pidgin/pixmaps/emotes/small/16/Makefile
1982 pidgin/plugins/Makefile
1983 pidgin/plugins/cap/Makefile
1984 pidgin/plugins/disco/Makefile
1985 pidgin/plugins/gestures/Makefile
1986 pidgin/plugins/gevolution/Makefile
1987 pidgin/plugins/musicmessaging/Makefile
1988 pidgin/plugins/ticker/Makefile
1989 pidgin/plugins/win32/transparency/Makefile
1990 pidgin/plugins/win32/winprefs/Makefile
1991 pidgin/themes/Makefile
1992 pidgin/win32/pidgin_dll_rc.rc
1993 pidgin/win32/pidgin_exe_rc.rc
1994 libpurple/data/purple-url-handler.desktop.in
1995 libpurple/data/purple-3.pc
1996 libpurple/data/purple-3-uninstalled.pc
1997 libpurple/example/Makefile
1998 libpurple/plugins/Makefile
1999 libpurple/plugins/keyrings/Makefile
2001 libpurple/protocols/Makefile
2002 libpurple/protocols/bonjour/Makefile
2003 libpurple/protocols/facebook/Makefile
2004 libpurple/protocols/gg/Makefile
2005 libpurple/protocols/irc/Makefile
2006 libpurple/protocols/jabber/Makefile
2007 libpurple/protocols/jabber/tests/Makefile
2008 libpurple/protocols/novell/Makefile
2009 libpurple/protocols/null/Makefile
2010 libpurple/protocols/oscar/Makefile
2011 libpurple/protocols/oscar/tests/Makefile
2012 libpurple/protocols/sametime/Makefile
2013 libpurple/protocols/silc/Makefile
2014 libpurple/protocols/simple/Makefile
2015 libpurple/protocols/zephyr/Makefile
2016 libpurple/tests/Makefile
2019 libpurple/win32/libpurplerc.rc
2020 share/sounds/Makefile
2021 share/ca-certs/Makefile
2023 finch/finch_winres.rc
2024 finch/libfinch_winres.rc
2026 finch/libgnt/Makefile
2028 finch/libgnt/libgnt_winres.rc
2029 finch/libgnt/wms/Makefile
2030 finch/plugins/Makefile
2036 echo $PACKAGE $VERSION
2039 echo Build GTK+ UI................. : $enable_gtkui
2040 echo Build console UI.............. : $enable_consoleui
2041 echo Build for X11................. : $with_x
2043 echo Enable Gestures............... : $enable_gestures
2044 echo Protocols to build dynamically : $DYNAMIC_PRPLS
2045 echo Protocols to link statically.. : $STATIC_PRPLS
2047 echo Build with GStreamer support.. : $enable_gst
2048 echo Build with D-Bus support...... : $enable_dbus
2049 echo Build with voice and video.... : $enable_vv
2050 if test "x$enable_dbus" = "xyes" ; then
2051 eval eval echo D-Bus services directory...... : $DBUS_SERVICES_DIR
2053 echo Build with GNU Libidn......... : $enable_idn
2054 if test "x$SSL_CERTIFICATES_DIR" != "x" ; then
2055 eval eval echo SSL CA certificates directory. : $SSL_CERTIFICATES_DIR
2057 echo Build with Nettle support..... : $enable_nettle
2058 echo Build with Cyrus SASL support. : $enable_cyrus_sasl
2059 echo Use kerberos 4 with zephyr.... : $kerberos
2060 echo Use external libzephyr........ : $zephyr
2061 echo Install pixmaps............... : $enable_pixmaps
2062 echo Old tray icon compatibility... : $enable_traycompat
2063 echo Install translations.......... : $enable_i18n
2064 echo Has you....................... : yes
2066 echo Build with Enchant support.... : $use_enchant
2067 echo Build with GCR widgets........ : $enable_gcr
2068 echo Build Unity integration plugin.: $enable_unity
2070 echo Build with GNOME Keyring...... : $enable_gnome_keyring
2071 echo Build with KWallet............ : $enable_kwallet
2072 echo Build with Secret Service..... : $enable_secret_service
2074 echo Build with plugin support..... : $enable_plugins
2075 echo Enable Introspection...........: $enable_introspection
2077 if test "x$is_win32" = "xyes" ; then
2079 echo Win32 directory structure..... : $with_win32_dirs
2083 echo Print debugging messages...... : $enable_debug
2084 echo Generate documentation........ : $enable_gtk_doc
2086 eval eval echo Pidgin will be installed in $bindir.
2087 if test "x$pidginpath" != "x" ; then
2088 echo Warning: You have an old copy of Pidgin at $pidginpath.
2090 if test "x$enable_pixmaps" = "xno" ; then
2092 echo Warning: You have disabled the installation of pixmap data, but Pidgin
2093 echo still requires installed pixmaps. Be sure you know what you are doing.
2095 if test "x$enable_i18n" = "xno" ; then
2097 echo Warning: You have disabled the building and installation of translation
2098 echo data. This will prevent building Pidgin desktop files.
2099 echo Be sure you know what you are doing.
2102 echo configure complete, now type \'make\'