1 # Process this file with autoconf to produce a configure script.
2 # require autoconf 2.54
6 # GTK_MICRO_VERSION += 1;
7 # GTK_INTERFACE_AGE += 1;
9 # if any functions have been added, set GTK_INTERFACE_AGE to 0.
10 # if backwards compatibility has been broken,
11 # set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
13 m4_define([gtk_major_version], [2])
14 m4_define([gtk_minor_version], [13])
15 m4_define([gtk_micro_version], [8])
16 m4_define([gtk_interface_age], [0])
17 m4_define([gtk_binary_age],
18 [m4_eval(100 * gtk_minor_version + gtk_micro_version)])
19 m4_define([gtk_version],
20 [gtk_major_version.gtk_minor_version.gtk_micro_version])
21 # This is the X.Y used in -lgtk-FOO-X.Y
22 m4_define([gtk_api_version], [2.0])
24 # Define a string for the earliest version that this release has
25 # backwards binary compatibility with for all interfaces a module
26 # might. Unless we add module-only API with lower stability
27 # guarantees, this should be unchanged until we break binary compat
30 #GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
31 m4_define([gtk_binary_version], [2.10.0])
33 # required versions of other packages
34 m4_define([glib_required_version], [2.17.6])
35 m4_define([pango_required_version], [1.20])
36 m4_define([atk_required_version], [1.13.0])
37 m4_define([cairo_required_version], [1.6])
40 AC_INIT([gtk+], [gtk_version],
41 [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
44 AC_CONFIG_SRCDIR([gdk/gdktypes.h])
46 # Save this value here, since automake will set cflags later
47 cflags_set=${CFLAGS+set}
49 AM_INIT_AUTOMAKE(no-define)
50 AM_CONFIG_HEADER(config.h)
53 # For each of the libraries we build, we define the following
55 # substituted variables:
57 # foo_PACKAGES: pkg-config packages this library requires
58 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
59 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
60 # foo_DEP_LIBS: All libraries this module requires
61 # foo_DEP_CFLAGS: All cflags this module requires
64 GTK_MAJOR_VERSION=gtk_major_version
65 GTK_MINOR_VERSION=gtk_minor_version
66 GTK_MICRO_VERSION=gtk_micro_version
67 GTK_INTERFACE_AGE=gtk_interface_age
68 GTK_BINARY_AGE=gtk_binary_age
69 GTK_VERSION=gtk_version
70 GTK_API_VERSION=gtk_api_version
71 GTK_BINARY_VERSION=gtk_binary_version
72 AC_SUBST(GTK_MAJOR_VERSION)
73 AC_SUBST(GTK_MINOR_VERSION)
74 AC_SUBST(GTK_MICRO_VERSION)
75 AC_SUBST(GTK_INTERFACE_AGE)
76 AC_SUBST(GTK_BINARY_AGE)
77 AC_SUBST(GTK_API_VERSION)
79 AC_SUBST(GTK_BINARY_VERSION)
82 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
83 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
84 #LT_REVISION=$GTK_INTERFACE_AGE
85 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
86 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
88 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
89 m4_define([lt_revision], [gtk_interface_age])
90 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
91 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
92 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
93 AC_SUBST(LT_VERSION_INFO)
94 AC_SUBST(LT_CURRENT_MINUS_AGE)
96 m4_define([gail_lt_current],[18])
97 m4_define([gail_lt_revision],[1])
98 m4_define([gail_lt_age],[0])
99 m4_define([gail_lt_version_info],[gail_lt_current:gail_lt_revision:gail_lt_age])
100 m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
101 AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
102 AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
105 # gdk-pixbuf gets versioned separately, and for now, using standard
106 # libtool versioning, not GTK+-style versioning
108 GDK_PIXBUF_MAJOR=gtk_major_version
109 GDK_PIXBUF_MINOR=gtk_minor_version
110 GDK_PIXBUF_MICRO=gtk_micro_version
111 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
112 AC_SUBST(GDK_PIXBUF_MAJOR)
113 AC_SUBST(GDK_PIXBUF_MINOR)
114 AC_SUBST(GDK_PIXBUF_MICRO)
115 AC_SUBST(GDK_PIXBUF_VERSION)
117 GETTEXT_PACKAGE=gtk20
118 AC_SUBST(GETTEXT_PACKAGE)
119 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
120 [The prefix for our gettext translation domains.])
125 AC_MSG_CHECKING([for native Win32])
126 LIB_EXE_MACHINE_FLAG=X86
134 LIB_EXE_MACHINE_FLAG=X64
142 AC_MSG_RESULT([$os_win32])
144 AC_SUBST(LIB_EXE_MACHINE_FLAG)
152 dnl Initialize libtool
157 dnl Check for a working C++ compiler, but do not bail out, if none is found.
158 dnl We use this for an automated test for C++ header correctness.
160 AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], gcc)
164 AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=)
165 AM_CONDITIONAL(HAVE_CXX, test "$CXX" != "")
167 gtk_save_cxxflags="$CXXFLAGS"
168 CXXFLAGS="$CXXFLAGS -x objective-c++"
169 AC_TRY_COMPILE([@interface Foo @end],,OBJC=yes,OBJC=no)
170 AM_CONDITIONAL(HAVE_OBJC, test "$OBJC" = "yes")
171 CXXFLAGS="$gtk_save_cxxflags"
174 if test "$os_win32" = "yes"; then
175 if test x$enable_static = xyes -o x$enable_static = x; then
176 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
179 if test x$enable_shared = xno; then
180 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
188 # Make sure we use 64-bit versions of various file stuff.
192 AC_PATH_PROG(NM, nm, nm)
194 dnl Initialize maintainer mode
197 AC_MSG_CHECKING([for some Win32 platform])
199 *-*-mingw*|*-*-cygwin*)
206 AC_MSG_RESULT([$platform_win32])
207 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
209 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
210 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
211 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
213 if test "$os_win32" = "yes"; then
214 AC_CHECK_TOOL(WINDRES, windres, no)
215 if test "$WINDRES" = no; then
216 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
218 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
220 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
222 m4_define([debug_default],
223 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
225 dnl declare --enable-* args and collect ac_help strings
227 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
228 [turn on debugging @<:@default=debug_default@:>@]),,
229 enable_debug=debug_default)
231 [AC_HELP_STRING([--enable-shm],
232 [support shared memory if available [default=yes]])],,
235 [AC_HELP_STRING([--enable-xkb],
236 [support XKB [default=maybe]])],,
237 [enable_xkb="maybe"])
238 AC_ARG_ENABLE(xinerama,
239 [AC_HELP_STRING([--enable-xinerama],
240 [support xinerama extension if available [default=yes]])],,
241 [enable_xinerama="yes"])
242 AC_ARG_ENABLE(rebuilds,
243 [AC_HELP_STRING([--disable-rebuilds],
244 [disable all source autogeneration rules])],,
245 [enable_rebuilds=yes])
246 AC_ARG_ENABLE(visibility,
247 [AC_HELP_STRING([--disable-visibility],
248 [don't use ELF visibility attributes])],,
249 [enable_visibility=yes])
252 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
254 if test "$platform_win32" = yes; then
260 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
261 gdktarget=$with_gdktarget)
265 x11|win32|quartz|directfb) ;;
266 *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
269 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
270 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
272 AC_SUBST(gdktargetlib)
273 AC_SUBST(gtktargetlib)
275 if test "x$enable_debug" = "xyes"; then
276 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
277 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG -DG_ERRORCHECK_MUTEXES"
279 if test "x$enable_debug" = "xno"; then
280 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
282 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
287 if test "x$enable_visibility" = "xno"; then
288 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
292 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}",
293 [Define if debugging is enabled])
296 # Build time sanity check...
299 # Checks for programs.
306 if test "x$GCC" = "xyes"; then
308 *[\ \ ]-Wall[\ \ ]*) ;;
309 *) CFLAGS="$CFLAGS -Wall" ;;
312 if test "x$enable_ansi" = "xyes"; then
314 *[\ \ ]-ansi[\ \ ]*) ;;
315 *) CFLAGS="$CFLAGS -ansi" ;;
319 *[\ \ ]-pedantic[\ \ ]*) ;;
320 *) CFLAGS="$CFLAGS -pedantic" ;;
326 CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
328 # Ensure MSVC-compatible struct packing convention is used when
329 # compiling for Win32 with gcc.
330 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
331 # gcc2 uses "-fnative-struct".
332 if test x"$os_win32" = xyes; then
333 if test x"$GCC" = xyes; then
335 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
336 if test -z "$ac_cv_prog_CC"; then
339 our_gcc="$ac_cv_prog_CC"
341 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
343 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
344 msnative_struct='-fnative-struct'
348 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
349 msnative_struct='-mms-bitfields'
353 if test x"$msnative_struct" = x ; then
354 AC_MSG_RESULT([no way])
355 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
357 CFLAGS="$CFLAGS $msnative_struct"
358 AC_MSG_RESULT([${msnative_struct}])
363 # Honor aclocal flags
364 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
366 ## Initial sanity check, done here so that users get told they
367 ## have the wrong dependencies as early in the process as possible.
368 ## Later on we actually use the cflags/libs from separate pkg-config
369 ## calls. Oh, also the later pkg-config calls don't include
370 ## the version requirements since those make the module lists
371 ## annoying to construct
372 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
373 [glib-2.0 >= glib_required_version dnl
374 atk >= atk_required_version dnl
375 pango >= pango_required_version dnl
376 cairo >= cairo_required_version])
378 if test "$os_win32" != yes; then
379 # libtool option to control which symbols are exported
380 # right now, symbols starting with _ are not exported
381 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
383 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
384 LIBTOOL_EXPORT_OPTIONS=
386 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
388 dnl ******************************************************
389 dnl * See whether to include shared library dependencies *
390 dnl ******************************************************
392 AC_ARG_ENABLE(explicit-deps,
393 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
394 [use explicit dependencies in .pc files [default=auto]])],,
395 [enable_explicit_deps=auto])
397 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
398 case $enable_explicit_deps in
401 deplibs_check_method=`(./libtool --config; echo 'eval echo $deplibs_check_method') | sh`
402 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
403 enable_explicit_deps=yes
405 enable_explicit_deps=no
410 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
413 AC_MSG_RESULT($enable_explicit_deps)
415 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
417 # define a MAINT-like variable REBUILD which is set if Perl
418 # and awk are found, so autogenerated sources can be rebuilt
420 AC_PATH_PROGS(PERL, perl5 perl)
422 # We would like indent, but don't require it.
423 AC_CHECK_PROG(INDENT, indent, indent)
426 if test "x$enable_rebuilds" = "xyes" && \
428 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
433 AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
434 AC_CHECK_FUNCS(localtime_r)
436 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
437 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
438 AC_TRY_LINK([#include <langinfo.h>], [
440 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
441 ], gtk_ok=yes, gtk_ok=no)
442 AC_MSG_RESULT($gtk_ok)
443 if test "$gtk_ok" = "yes"; then
444 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
445 [Define if _NL_TIME_FIRST_WEEKDAY is available])
448 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
449 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
450 AC_TRY_LINK([#include <langinfo.h>], [
452 c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
453 ], gtk_ok=yes, gtk_ok=no)
454 AC_MSG_RESULT($gtk_ok)
455 if test "$gtk_ok" = "yes"; then
456 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
457 [Define if _NL_MEASUREMENT_MEASUREMENT is available])
460 # _NL_PAPER_HEIGHT is an enum and not a define
461 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
462 AC_TRY_LINK([#include <langinfo.h>], [
464 c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
465 ], gtk_ok=yes, gtk_ok=no)
466 AC_MSG_RESULT($gtk_ok)
467 if test "$gtk_ok" = "yes"; then
468 AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
469 [Define if _NL_PAPER_HEIGHT is available])
472 # _NL_PAPER_WIDTH is an enum and not a define
473 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
474 AC_TRY_LINK([#include <langinfo.h>], [
476 c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
477 ], gtk_ok=yes, gtk_ok=no)
478 AC_MSG_RESULT($gtk_ok)
479 if test "$gtk_ok" = "yes"; then
480 AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
481 [Define if _NL_PAPER_WIDTH is available])
484 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
485 AC_MSG_CHECKING(for sigsetjmp)
486 AC_TRY_LINK([#include <setjmp.h>], [
489 ], gtk_ok=yes, gtk_ok=no)
490 AC_MSG_RESULT($gtk_ok)
491 if test "$gtk_ok" = "yes"; then
492 AC_DEFINE(HAVE_SIGSETJMP, 1,
493 [Define to 1 if sigsetjmp is available])
497 ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
499 LIBS="$LIBS $INTLLIBS"
500 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
501 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
504 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
506 dnl The DU4 header files don't provide library prototypes unless
507 dnl -std1 is given to the native cc.
508 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
512 AC_TRY_RUN([#include <math.h>
513 int main (void) { return (log(1) != log(1.)); }],
514 AC_MSG_RESULT(none needed),
515 gtk_save_CFLAGS="$CFLAGS"
516 CFLAGS="$CFLAGS -std1"
517 AC_TRY_RUN([#include <math.h>
518 int main (void) { return (log(1) != log(1.)); }],
519 AC_MSG_RESULT(-std1),
521 CFLAGS="$gtk_save_CFLAGS"
523 [No ANSI prototypes found in library. (-std1 didn't work.)]),
526 AC_MSG_RESULT(none needed)
530 AC_MSG_CHECKING(for the BeOS)
544 AC_MSG_CHECKING(for HP-UX)
546 hpux9* | hpux10* | hpux11*)
548 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
555 dnl NeXTStep cc seems to need this
556 AC_MSG_CHECKING([for extra flags for POSIX compliance])
557 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
558 AC_MSG_RESULT(none needed),
559 gtk_save_CFLAGS="$CFLAGS"
560 CFLAGS="$CFLAGS -posix"
561 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
562 AC_MSG_RESULT(-posix),
564 CFLAGS="$gtk_save_CFLAGS"
565 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
568 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
571 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
573 AM_PATH_GLIB_2_0(glib_required_version, :,
575 *** GLIB glib_required_version or better is required. The latest version of
576 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
577 gobject gmodule-no-export gthread)
579 # See if it's safe to turn G_DISABLE_DEPRECATED on.
580 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
581 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
582 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
583 CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
586 CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
590 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
593 LIBS="$LIBS $GLIB_LIBS"
594 AC_CHECK_FUNCS(bind_textdomain_codeset)
597 AC_CHECK_HEADERS(pwd.h,
598 AC_DEFINE(HAVE_PWD_H, 1,
599 [Define to 1 if pwd.h is available]))
600 AC_CHECK_HEADERS(sys/time.h,
601 AC_DEFINE(HAVE_SYS_TIME_H, 1,
602 [Define to 1 if time.h is available]))
603 AC_CHECK_HEADERS(unistd.h,
604 AC_DEFINE(HAVE_UNISTD_H, 1,
605 [Define to 1 if unistd.h is available]))
606 AC_CHECK_HEADERS(ftw.h,
607 AC_DEFINE(HAVE_FTW_H, 1,
608 [Define to 1 if ftw.h is available]))
610 AC_MSG_CHECKING([for GNU ftw extensions])
611 AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
613 #include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
614 if test $gtk_ok = yes; then
616 AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
621 saved_cflags="$CFLAGS"
622 saved_ldflags="$LDFLAGS"
625 # Checks for header files.
628 # Checks for typedefs, structures, and compiler characteristics.
631 # Checks for library functions.
635 AC_CHECK_FUNCS(mallinfo)
636 AC_CHECK_FUNCS(getresuid)
639 # Check if <sys/select.h> needs to be included for fd_set
640 AC_MSG_CHECKING([for fd_set])
641 AC_TRY_COMPILE([#include <sys/types.h>],
642 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
643 if test $gtk_ok = yes; then
644 AC_MSG_RESULT([yes, found in sys/types.h])
646 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
647 if test $gtk_ok = yes; then
648 AC_DEFINE(HAVE_SYS_SELECT_H, 1,
649 [Define to 1 if sys/select.h is available])
650 AC_MSG_RESULT([yes, found in sys/select.h])
652 AC_DEFINE(NO_FD_SET, 1,
653 [Define to 1 if fd_set is not available])
658 # `widechar' tests for gdki18n.h
659 AC_MSG_CHECKING(for wchar.h)
660 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
661 if test $gdk_wchar_h = yes; then
662 AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
664 AC_MSG_RESULT($gdk_wchar_h)
666 # Check for wctype.h (for iswalnum)
667 AC_MSG_CHECKING(for wctype.h)
668 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
669 if test $gdk_wctype_h = yes; then
670 AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
672 AC_MSG_RESULT($gdk_wctype_h)
674 # in Solaris 2.5, `iswalnum' is in -lw
676 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
679 LIBS="$LIBS $GDK_WLIBS"
680 # The following is necessary for Linux libc-5.4.38
681 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
682 AC_TRY_LINK([#include <stdlib.h>],[
683 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
684 # ifdef HAVE_WCTYPE_H
692 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
694 iswalnum((wchar_t) 0);
695 ], gdk_working_wctype=yes, gdk_working_wctype=no)
698 if test $gdk_working_wctype = no; then
699 AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
702 AC_MSG_RESULT($gdk_working_wctype)
705 # Check for uxtheme.h (for MS-Windows Engine)
706 AC_MSG_CHECKING(for uxtheme.h)
707 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
708 if test $gtk_uxtheme_h = yes; then
709 AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
711 AC_MSG_RESULT($gtk_uxtheme_h)
713 # Checks for gdkspawn
714 AC_CHECK_HEADERS(crt_externs.h)
715 AC_CHECK_FUNCS(_NSGetEnviron)
718 ##################################################
719 # Checks for gdk-pixbuf
720 ##################################################
722 dnl ********************************************************
723 dnl * See whether we need to load our modules as .la files *
724 dnl ********************************************************
728 *-aix*) use_la_modules=true
731 if $use_la_modules ; then
732 AC_DEFINE(USE_LA_MODULES, 1,
733 [Whether to load modules via .la files rather than directly])
737 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
739 AC_ARG_ENABLE(modules,
740 [AC_HELP_STRING([--disable-modules],
741 [disable dynamic module loading])])
745 if test x$enable_modules = xno; then
749 AC_MSG_CHECKING(whether dynamic modules work)
750 ## for loop is to strip newline
751 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
756 dnl Now we check to see if our libtool supports shared lib deps
757 dnl (in a rather ugly way even)
759 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
760 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
761 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
762 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
763 if test "x$pixbuf_deplibs_check" = "xnone" || \
764 test "x$pixbuf_deplibs_check" = "xunknown" || \
765 test "x$pixbuf_deplibs_check" = "x"; then
771 AC_DEFINE(USE_GMODULE, 1,
772 [Define to 1 if gmodule works and should be used])
779 dnl We allow people to disable image loaders explicitely, but if they don't we error
780 dnl out so that people don't accidentally build without them.
783 [AC_HELP_STRING([--without-libpng],
784 [disable PNG loader for gdk-pixbuf])])
786 [AC_HELP_STRING([--without-libjpeg],
787 [disable JPEG loader for gdk-pixbuf])])
789 [AC_HELP_STRING([--without-libtiff],
790 [disable TIFF loader for gdk-pixbuf])])
791 AC_ARG_WITH(libjasper,
792 [AC_HELP_STRING([--without-libjasper],
793 [disable JPEG2000 loader for gdk-pixbuf])])
795 AC_ARG_ENABLE(gdiplus,
796 [AC_HELP_STRING([--disable-gdiplus-loaders],
797 [disable GDI+ loaders for gdk-pixbuf])])
799 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
802 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
803 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
804 AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
805 [AC_CHECK_HEADER(tiffio.h,
806 TIFF='tiff'; LIBTIFF='-ltiff',
807 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
808 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
809 [AC_CHECK_HEADER(tiffio.h,
810 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
811 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
812 [AC_CHECK_LIB(tiff34, TIFFFlushData,
813 [AC_CHECK_HEADER(tiffio.h,
814 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
815 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
816 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
819 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
821 *** Checks for TIFF loader failed. You can build without it by passing
822 *** --without-libtiff to configure but some programs using GTK+ may
823 *** not work properly])
828 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
829 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
830 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
833 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
834 if test "$jpeg_ok" = yes; then
835 AC_MSG_CHECKING([for jpeglib.h])
841 #include <jpeglib.h>],
844 AC_MSG_RESULT($jpeg_ok)
845 if test "$jpeg_ok" = yes; then
847 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
848 AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
849 [Define to 1 is libjpeg supports progressive JPEG]),
850 AC_MSG_WARN(JPEG library does not support progressive saving.))
852 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
857 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
859 *** Checks for JPEG loader failed. You can build without it by passing
860 *** --without-libjpeg to configure but some programs using GTK+ may
861 *** not work properly])
866 if test x$with_libpng != xno && test -z "$LIBPNG"; then
867 AC_MSG_CHECKING(for libpng12)
868 if $PKG_CONFIG --exists libpng12 ; then
871 PNG_DEP_CFLAGS_PACKAGES=libpng12
872 LIBPNG=`$PKG_CONFIG --libs libpng12`
875 AC_CHECK_LIB(png, png_read_info,
876 [AC_CHECK_HEADER(png.h,
879 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
880 if test "$png_ok" = yes; then
881 AC_MSG_CHECKING([for png_structp in png.h])
882 AC_TRY_COMPILE([#include <png.h>],
883 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
886 AC_MSG_RESULT($png_ok)
887 if test "$png_ok" = yes; then
888 PNG='png'; LIBPNG='-lpng -lz'
890 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
893 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
898 if test x$with_libpng != xno && test -z "$LIBPNG"; then
900 *** Checks for PNG loader failed. You can build without it by passing
901 *** --without-libpng to configure but many programs using GTK+ will
902 *** not work properly. The PNG loader is also needed if you are compiling
906 dnl Test for libjasper
907 if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
908 AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
911 if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
913 *** Checks for JPEG2000 loader failed. You can build without it by passing
914 *** --without-libjasper to configure])
922 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
925 # Allow building some or all gdk-pixbuf loaders included
927 AC_MSG_CHECKING(pixbuf loaders to build)
929 dnl due to an autoconf bug, commas in the first arg to
930 dnl AC_HELP_STRING cause problems.
931 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
932 dnl [build the specified loaders into gdk-pixbuf])
933 AC_ARG_WITH(included_loaders,
934 [ --with-included-loaders=LOADER1,LOADER2,...
935 build the specified loaders into gdk-pixbuf])
940 ## if the option was specified, leave it; otherwise disable included loaders
941 if test x$with_included_loaders = xno; then
942 with_included_loaders=yes
946 # Use the traditional png loader instead of the GDI+ one on Windows,
947 # because some important apps like GIMP need to read and write
948 # arbitrary tEXt chunks which doesn't seem to be possible through GDI+
950 all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm"
951 if test x$with_libjasper != xno; then
952 all_loaders="$all_loaders,jasper"
954 if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
955 # Skip PNG, see comment above
956 gdip_formats="bmp emf gif ico jpeg tiff wmf"
957 for f in $gdip_formats; do
958 all_loaders="$all_loaders,gdip-$f"
961 all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
964 # If no loaders specified, include all
965 if test "x$with_included_loaders" = xyes ; then
966 included_loaders="$all_loaders"
968 included_loaders="$with_included_loaders"
971 AC_MSG_RESULT($included_loaders)
974 INCLUDED_LOADER_DEFINE=
976 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
977 for loader in $included_loaders; do
978 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
981 AC_MSG_ERROR([the specified loader $loader does not exist])
984 loader_underscores=`echo $loader | sed -e 's/-/_/g'`
985 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
987 # Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
990 *) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
992 eval INCLUDE_$loader_underscores=yes
995 # Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
996 # (except gdip-png, which isn't built at all)
997 if test x"$INCLUDE_gdip_ico" = xyes; then
998 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
1002 AC_SUBST(INCLUDED_LOADER_OBJ)
1003 AC_SUBST(INCLUDED_LOADER_DEFINE)
1005 AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
1006 AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
1007 AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
1008 AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
1009 AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
1010 AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
1011 AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
1012 AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
1013 AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
1014 AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
1015 AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
1016 AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
1017 AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
1018 AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
1019 AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
1020 AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
1021 # As all GDI+ loaders are either built-in or not, arbitrarily just
1022 # check one of the variables here
1023 AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
1025 if test x$gio_can_sniff = x; then
1026 AC_MSG_CHECKING([if gio can sniff png])
1027 gtk_save_LIBS="$LIBS"
1028 gtk_save_CFLAGS="$CFLAGS"
1029 LIBS="`$PKG_CONFIG --libs gio-2.0`"
1030 CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
1031 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1032 #include <gio/gio.h>
1033 static const gsize data_size = 159;
1034 static const guint8 data[] =
1036 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
1037 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
1038 0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00,
1039 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00,
1040 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00,
1041 0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74,
1042 0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8,
1043 0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f,
1044 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
1045 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57,
1046 0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08,
1047 0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc,
1048 0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
1052 main (int argc, char **argv)
1056 content_type = g_content_type_guess (NULL, data, data_size, NULL);
1057 image_png = g_content_type_from_mime_type ("image/png");
1058 return !!strcmp (content_type, image_png);
1061 AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
1063 AC_MSG_RESULT($gio_can_sniff)
1064 LIBS="$gtk_save_LIBS"
1065 CFLAGS="$gtk_save_CFLAGS"
1069 # Allow building some or all immodules included
1071 AC_MSG_CHECKING(immodules to build)
1073 dnl due to an autoconf bug, commas in the first arg to
1074 dnl AC_HELP_STRING cause problems.
1075 dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
1076 dnl [build the specified input method modules into gtk])
1077 AC_ARG_WITH(included_immodules,
1078 [ --with-included-immodules=MODULE1,MODULE2,...
1079 build the specified input methods into gtk])
1084 ## if the option was specified, leave it; otherwise disable included immodules
1085 if test x$with_included_immodules = xno; then
1086 with_included_immodules=yes
1090 all_immodules="am-et,cedilla,cyrillic-translit"
1091 if test "$gdktarget" = "win32"; then
1092 all_immodules="${all_immodules},ime"
1094 all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
1095 if test "$gdktarget" = "x11"; then
1096 all_immodules="${all_immodules},xim"
1099 included_immodules=""
1100 # If the switch specified without listing any specific ones, include all
1101 if test "x$with_included_immodules" = xyes ; then
1102 included_immodules="$all_immodules"
1104 included_immodules="$with_included_immodules"
1107 AC_MSG_RESULT($included_immodules)
1108 AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
1110 INCLUDED_IMMODULE_OBJ=
1111 INCLUDED_IMMODULE_DEFINE=
1113 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1114 for immodule in $included_immodules; do
1115 immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
1116 if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
1119 AC_MSG_ERROR([the specified input method $immodule does not exist])
1122 INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
1123 INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
1124 eval INCLUDE_$immodule_underscores=yes
1127 AC_SUBST(INCLUDED_IMMODULE_OBJ)
1128 AC_SUBST(INCLUDED_IMMODULE_DEFINE)
1130 AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
1131 AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
1132 AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
1133 AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
1134 AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
1135 AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
1136 AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
1137 AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
1138 AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
1139 AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
1140 AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
1141 AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
1147 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
1148 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
1149 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
1150 AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
1154 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
1155 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
1157 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
1158 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
1160 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
1161 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
1164 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
1167 # Checks to see whether we should include mediaLib
1170 AC_CHECK_HEADER(sys/systeminfo.h,
1171 AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1,
1172 [Define to 1 if sys/systeminfo.h is available]))
1173 AC_CHECK_HEADER(sys/sysinfo.h,
1174 AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
1175 [Define to 1 if sys/sysinfo.h is available]))
1177 AC_MSG_CHECKING(for mediaLib 2.3)
1179 # Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
1181 AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
1182 if test $use_mlib = yes; then
1183 AC_DEFINE(USE_MEDIALIB, 1,
1184 [Define to 1 if medialib is available and should be used])
1187 AC_MSG_CHECKING(for mediaLib 2.5)
1188 # Check for a mediaLib 2.5 function since that is what is needed for
1189 # gdk_rgb_convert integration.
1190 AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
1191 if test $use_mlib25 = yes; then
1192 AC_DEFINE(USE_MEDIALIB25, 1,
1193 [Define to 1 if medialib 2.5 is available])
1196 AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
1197 AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
1199 # Checks to see if we should compile in MMX support (there will be
1200 # a runtime test when the code is actually run to see if it should
1201 # be used - this just checks if we can compile it.)
1203 # This code is partially taken from Mesa
1205 AC_MSG_CHECKING(for x86 platform)
1207 i386|i486|i586|i686|i786|k6|k7)
1213 AC_MSG_RESULT($use_x86_asm)
1216 if test $use_x86_asm = yes; then
1220 AC_MSG_CHECKING(compiler support for MMX)
1221 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1222 if AC_TRY_EVAL(ac_compile); then
1229 if test $use_mmx_asm = yes; then
1230 AC_DEFINE(USE_MMX, 1,
1231 [Define to 1 if XXM is available and should be used])
1238 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1241 if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
1245 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1247 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1249 if test $cross_compiling = yes; then
1250 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1251 AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
1252 if test x$GTK_UPDATE_ICON_CACHE = xno; then
1257 if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
1258 test "x$REBUILD_PNGS" = "x#" ; then
1260 *** gtkbuiltincache.h is not in the tree, and cannot be built
1261 *** because you don't have libpng, or (when cross-compiling) you
1262 *** don't have a prebuilt gtk-update-icon-cache on the build system.])
1265 AC_SUBST(REBUILD_PNGS)
1267 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
1268 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
1269 GDK_PIXBUF_EXTRA_CFLAGS=
1270 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1271 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1273 ########################################
1274 # Windowing system checks
1275 ########################################
1277 GDK_PIXBUF_XLIB_PACKAGES=
1278 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1279 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1281 X_PACKAGES=fontconfig
1282 GDK_EXTRA_LIBS="$GDK_WLIBS"
1285 # GTK+ uses some X calls, so needs to link against X directly
1286 GTK_DEP_PACKAGES_FOR_X=
1289 if test "x$gdktarget" = "xx11"; then
1291 # We use fontconfig very peripherally when decoding the default
1294 if $PKG_CONFIG --exists fontconfig; then : ; else
1296 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1300 # Check for basic X packages; we use pkg-config if available
1302 if $PKG_CONFIG --exists x11 xext xrender; then
1304 X_PACKAGES="$X_PACKAGES x11 xext xrender"
1305 x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1306 X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1308 # Strip out any .la files that pkg-config might give us (this happens
1309 # with -uninstalled.pc files)
1311 for I in $x_libs ; do
1314 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1318 GDK_PIXBUF_XLIB_PACKAGES="x11"
1319 GTK_PACKAGES_FOR_X="x11"
1321 have_base_x_pc=false
1323 if test x$no_x = xyes ; then
1324 AC_MSG_ERROR([X development libraries not found])
1327 x_cflags="$X_CFLAGS"
1328 x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1330 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1331 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1332 GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1335 # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1338 gtk_save_cppflags="$CPPFLAGS"
1339 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1342 LIBS="$x_libs_for_checks $LIBS"
1344 # Sanity check for the X11 and Xext libraries. While everything we need from
1345 # Xext is optional, the chances a system has *none* of these things is so
1346 # small that we just unconditionally require it.
1347 AC_CHECK_FUNC(XOpenDisplay, :,
1348 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1349 AC_CHECK_FUNC(XextFindDisplay, :,
1350 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1351 AC_CHECK_FUNC(XRenderQueryExtension, :,
1352 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1356 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1357 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1359 [AC_MSG_RESULT([no])],
1360 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1361 #include <X11/Xlibint.h>],
1363 [AC_MSG_RESULT([yes])
1364 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1365 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1366 [AC_MSG_RESULT([unknown])
1367 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1369 # Check for XConvertCase, XInternAtoms (X11R6 specific)
1371 AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1373 # Generic X11R6 check needed for XIM support; we could
1374 # probably use this to replace the above, but we'll
1375 # leave the separate checks for XConvertCase and XInternAtoms
1379 AC_CHECK_FUNC(XAddConnectionWatch,
1382 if $have_x11r6; then
1383 AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1385 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1387 # Check for XKB support.
1389 if test "x$enable_xkb" = "xyes"; then
1390 AC_MSG_WARN(XKB support explicitly enabled)
1391 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1392 elif test "x$enable_xkb" = "xmaybe"; then
1393 AC_CHECK_FUNC(XkbQueryExtension,
1394 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1396 AC_MSG_WARN(XKB support explicitly disabled)
1399 # Check for shaped window extension
1401 AC_CHECK_FUNC(XShapeCombineMask,
1402 AC_DEFINE(HAVE_SHAPE_EXT, 1,
1403 [Define to 1 if the XShape extension is available]))
1406 gtk_save_CFLAGS="$CFLAGS"
1407 CFLAGS="$CFLAGS $x_cflags"
1409 AC_CHECK_FUNC(XSyncQueryExtension,
1410 [AC_CHECK_HEADER(X11/extensions/sync.h,
1411 AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1412 :, [#include <X11/Xlib.h>])])
1414 CFLAGS="$gtk_save_CFLAGS"
1418 if test "x$enable_shm" = "xyes"; then
1419 # Check for the XShm extension, normally in Xext
1420 AC_CHECK_FUNC(XShmAttach,
1422 # On AIX, it is in XextSam instead
1423 [AC_CHECK_LIB(XextSam, XShmAttach,
1424 [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1427 if test "x$enable_shm" = "xyes"; then
1428 # Check for shared memory
1429 AC_CHECK_HEADER(sys/ipc.h,
1430 AC_DEFINE(HAVE_IPC_H, 1,
1431 [Define to 1 if ipc.h is available]),
1433 AC_CHECK_HEADER(sys/shm.h,
1434 AC_DEFINE(HAVE_SHM_H, 1,
1435 [Define to 1 if shm.h is available]),
1438 # Check for the X shared memory extension header file
1440 AC_MSG_CHECKING(X11/extensions/XShm.h)
1441 if test "x$no_xext_lib" = "xyes"; then
1444 gtk_save_CFLAGS="$CFLAGS"
1445 CFLAGS="$CFLAGS $x_cflags"
1448 #include <sys/types.h>
1449 #include <sys/ipc.h>
1450 #include <sys/shm.h>
1451 #include <X11/Xlib.h>
1452 #include <X11/Xutil.h>
1453 #include <X11/extensions/XShm.h>
1454 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1455 CFLAGS="$gtk_save_CFLAGS"
1457 AC_MSG_RESULT($have_xshm)
1458 if test $have_xshm = yes ; then
1459 AC_DEFINE(HAVE_XSHM_H, 1,
1460 [Define to 1 if xshm.h is available])
1464 if test "x$enable_xinerama" = "xyes"; then
1465 # Check for Xinerama extension (Solaris impl or Xfree impl)
1466 gtk_save_cppflags="$CPPFLAGS"
1467 CPPFLAGS="$CPPFLAGS $x_cflags"
1472 AC_MSG_CHECKING(for Xinerama support on Solaris)
1474 have_solaris_xinerama=false
1475 AC_CHECK_FUNC(XineramaGetInfo,
1476 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1477 [have_solaris_xinerama=true], :,
1478 [#include <X11/Xlib.h>])])
1480 if $have_solaris_xinerama ; then
1481 AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1482 [Define to 1 if solaris xinerama is available])
1483 AC_DEFINE(HAVE_XINERAMA, 1,
1484 [Define to 1 if xinerama is available])
1492 AC_MSG_CHECKING(for Xinerama support on XFree86)
1494 have_xfree_xinerama=false
1495 if $PKG_CONFIG --exists xinerama ; then
1496 have_xfree_xinerama=true
1497 X_PACKAGES="$X_PACKAGES xinerama"
1499 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1500 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1501 [GTK_ADD_LIB(x_extra_libs,Xinerama)
1502 have_xfree_xinerama=true], :,
1503 [#include <X11/Xlib.h>])])
1506 if $have_xfree_xinerama ; then
1507 AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1508 [Define to 1 if XFree Xinerama is available])
1509 AC_DEFINE(HAVE_XINERAMA, 1,
1510 [Define to 1 is Xinerama is available])
1519 # set up things for XInput
1521 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1522 AC_DEFINE(XINPUT_XFREE, 1,
1523 [Define to 1 if XFree XInput should be used])
1525 if $PKG_CONFIG --exists xi ; then
1526 X_PACKAGES="$X_PACKAGES xi"
1528 GTK_ADD_LIB(x_extra_libs, Xi)
1531 AC_DEFINE(XINPUT_NONE, 1,
1532 [Define to 1 if no XInput should be used])
1535 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1537 # Check for the RANDR extension
1538 if $PKG_CONFIG --exists "xrandr >= 1.2" ; then
1539 AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1541 X_PACKAGES="$X_PACKAGES xrandr"
1544 # Checks for Xcursor library
1546 if $PKG_CONFIG --exists xcursor ; then
1547 AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1549 X_PACKAGES="$X_PACKAGES xcursor"
1552 # Checks for XFixes extension
1554 if $PKG_CONFIG --exists xfixes ; then
1555 AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1557 X_PACKAGES="$X_PACKAGES xfixes"
1558 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1561 # Checks for Xcomposite extension
1563 if $PKG_CONFIG --exists xcomposite ; then
1564 AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1566 X_PACKAGES="$X_PACKAGES xcomposite"
1567 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1570 # Checks for Xdamage extension
1572 if $PKG_CONFIG --exists xdamage ; then
1573 AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1575 X_PACKAGES="$X_PACKAGES xdamage"
1576 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1579 if $have_base_x_pc ; then
1580 GDK_EXTRA_LIBS="$x_extra_libs"
1582 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1585 CPPFLAGS="$gtk_save_cppflags"
1586 LIBS="$gtk_save_libs"
1588 AM_CONDITIONAL(USE_X11, true)
1590 AM_CONDITIONAL(XINPUT_XFREE, false)
1591 AM_CONDITIONAL(USE_X11, false)
1592 AM_CONDITIONAL(HAVE_X11R6, false)
1595 if test "x$gdktarget" = "xwin32"; then
1596 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1597 AM_CONDITIONAL(USE_WIN32, true)
1599 AM_CONDITIONAL(USE_WIN32, false)
1602 if test "x$gdktarget" = "xquartz"; then
1603 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1604 AM_CONDITIONAL(USE_QUARTZ, true)
1606 AM_CONDITIONAL(USE_QUARTZ, false)
1609 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1610 GDK_PIXBUF_XLIB_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_PIXBUF_XLIB_EXTRA_CFLAGS"
1612 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1613 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1614 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1615 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1616 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1618 if test "x$gdktarget" = "xdirectfb"; then
1619 DIRECTFB_REQUIRED_VERSION=0.9.24
1620 AC_MSG_CHECKING(for DirectFB)
1622 if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
1623 AC_MSG_RESULT(found)
1624 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags cairo-directfb` $GDK_EXTRA_CFLAGS"
1625 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs cairo-directfb` $GDK_EXTRA_LIBS"
1628 *** DirectFB $DIRECTFB_REQUIRED_VERSION or newer and the cairo backend
1629 *** are required. The latest version of DirectFB is always available
1630 *** from http://www.directfb.org/.
1634 AM_CONDITIONAL(USE_DIRECTFB, true)
1636 AM_CONDITIONAL(USE_DIRECTFB, false)
1640 # Check for Pango flags
1642 if test "x$gdktarget" = "xwin32"; then
1643 PANGO_PACKAGES="pangowin32 pangocairo"
1645 PANGO_PACKAGES="pango pangocairo"
1648 AC_MSG_CHECKING(Pango flags)
1649 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1650 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1651 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1653 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1656 *** Pango not found. Pango built with Cairo support is required
1657 *** to build GTK+. See http://www.pango.org for Pango information.
1661 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1663 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1666 gtk_save_LIBS="$LIBS"
1667 LIBS="$PANGO_LIBS $LIBS"
1668 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1669 *** Can't link to Pango. Pango is required to build
1670 *** GTK+. For more information see http://www.pango.org]))
1671 LIBS="$gtk_save_LIBS"
1674 CFLAGS="$saved_cflags"
1675 LDFLAGS="$saved_ldflags"
1677 GDK_PACKAGES="$PANGO_PACKAGES gio-2.0"
1678 if test "x$gdktarget" = "xx11"; then
1679 GDK_PACKAGES="$GDK_PACKAGES $X_PACKAGES"
1681 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1682 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1685 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1686 # into the pkg-config files
1688 if test $enable_explicit_deps != yes ; then
1689 GDK_PACKAGES="$PANGO_PACKAGES"
1693 AC_SUBST(GDK_PACKAGES)
1694 AC_SUBST(GDK_EXTRA_LIBS)
1695 AC_SUBST(GDK_EXTRA_CFLAGS)
1696 AC_SUBST(GDK_DEP_LIBS)
1697 AC_SUBST(GDK_DEP_CFLAGS)
1700 ########################################
1701 # Check for Accessibility Toolkit flags
1702 ########################################
1705 AC_MSG_CHECKING(ATK flags)
1706 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1707 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1708 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1710 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1713 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1718 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1721 gtk_save_LIBS="$LIBS"
1722 LIBS="$ATK_LIBS $LIBS"
1723 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1724 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1725 *** to build GTK+]))
1726 LIBS="$gtk_save_LIBS"
1729 GTK_PACKAGES="atk cairo gio-2.0"
1730 if test "x$gdktarget" = "xx11"; then
1731 GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1735 GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1736 GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS"
1738 if test x"$os_win32" = xyes; then
1739 GTK_EXTRA_CFLAGS="$msnative_struct"
1742 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1743 ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1744 PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1745 CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1747 if test $enable_explicit_deps != yes ; then
1748 GDK_PIXBUF_EXTRA_LIBS=
1751 AC_SUBST(GDK_PIXBUF_PACKAGES)
1752 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1753 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1754 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1755 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1757 AC_SUBST(GTK_PACKAGES)
1758 AC_SUBST(GTK_EXTRA_LIBS)
1759 AC_SUBST(GTK_EXTRA_CFLAGS)
1760 AC_SUBST(GTK_DEP_LIBS)
1761 AC_SUBST(GTK_DEP_CFLAGS)
1763 AC_SUBST(GLIB_PREFIX)
1764 AC_SUBST(ATK_PREFIX)
1765 AC_SUBST(PANGO_PREFIX)
1766 AC_SUBST(CAIRO_PREFIX)
1768 AC_SUBST(GTK_DEBUG_FLAGS)
1769 AC_SUBST(GTK_XIM_FLAGS)
1771 ########################
1772 # Checks needed for gail
1773 ########################
1776 dnl Checks for inet libraries:
1777 AC_SEARCH_LIBS(gethostent, nsl)
1778 AC_SEARCH_LIBS(setsockopt, socket)
1779 AC_SEARCH_LIBS(connect, inet)
1781 dnl check for the sockaddr_un.sun_len member
1782 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1783 [struct_sockaddr_un_sun_len=true],
1784 [struct_sockaddr_un_suin_len=false],
1785 [#include <sys/types.h>
1786 #include <sys/un.h>]
1788 case $struct_sockaddr_un_sun_len in
1790 AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1791 [Have the sockaddr_un.sun_len member])
1797 GAIL_INET_LIBS="$LIBS"
1798 AC_SUBST([GAIL_INET_LIBS])
1802 ################################################################
1803 # Printing system checks
1804 ################################################################
1807 [AC_HELP_STRING([--disable-cups]
1808 [disable cups print backend])],,
1811 if test "x$enable_cups" = "xauto"
1813 AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1814 if test "x$CUPS_CONFIG" != "xno"; then
1815 CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1816 CUPS_LIBS=`$CUPS_CONFIG --libs`
1818 CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1819 CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1820 CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1822 if test $CUPS_API_MAJOR -gt 1 -o \
1823 $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1824 AC_DEFINE(HAVE_CUPS_API_1_2, 1,
1825 [Define to 1 if CUPS 1.2 API is available])
1828 AC_SUBST(CUPS_API_MAJOR)
1829 AC_SUBST(CUPS_API_MINOR)
1830 AC_SUBST(CUPS_CFLAGS)
1833 AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1835 AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno")
1837 gtk_save_cflags="$CFLAGS"
1838 CFLAGS="$CUPS_CFLAGS"
1839 AC_TRY_COMPILE([#include <cups/http.h>],
1840 [http_t http; char *s = http.authstring;],
1841 [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1842 [Define if cups http_t authstring field is accessible])],)
1843 CFLAGS="$gtk_save_cflags"
1845 AC_SUBST(HAVE_HTTP_AUTHSTRING)
1847 gtk_save_libs="$LIBS"
1849 AC_CHECK_FUNCS(httpGetAuthString)
1850 LIBS="$gtk_save_libs"
1853 AM_CONDITIONAL(HAVE_CUPS, false)
1856 gtk_save_cppflags="$CPPFLAGS"
1857 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS"
1859 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1860 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1861 *** backend enabled.]))
1863 if test "$os_win32" != "yes"; then
1864 AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1865 *** Can't find cairo-ps.h. You must build Cairo with the
1866 *** postscript backend enabled.]))
1869 CPPFLAGS="$gtk_save_cppflags"
1872 AC_ARG_ENABLE(test-print-backend,
1873 [AC_HELP_STRING([--enable-test-print-backend],
1874 [build test print backend])],,
1875 [enable_test_print_backend=no])
1876 AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1879 ################################################################
1880 # Strip -export-dynamic from the link lines of various libraries
1881 ################################################################
1884 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1885 # but this flag is only meaningful for executables. For libraries
1886 # the effect is undefined; what it causes on Linux is that the
1887 # export list from -export-symbols-regex is ignored and everything
1890 # We are using gmodule-no-export now, but I'm leaving the stripping
1891 # code in place for now, since pango and atk still require gmodule.
1893 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1894 if test -n "$export_dynamic"; then
1895 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1896 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1897 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1898 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1902 ##################################################
1903 # Checks for gtk-doc and docbook-tools
1904 ##################################################
1906 GTK_DOC_CHECK([1.8])
1908 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1909 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1912 [AC_HELP_STRING([--enable-man],
1913 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1916 if test "${enable_man}" != no; then
1918 dnl Check for xsltproc
1920 AC_PATH_PROG([XSLTPROC], [xsltproc])
1921 if test -z "$XSLTPROC"; then
1925 dnl check for DocBook DTD and stylesheets in the local catalog.
1926 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1927 [DocBook XML DTD V4.1.2],,enable_man=no)
1928 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1929 [DocBook XSL Stylesheets],,enable_man=no)
1932 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1935 ##################################################
1937 ##################################################
1939 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1940 outfile=gdkconfig.h-tmp
1941 cat > $outfile <<\_______EOF
1944 * This is a generated file. Please modify `configure.in'
1952 #endif /* __cplusplus */
1955 /* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
1956 # ifdef GSEAL_ENABLE
1957 # define GSEAL(ident) _g_sealed__ ## ident
1959 # define GSEAL(ident) ident
1965 cat >>$outfile <<_______EOF
1970 cat >>$outfile <<_______EOF
1974 #endif /* __cplusplus */
1976 #endif /* GDKCONFIG_H */
1980 if cmp -s $outfile gdk/gdkconfig.h; then
1981 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1984 mv $outfile gdk/gdkconfig.h
1987 if test "x$gdktarget" = "xx11" ; then
1989 #define GDK_WINDOWING_X11'
1990 elif test "x$gdktarget" = "xwin32" ; then
1992 #define GDK_NATIVE_WINDOW_POINTER
1994 #define GDK_WINDOWING_WIN32'
1995 elif test "x$gdktarget" = "xquartz" ; then
1997 #define GDK_WINDOWING_QUARTZ'
1998 elif test "x$gdktarget" = "xdirectfb" ; then
2000 #define GDK_WINDOWING_DIRECTFB'
2003 if test x$gdk_wchar_h = xyes; then
2005 #define GDK_HAVE_WCHAR_H 1'
2007 if test x$gdk_wctype_h = xyes; then
2009 #define GDK_HAVE_WCTYPE_H 1"
2011 if test x$gdk_working_wctype = xno; then
2013 #define GDK_HAVE_BROKEN_WCTYPE 1"
2026 gtk+-unix-print-2.0.pc
2028 gdk-pixbuf-2.0-uninstalled.pc
2029 gdk-2.0-uninstalled.pc
2030 gtk+-2.0-uninstalled.pc
2034 po-properties/Makefile.in
2036 demos/gtk-demo/Makefile
2037 demos/gtk-demo/geninclude.pl
2040 docs/reference/Makefile
2041 docs/reference/gdk-pixbuf/Makefile
2042 docs/reference/gdk-pixbuf/version.xml
2043 docs/reference/gdk/Makefile
2044 docs/reference/gdk/version.xml
2045 docs/reference/gtk/Makefile
2046 docs/reference/gtk/version.xml
2047 docs/reference/libgail-util/Makefile
2050 docs/tutorial/Makefile
2052 gdk-pixbuf/gdk_pixbuf.rc
2053 gdk-pixbuf/gdk-pixbuf-features.h
2054 gdk-pixbuf/pixops/Makefile
2058 gdk/win32/rc/Makefile
2061 gdk/directfb/Makefile
2067 gtk/theme-bits/Makefile
2070 modules/other/Makefile
2071 modules/other/gail/Makefile
2072 modules/other/gail/libgail-util/Makefile
2073 modules/other/gail/tests/Makefile
2074 modules/engines/Makefile
2075 modules/engines/pixbuf/Makefile
2076 modules/engines/ms-windows/Makefile
2077 modules/engines/ms-windows/Theme/Makefile
2078 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
2079 modules/input/Makefile
2080 modules/printbackends/Makefile
2081 modules/printbackends/cups/Makefile
2082 modules/printbackends/lpr/Makefile
2083 modules/printbackends/file/Makefile
2084 modules/printbackends/test/Makefile
2087 contrib/gdk-pixbuf-xlib/Makefile
2088 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
2093 echo "configuration: