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], [10])
15 m4_define([gtk_micro_version], [1])
16 m4_define([gtk_version],
17 [gtk_major_version.gtk_minor_version.gtk_micro_version])
18 m4_define([gtk_interface_age], [1])
19 m4_define([gtk_binary_age],
20 [m4_eval(100 * 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.12.0])
35 m4_define([pango_required_version], [1.12.0])
36 m4_define([atk_required_version], [1.9.0])
37 m4_define([cairo_required_version], [1.2.0])
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)
98 # gdk-pixbuf gets versioned separately, and for now, using standard
99 # libtool versioning, not GTK+-style versioning
101 GDK_PIXBUF_MAJOR=gtk_major_version
102 GDK_PIXBUF_MINOR=gtk_minor_version
103 GDK_PIXBUF_MICRO=gtk_micro_version
104 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
105 AC_SUBST(GDK_PIXBUF_MAJOR)
106 AC_SUBST(GDK_PIXBUF_MINOR)
107 AC_SUBST(GDK_PIXBUF_MICRO)
108 AC_SUBST(GDK_PIXBUF_VERSION)
110 GETTEXT_PACKAGE=gtk20
111 AC_SUBST(GETTEXT_PACKAGE)
112 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
117 AC_MSG_CHECKING([for native Win32])
127 AC_MSG_RESULT([$os_win32])
134 dnl Initialize libtool
138 if test "$os_win32" = "yes"; then
139 if test x$enable_static = xyes -o x$enable_static = x; then
140 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
143 if test x$enable_shared = xno; then
144 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
152 # Make sure we use 64-bit versions of various file stuff.
156 AC_PATH_PROG(NM, nm, nm)
158 dnl Initialize maintainer mode
161 AC_MSG_CHECKING([for some Win32 platform])
163 *-*-mingw*|*-*-cygwin*)
170 AC_MSG_RESULT([$platform_win32])
171 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
173 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
174 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
175 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
177 if test "$os_win32" = "yes"; then
178 AC_CHECK_TOOL(WINDRES, windres, no)
179 if test "$WINDRES" = no; then
180 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
182 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
184 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
186 m4_define([debug_default],
187 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
189 dnl declare --enable-* args and collect ac_help strings
191 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
192 [turn on debugging @<:@default=debug_default@:>@]),,
193 enable_debug=debug_default)
195 [AC_HELP_STRING([--enable-shm],
196 [support shared memory if available [default=yes]])],,
199 [AC_HELP_STRING([--enable-xkb],
200 [support XKB [default=maybe]])],,
201 [enable_xkb="maybe"])
202 AC_ARG_ENABLE(rebuilds,
203 [AC_HELP_STRING([--disable-rebuilds],
204 [disable all source autogeneration rules])],,
205 [enable_rebuilds=yes])
206 AC_ARG_ENABLE(visibility,
207 [AC_HELP_STRING([--disable-visibility],
208 [don't use ELF visibility attributes])],,
209 [enable_visibility=yes])
212 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
215 [AC_HELP_STRING([--with-wintab=DIRECTORY],
216 [use Wintab API with win32 backend])])
218 [AC_HELP_STRING([--with-ie55=DIRECTORY],
219 [IE5.5 libs and headers (for Active IMM)])])
221 if test "$platform_win32" = yes; then
227 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32/quartz/directfb]] select non-default GDK target],
228 gdktarget=$with_gdktarget)
232 x11|linux-fb|win32|quartz|directfb) ;;
233 *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb, quartz, directfb or win32.]);;
236 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
237 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
239 AC_SUBST(gdktargetlib)
240 AC_SUBST(gtktargetlib)
242 AC_ARG_ENABLE(shadowfb,
243 [AC_HELP_STRING([--disable-shadowfb],
244 [disable shadowfb support for linux-fb])],,
245 [enable_shadowfb=yes])
247 AC_ARG_ENABLE(fbmanager,
248 [AC_HELP_STRING([--enable-fbmanager],
249 [enable framebuffer manager support (GtkFB)])],,
252 if test "x$enable_debug" = "xyes"; then
253 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
254 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
256 if test "x$enable_debug" = "xno"; then
257 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
259 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
263 if test "x$enable_visibility" = "xno"; then
264 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
268 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
271 # Build time sanity check...
274 # Checks for programs.
281 if test "x$GCC" = "xyes"; then
283 *[\ \ ]-Wall[\ \ ]*) ;;
284 *) CFLAGS="$CFLAGS -Wall" ;;
287 if test "x$enable_ansi" = "xyes"; then
289 *[\ \ ]-ansi[\ \ ]*) ;;
290 *) CFLAGS="$CFLAGS -ansi" ;;
294 *[\ \ ]-pedantic[\ \ ]*) ;;
295 *) CFLAGS="$CFLAGS -pedantic" ;;
301 # Ensure MSVC-compatible struct packing convention is used when
302 # compiling for Win32 with gcc.
303 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
304 # gcc2 uses "-fnative-struct".
305 if test x"$os_win32" = xyes; then
306 if test x"$GCC" = xyes; then
308 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
309 if test -z "$ac_cv_prog_CC"; then
312 our_gcc="$ac_cv_prog_CC"
314 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
316 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
317 msnative_struct='-fnative-struct'
321 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
322 msnative_struct='-mms-bitfields'
326 if test x"$msnative_struct" = x ; then
327 AC_MSG_RESULT([no way])
328 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
330 CFLAGS="$CFLAGS $msnative_struct"
331 AC_MSG_RESULT([${msnative_struct}])
336 # Honor aclocal flags
337 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
339 ## Initial sanity check, done here so that users get told they
340 ## have the wrong dependencies as early in the process as possible.
341 ## Later on we actually use the cflags/libs from separate pkg-config
342 ## calls. Oh, also the later pkg-config calls don't include
343 ## the version requirements since those make the module lists
344 ## annoying to construct
345 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
346 [glib-2.0 >= glib_required_version dnl
347 atk >= atk_required_version dnl
348 pango >= pango_required_version dnl
349 cairo >= cairo_required_version])
351 if test "$os_win32" != yes; then
352 # libtool option to control which symbols are exported
353 # right now, symbols starting with _ are not exported
354 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
356 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
357 LIBTOOL_EXPORT_OPTIONS=
359 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
361 dnl ******************************************************
362 dnl * See whether to include shared library dependencies *
363 dnl ******************************************************
365 AC_ARG_ENABLE(explicit-deps,
366 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
367 [use explicit dependencies in .pc files [default=auto]])],,
368 [enable_explicit_deps=auto])
370 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
371 case $enable_explicit_deps in
373 deplibs_check_method=`(./libtool --config; echo eval echo \\$deplibs_check_method) | sh`
374 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
375 enable_explicit_deps=yes
377 enable_explicit_deps=no
382 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
385 AC_MSG_RESULT($enable_explicit_deps)
387 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
389 # define a MAINT-like variable REBUILD which is set if Perl
390 # and awk are found, so autogenerated sources can be rebuilt
392 AC_PATH_PROGS(PERL, perl5 perl)
394 # We would like indent, but don't require it.
395 AC_CHECK_PROG(INDENT, indent, indent)
398 if test "x$enable_rebuilds" = "xyes" && \
400 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
405 AC_CHECK_FUNCS(lstat mkstemp flockfile)
407 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
408 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
409 AC_TRY_LINK([#include <langinfo.h>], [
411 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
412 ], gtk_ok=yes, gtk_ok=no)
413 AC_MSG_RESULT($gtk_ok)
414 if test "$gtk_ok" = "yes"; then
415 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
416 [Define if _NL_TIME_FIRST_WEEKDAY is available])
419 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
420 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
421 AC_TRY_LINK([#include <langinfo.h>], [
423 c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
424 ], gtk_ok=yes, gtk_ok=no)
425 AC_MSG_RESULT($gtk_ok)
426 if test "$gtk_ok" = "yes"; then
427 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
428 [Define if _NL_MEASUREMENT_MEASUREMENT is available])
431 # _NL_PAPER_HEIGHT is an enum and not a define
432 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
433 AC_TRY_LINK([#include <langinfo.h>], [
435 c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
436 ], gtk_ok=yes, gtk_ok=no)
437 AC_MSG_RESULT($gtk_ok)
438 if test "$gtk_ok" = "yes"; then
439 AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
440 [Define if _NL_PAPER_HEIGHT is available])
443 # _NL_PAPER_WIDTH is an enum and not a define
444 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
445 AC_TRY_LINK([#include <langinfo.h>], [
447 c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
448 ], gtk_ok=yes, gtk_ok=no)
449 AC_MSG_RESULT($gtk_ok)
450 if test "$gtk_ok" = "yes"; then
451 AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
452 [Define if _NL_PAPER_WIDTH is available])
455 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
456 AC_MSG_CHECKING(for sigsetjmp)
457 AC_TRY_LINK([#include <setjmp.h>], [
460 ], gtk_ok=yes, gtk_ok=no)
461 AC_MSG_RESULT($gtk_ok)
462 if test "$gtk_ok" = "yes"; then
463 AC_DEFINE(HAVE_SIGSETJMP)
467 # TRANSLATORS: Please note that gtk+ has both po/ and po-properties/
468 # directories. If you add a new language to ALL_LINGUAS, please make
469 # sure that both po/ and po-properties/ have .po files that correspond
470 # to your language. If you only add one to po/, the build will break
472 ALL_LINGUAS="af am ar az az_IR be bg bn bn_IN br bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu hy ia id is it ja ka ko ku li lt lv mi mk ml mn mr ms nb ne nl nn nso or pa pl pt pt_BR ro ru rw sk sl sq sr sr@Latn sr@ije sv ta te th tk tr tt uk ur uz uz@Latn vi wa xh yi zh_CN zh_HK zh_TW"
474 LIBS="$LIBS $INTLLIBS"
475 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
476 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
479 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
481 dnl The DU4 header files don't provide library prototypes unless
482 dnl -std1 is given to the native cc.
483 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
487 AC_TRY_RUN([#include <math.h>
488 int main (void) { return (log(1) != log(1.)); }],
489 AC_MSG_RESULT(none needed),
490 gtk_save_CFLAGS="$CFLAGS"
491 CFLAGS="$CFLAGS -std1"
492 AC_TRY_RUN([#include <math.h>
493 int main (void) { return (log(1) != log(1.)); }],
494 AC_MSG_RESULT(-std1),
496 CFLAGS="$gtk_save_CFLAGS"
498 [No ANSI prototypes found in library. (-std1 didn't work.)]),
501 AC_MSG_RESULT(none needed)
505 AC_MSG_CHECKING(for the BeOS)
519 AC_MSG_CHECKING(for HP-UX)
521 hpux9* | hpux10* | hpux11*)
523 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
530 dnl NeXTStep cc seems to need this
531 AC_MSG_CHECKING([for extra flags for POSIX compliance])
532 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
533 AC_MSG_RESULT(none needed),
534 gtk_save_CFLAGS="$CFLAGS"
535 CFLAGS="$CFLAGS -posix"
536 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
537 AC_MSG_RESULT(-posix),
539 CFLAGS="$gtk_save_CFLAGS"
540 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
543 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
546 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
548 AM_PATH_GLIB_2_0(glib_required_version, :,
550 *** GLIB glib_required_version or better is required. The latest version of
551 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
552 gobject gmodule-no-export gthread)
554 # See if it's safe to turn G_DISABLE_DEPRECATED on.
555 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
556 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
557 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
558 CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
563 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
566 LIBS="$LIBS $GLIB_LIBS"
567 AC_CHECK_FUNCS(bind_textdomain_codeset)
570 AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
571 AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
572 AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
574 if test "${with_ie55+set}" = set && test $with_ie55 != no; then
575 AC_MSG_CHECKING([for dimm.h])
576 saved_CFLAGS="$CFLAGS"
577 CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
578 AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
580 #define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
581 #define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
587 #undef IMEMENUITEMINFOA
588 #undef IMEMENUITEMINFOW
594 AC_MSG_CHECKING([for IE55 uuid.lib])
595 if test -f $with_ie55/Lib/uuid.lib ; then
598 AC_DEFINE(HAVE_DIMM_H)
599 IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
600 AC_SUBST(IE55_UUID_LIB)
603 CFLAGS="$saved_CFLAGS"
608 CFLAGS="$saved_CFLAGS"
611 AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
613 if test "${with_wintab+set}" = set && test $with_wintab != no; then
614 AC_MSG_CHECKING([for wintab.h])
615 saved_CFLAGS="$CFLAGS"
616 CFLAGS="$CFLAGS -I$with_wintab/include"
617 AC_TRY_COMPILE([#include <windows.h>
618 #include <wintab.h>],
621 AC_MSG_CHECKING([for wntab32x.lib])
622 if test -f $with_wintab/lib/i386/wntab32x.lib ; then
625 AC_DEFINE(HAVE_WINTAB)
626 WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
630 CFLAGS="$saved_cflags"
635 CFLAGS="$saved_cflags"
638 AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
640 saved_cflags="$CFLAGS"
641 saved_ldflags="$LDFLAGS"
644 # Checks for header files.
647 # Checks for typedefs, structures, and compiler characteristics.
650 # Checks for library functions.
654 AC_CHECK_FUNCS(mallinfo)
655 AC_CHECK_FUNCS(getresuid)
658 # Check if <sys/select.h> needs to be included for fd_set
659 AC_MSG_CHECKING([for fd_set])
660 AC_TRY_COMPILE([#include <sys/types.h>],
661 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
662 if test $gtk_ok = yes; then
663 AC_MSG_RESULT([yes, found in sys/types.h])
665 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
666 if test $gtk_ok = yes; then
667 AC_DEFINE(HAVE_SYS_SELECT_H)
668 AC_MSG_RESULT([yes, found in sys/select.h])
675 # `widechar' tests for gdki18n.h
676 AC_MSG_CHECKING(for wchar.h)
677 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
678 if test $gdk_wchar_h = yes; then
679 AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
681 AC_MSG_RESULT($gdk_wchar_h)
683 # Check for wctype.h (for iswalnum)
684 AC_MSG_CHECKING(for wctype.h)
685 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
686 if test $gdk_wctype_h = yes; then
687 AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
689 AC_MSG_RESULT($gdk_wctype_h)
691 # in Solaris 2.5, `iswalnum' is in -lw
693 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
696 LIBS="$LIBS $GDK_WLIBS"
697 # The following is necessary for Linux libc-5.4.38
698 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
699 AC_TRY_LINK([#include <stdlib.h>],[
700 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
701 # ifdef HAVE_WCTYPE_H
709 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
711 iswalnum((wchar_t) 0);
712 ], gdk_working_wctype=yes, gdk_working_wctype=no)
715 if test $gdk_working_wctype = no; then
716 AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
719 AC_MSG_RESULT($gdk_working_wctype)
722 # Check for uxtheme.h (for MS-Windows Engine)
723 AC_MSG_CHECKING(for uxtheme.h)
724 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
725 if test $gtk_uxtheme_h = yes; then
726 AC_DEFINE(HAVE_UXTHEME_H,1,[Have uxtheme.h include file])
728 AC_MSG_RESULT($gtk_uxtheme_h)
731 ##################################################
732 # Checks for gdk-pixbuf
733 ##################################################
735 dnl ********************************************************
736 dnl * See whether we need to load our modules as .la files *
737 dnl ********************************************************
741 *-aix*) use_la_modules=true
744 if $use_la_modules ; then
745 AC_DEFINE(USE_LA_MODULES, 1, [Whether to load modules via .la files rather than directly])
749 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
751 AC_ARG_ENABLE(modules,
752 [AC_HELP_STRING([--disable-modules],
753 [disable dynamic module loading])])
757 if test x$enable_modules = xno; then
761 AC_MSG_CHECKING(whether dynamic modules work)
762 ## for loop is to strip newline
763 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
768 dnl Now we check to see if our libtool supports shared lib deps
769 dnl (in a rather ugly way even)
771 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
772 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
773 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
774 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
775 if test "x$pixbuf_deplibs_check" = "xnone" || \
776 test "x$pixbuf_deplibs_check" = "xunknown" || \
777 test "x$pixbuf_deplibs_check" = "x"; then
783 AC_DEFINE(USE_GMODULE)
790 dnl We allow people to disable image loaders explicitely, but if they don't we error
791 dnl out so that people don't accidentally build without them.
794 [AC_HELP_STRING([--without-libpng],
795 [disable PNG loader for gdk-pixbuf])])
797 [AC_HELP_STRING([--without-libjpeg],
798 [disable JPEG loader for gdk-pixbuf])])
800 [AC_HELP_STRING([--without-libtiff],
801 [disable TIFF loader for gdk-pixbuf])])
804 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
805 AC_CHECK_LIB(tiff, TIFFReadScanline,
806 [AC_CHECK_HEADER(tiffio.h,
807 TIFF='tiff'; LIBTIFF='-ltiff',
808 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
809 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
810 [AC_CHECK_HEADER(tiffio.h,
811 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
812 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
813 [AC_CHECK_LIB(tiff34, TIFFFlushData,
814 [AC_CHECK_HEADER(tiffio.h,
815 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
816 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
817 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
820 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
822 *** Checks for TIFF loader failed. You can build without it by passing
823 *** --without-libtiff to configure but some programs using GTK+ may
824 *** not work properly])
828 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
829 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
832 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
833 if test "$jpeg_ok" = yes; then
834 AC_MSG_CHECKING([for jpeglib.h])
840 #include <jpeglib.h>],
843 AC_MSG_RESULT($jpeg_ok)
844 if test "$jpeg_ok" = yes; then
846 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
847 AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
848 AC_MSG_WARN(JPEG library does not support progressive saving.))
850 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
855 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
857 *** Checks for JPEG loader failed. You can build without it by passing
858 *** --without-libjpeg to configure but some programs using GTK+ may
859 *** not work properly])
863 if test x$with_libpng != xno && test -z "$LIBPNG"; then
864 AC_MSG_CHECKING(for libpng12)
865 if $PKG_CONFIG --exists libpng12 ; then
868 PNG_DEP_CFLAGS_PACKAGES=libpng12
869 LIBPNG=`$PKG_CONFIG --libs libpng12`
872 AC_CHECK_LIB(png, png_read_info,
873 [AC_CHECK_HEADER(png.h,
876 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
877 if test "$png_ok" = yes; then
878 AC_MSG_CHECKING([for png_structp in png.h])
879 AC_TRY_COMPILE([#include <png.h>],
880 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
883 AC_MSG_RESULT($png_ok)
884 if test "$png_ok" = yes; then
885 PNG='png'; LIBPNG='-lpng -lz'
887 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
890 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
895 if test x$with_libpng != xno && test -z "$LIBPNG"; then
897 *** Checks for PNG loader failed. You can build without it by passing
898 *** --without-libpng to configure but many programs using GTK+ will
899 *** not work properly. The PNG loader is also needed if you are compiling
907 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
910 # Allow building some or all gdk-pixbuf loaders included
912 AC_MSG_CHECKING(pixbuf loaders to build)
914 dnl due to an autoconf bug, commas in the first arg to
915 dnl AC_HELP_STRING cause problems.
916 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
917 dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
918 AC_ARG_WITH(included_loaders,
919 [ --with-included-loaders=LOADER1,LOADER2,...
920 build the specified loaders into gdk-pixbuf (only
921 used if module loading disabled)])
926 ## if the option was specified, leave it; otherwise disable included loaders
927 if test x$with_included_loaders = xno; then
928 with_included_loaders=yes
932 all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
934 # If no loaders specified, include all
935 if test "x$with_included_loaders" = xyes ; then
936 included_loaders="$all_loaders"
938 included_loaders="$with_included_loaders"
941 AC_MSG_RESULT($included_loaders)
944 INCLUDED_LOADER_DEFINE=
946 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
947 for loader in $included_loaders; do
948 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
951 AC_MSG_ERROR([the specified loader $loader does not exist])
954 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
955 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
958 AC_SUBST(INCLUDED_LOADER_OBJ)
959 AC_SUBST(INCLUDED_LOADER_DEFINE)
965 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
966 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
967 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
971 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
972 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
974 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
975 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
977 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
978 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
981 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
984 # Checks to see if we should compile in MMX support (there will be
985 # a runtime test when the code is actually run to see if it should
986 # be used - this just checks if we can compile it.)
988 # This code is partially taken from Mesa
990 AC_MSG_CHECKING(for x86 platform)
992 i386|i486|i586|i686|i786|k6|k7)
998 AC_MSG_RESULT($use_x86_asm)
1001 if test $use_x86_asm = yes; then
1005 AC_MSG_CHECKING(compiler support for MMX)
1006 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1007 if AC_TRY_EVAL(ac_compile); then
1014 if test $use_mmx_asm = yes; then
1022 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1025 if test -z "$LIBPNG"; then
1029 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1031 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1033 if test $cross_compiling = yes; then
1034 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1035 if test x$GDK_PIXBUF_CSOURCE = xno; then
1040 if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
1041 test "x$REBUILD_PNGS" = "x#" ; then
1043 *** gtkbuiltincache.h is not in the tree, and cannot be built
1044 *** because you don't have libpng, or (when cross-compiling) you
1045 *** don't have a prebuilt gdk-pixbuf-csource on the host system.])
1048 AC_SUBST(REBUILD_PNGS)
1050 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0"
1051 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
1052 GDK_PIXBUF_EXTRA_CFLAGS=
1053 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1054 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1056 AC_SUBST(GDK_PIXBUF_PACKAGES)
1057 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1058 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1059 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1060 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1063 ########################################
1064 # Windowing system checks
1065 ########################################
1067 GDK_PIXBUF_XLIB_PACKAGES=
1068 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1069 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1071 X_PACKAGES=fontconfig
1072 GDK_EXTRA_LIBS="$GDK_WLIBS"
1075 # GTK+ uses some X calls, so needs to link against X directly
1076 GTK_DEP_PACKAGES_FOR_X=
1079 if test "x$gdktarget" = "xx11"; then
1081 # We use fontconfig very peripherally when decoding the default
1084 if $PKG_CONFIG --exists fontconfig; then : ; else
1086 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1090 # Check for basic X packages; we use pkg-config if available
1092 if $PKG_CONFIG --exists x11 xext xrender; then
1094 X_PACKAGES="$X_PACKAGES x11 xext xrender"
1095 x_libs="`pkg-config --libs x11 xext xrender`"
1096 X_CFLAGS="`pkg-config --cflags x11 xext xrender`"
1098 # Strip out any .la files that pkg-config might give us (this happens
1099 # with -uninstalled.pc files)
1101 for I in $x_libs ; do
1104 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1108 GDK_PIXBUF_XLIB_PACKAGES="x11"
1109 GTK_PACKAGES_FOR_X="x11"
1111 have_base_x_pc=false
1113 if test x$no_x = xyes ; then
1114 AC_MSG_ERROR([X development libraries not found])
1117 x_cflags="$X_CFLAGS"
1118 x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1120 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1121 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1122 GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1125 # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1128 gtk_save_cppflags="$CPPFLAGS"
1129 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1132 LIBS="$x_libs_for_checks $LIBS"
1134 # Sanity check for the X11 and Xext libraries. While everything we need from
1135 # Xext is optional, the chances a system has *none* of these things is so
1136 # small that we just unconditionally require it.
1137 AC_CHECK_FUNC(XOpenDisplay, :,
1138 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1139 AC_CHECK_FUNC(XextFindDisplay, :,
1140 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1141 AC_CHECK_FUNC(XRenderQueryExtension, :,
1142 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1146 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1147 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1149 [AC_MSG_RESULT([no])],
1150 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1151 #include <X11/Xlibint.h>],
1153 [AC_MSG_RESULT([yes])
1154 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1155 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1156 [AC_MSG_RESULT([unknown])
1157 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1159 # Check for XConvertCase, XInternAtoms (X11R6 specific)
1161 AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1163 # Generic X11R6 check needed for XIM support; we could
1164 # probably use this to replace the above, but we'll
1165 # leave the separate checks for XConvertCase and XInternAtoms
1169 AC_CHECK_FUNC(XAddConnectionWatch,
1172 if $have_x11r6; then
1173 AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
1175 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1177 # Check for XKB support.
1179 if test "x$enable_xkb" = "xyes"; then
1180 AC_MSG_WARN(XKB support explicitly enabled)
1182 elif test "x$enable_xkb" = "xmaybe"; then
1183 AC_CHECK_FUNC(XkbQueryExtension,
1184 AC_DEFINE(HAVE_XKB))
1186 AC_MSG_WARN(XKB support explicitly disabled)
1189 # Check for shaped window extension
1191 AC_CHECK_FUNC(XShapeCombineMask,
1192 AC_DEFINE(HAVE_SHAPE_EXT))
1196 AC_CHECK_FUNC(XSyncQueryExtension,
1197 [AC_CHECK_HEADER(X11/extensions/sync.h,
1198 AC_DEFINE(HAVE_XSYNC, 1, Have the SYNC extension library),
1199 :, [#include <X11/Xlib.h>])])
1203 if test "x$enable_shm" = "xyes"; then
1204 # Check for the XShm extension, normally in Xext
1205 AC_CHECK_FUNC(XShmAttach,
1207 # On AIX, it is in XextSam instead
1208 [AC_CHECK_LIB(XextSam, XShmAttach,
1209 [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1212 if test "x$enable_shm" = "xyes"; then
1213 # Check for shared memory
1214 AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
1215 AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
1217 # Check for the X shared memory extension header file
1219 AC_MSG_CHECKING(X11/extensions/XShm.h)
1220 if test "x$no_xext_lib" = "xyes"; then
1223 gtk_save_CFLAGS="$CFLAGS"
1224 CFLAGS="$CFLAGS $x_cflags"
1227 #include <sys/types.h>
1228 #include <sys/ipc.h>
1229 #include <sys/shm.h>
1230 #include <X11/Xlib.h>
1231 #include <X11/Xutil.h>
1232 #include <X11/extensions/XShm.h>
1233 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1234 CFLAGS="$gtk_save_CFLAGS"
1236 AC_MSG_RESULT($have_xshm)
1237 if test $have_xshm = yes ; then
1238 AC_DEFINE(HAVE_XSHM_H)
1242 # Check for Xinerama extension (Solaris impl or Xfree impl)
1244 gtk_save_cppflags="$CPPFLAGS"
1245 CPPFLAGS="$CPPFLAGS $x_cflags"
1250 AC_MSG_CHECKING(for Xinerama support on Solaris)
1252 have_solaris_xinerama=false
1253 AC_CHECK_FUNC(XineramaGetInfo,
1254 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1255 [have_solaris_xinerama=true], :,
1256 [#include <X11/Xlib.h>])])
1258 if $have_solaris_xinerama ; then
1259 AC_DEFINE(HAVE_SOLARIS_XINERAMA)
1260 AC_DEFINE(HAVE_XINERAMA)
1268 AC_MSG_CHECKING(for Xinerama support on XFree86)
1270 have_xfree_xinerama=false
1271 if $PKG_CONFIG --exists xinerama ; then
1272 have_xfree_xinerama=true
1273 X_PACKAGES="$X_PACKAGES xinerama"
1275 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1276 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1277 [GTK_ADD_LIB(x_extra_libs,Xinerama)
1278 have_xfree_xinerama=true], :,
1279 [#include <X11/Xlib.h>])])
1282 if $have_xfree_xinerama ; then
1283 AC_DEFINE(HAVE_XFREE_XINERAMA)
1284 AC_DEFINE(HAVE_XINERAMA)
1292 # set up things for XInput
1294 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1295 AC_DEFINE(XINPUT_XFREE)
1297 if $PKG_CONFIG --exists xi ; then
1298 X_PACKAGES="$X_PACKAGES xi"
1300 GTK_ADD_LIB(x_extra_libs, Xi)
1303 AC_DEFINE(XINPUT_NONE)
1306 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1308 # Check for the RANDR extension
1311 if $PKG_CONFIG --exists xrandr ; then
1313 X_PACKAGES="$X_PACKAGES xrandr"
1315 AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
1316 [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
1317 # RANDR requires RENDER
1319 GTK_ADD_LIB(x_extra_libs, Xrender)
1320 GTK_ADD_LIB(x_extra_libs, Xrandr)],
1321 :, [#include <X11/Xlib.h>])])
1324 if $have_randr ; then
1325 AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library)
1328 # Checks for Xcursor library
1330 if $PKG_CONFIG --exists xcursor ; then
1331 AC_DEFINE(HAVE_XCURSOR, 1, Have the Xcursor library)
1333 X_PACKAGES="$X_PACKAGES xcursor"
1336 # Checks for XFixes extension
1338 if $PKG_CONFIG --exists xfixes ; then
1339 AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
1341 X_PACKAGES="$X_PACKAGES xfixes"
1344 if $have_base_x_pc ; then
1345 GDK_EXTRA_LIBS="$x_extra_libs"
1347 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1350 CPPFLAGS="$gtk_save_cppflags"
1351 LIBS="$gtk_save_libs"
1353 AM_CONDITIONAL(USE_X11, true)
1355 AM_CONDITIONAL(XINPUT_XFREE, false)
1356 AM_CONDITIONAL(USE_X11, false)
1357 AM_CONDITIONAL(HAVE_X11R6, false)
1360 if test "x$gdktarget" = "xwin32"; then
1361 # We start off with the libraries from Pango
1363 if test x$have_wintab = xyes; then
1364 GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
1365 AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
1368 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1369 AM_CONDITIONAL(USE_WIN32, true)
1371 AM_CONDITIONAL(USE_WIN32, false)
1374 if test "x$gdktarget" = "xquartz"; then
1375 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1376 AM_CONDITIONAL(USE_QUARTZ, true)
1378 AM_CONDITIONAL(USE_QUARTZ, false)
1381 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1382 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"
1384 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1385 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1386 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1387 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1388 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1390 if test "x$gdktarget" = "xlinux-fb"; then
1391 if test x$enable_shadowfb = xyes ; then
1392 AC_DEFINE(ENABLE_SHADOW_FB)
1395 if test x$enable_fbmanager = xyes ; then
1396 AC_DEFINE(ENABLE_FB_MANAGER)
1397 AM_CONDITIONAL(ENABLE_FB_MANAGER, true)
1399 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1402 AM_CONDITIONAL(USE_LINUX_FB, true)
1404 AM_CONDITIONAL(USE_LINUX_FB, false)
1405 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1408 if test "x$gdktarget" = "xdirectfb"; then
1409 DIRECTFB_REQUIRED_VERSION=0.9.24
1410 AC_MSG_CHECKING(for DirectFB)
1412 if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb ; then
1413 AC_MSG_RESULT(found)
1414 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags directfb` $GDK_EXTRA_CFLAGS"
1415 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs directfb` $GDK_EXTRA_LIBS"
1418 *** DirectFB $DIRECTFB_REQUIRED_VERSION or newer is required. The latest
1419 *** version of DirectFB is always available from http://www.directfb.org/.
1423 AM_CONDITIONAL(USE_DIRECTFB, true)
1425 AM_CONDITIONAL(USE_DIRECTFB, false)
1429 # Check for Pango flags
1431 if test "x$gdktarget" = "xwin32"; then
1432 PANGO_PACKAGES="pangowin32 pangocairo"
1434 PANGO_PACKAGES="pango pangocairo"
1437 AC_MSG_CHECKING(Pango flags)
1438 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1439 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1440 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1442 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1445 *** Pango not found. Pango built with Cairo support is required
1446 *** to build GTK+. See http://www.pango.org for Pango information.
1450 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1452 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1455 gtk_save_LIBS="$LIBS"
1456 LIBS="$PANGO_LIBS $LIBS"
1457 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1458 *** Can't link to Pango. Pango is required to build
1459 *** GTK+. For more information see http://www.pango.org]))
1460 LIBS="$gtk_save_LIBS"
1463 CFLAGS="$saved_cflags"
1464 LDFLAGS="$saved_ldflags"
1466 GDK_PACKAGES="$PANGO_PACKAGES"
1467 if test "x$gdktarget" = "xx11"; then
1468 GDK_PACKAGES="$GDK_PACKAGES $X_PACKAGES"
1470 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1471 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1474 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1475 # into the pkg-config files
1477 if test $enable_explicit_deps != yes ; then
1478 GDK_PACKAGES="$PANGO_PACKAGES"
1482 AC_SUBST(GDK_PACKAGES)
1483 AC_SUBST(GDK_EXTRA_LIBS)
1484 AC_SUBST(GDK_EXTRA_CFLAGS)
1485 AC_SUBST(GDK_DEP_LIBS)
1486 AC_SUBST(GDK_DEP_CFLAGS)
1489 ########################################
1490 # Check for Accessibility Toolkit flags
1491 ########################################
1494 AC_MSG_CHECKING(ATK flags)
1495 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1496 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1497 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1499 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1502 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1507 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1510 gtk_save_LIBS="$LIBS"
1511 LIBS="$ATK_LIBS $LIBS"
1512 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1513 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1514 *** to build GTK+]))
1515 LIBS="$gtk_save_LIBS"
1518 GTK_PACKAGES="atk cairo"
1521 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"
1522 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"
1524 if test x"$os_win32" = xyes; then
1525 GTK_EXTRA_CFLAGS="$msnative_struct"
1528 AC_SUBST(GTK_PACKAGES)
1529 AC_SUBST(GTK_EXTRA_LIBS)
1530 AC_SUBST(GTK_EXTRA_CFLAGS)
1531 AC_SUBST(GTK_DEP_LIBS)
1532 AC_SUBST(GTK_DEP_CFLAGS)
1535 AC_SUBST(GTK_DEBUG_FLAGS)
1536 AC_SUBST(GTK_XIM_FLAGS)
1538 ################################################################
1539 # Printing system checks
1540 ################################################################
1542 AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1543 if test "x$CUPS_CONFIG" != "xno"; then
1544 CUPS_CFLAGS=`cups-config --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1545 CUPS_LIBS=`cups-config --libs`
1547 CUPS_API_VERSION=`cups-config --api-version`
1548 CUPS_API_MAJOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $1}'`
1549 CUPS_API_MINOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $2}'`
1551 if test $CUPS_API_MAJOR -gt 1 -o \
1552 $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1553 AC_DEFINE(HAVE_CUPS_API_1_2)
1556 AC_SUBST(CUPS_API_MAJOR)
1557 AC_SUBST(CUPS_API_MINOR)
1558 AC_SUBST(CUPS_CFLAGS)
1561 AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno")
1563 gtk_save_cppflags="$CPPFLAGS"
1564 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS"
1566 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1567 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1568 *** backend enabled.]))
1570 if test "$os_win32" != "yes"; then
1571 AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1572 *** Can't find cairo-ps.h. You must build Cairo with the
1573 *** postscript backend enabled.]))
1576 CPPFLAGS="$gtk_save_cppflags"
1579 ################################################################
1580 # Strip -export-dynamic from the link lines of various libraries
1581 ################################################################
1584 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1585 # but this flag is only meaningful for executables. For libraries
1586 # the effect is undefined; what it causes on Linux is that the
1587 # export list from -export-symbols-regex is ignored and everything
1590 # We are using gmodule-no-export now, but I'm leaving the stripping
1591 # code in place for now, since pango and atk still require gmodule.
1592 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1593 if test -n "$export_dynamic"; then
1594 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1595 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1596 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1597 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1601 ##################################################
1602 # Checks for gtk-doc and docbook-tools
1603 ##################################################
1605 GTK_DOC_CHECK([1.4])
1607 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1608 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1611 [AC_HELP_STRING([--enable-man],
1612 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1615 if test "${enable_man}" != no; then
1617 dnl Check for xsltproc
1619 AC_PATH_PROG([XSLTPROC], [xsltproc])
1620 if test -z "$XSLTPROC"; then
1624 dnl check for DocBook DTD and stylesheets in the local catalog.
1625 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1626 [DocBook XML DTD V4.1.2],,enable_man=no)
1627 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1628 [DocBook XSL Stylesheets],,enable_man=no)
1631 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1634 ##################################################
1636 ##################################################
1638 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1639 outfile=gdkconfig.h-tmp
1640 cat > $outfile <<\_______EOF
1643 * This is a generated file. Please modify `configure.in'
1651 #endif /* __cplusplus */
1655 cat >>$outfile <<_______EOF
1660 cat >>$outfile <<_______EOF
1664 #endif /* __cplusplus */
1666 #endif /* GDKCONFIG_H */
1670 if cmp -s $outfile gdk/gdkconfig.h; then
1671 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1674 mv $outfile gdk/gdkconfig.h
1677 if test "x$gdktarget" = "xx11" ; then
1679 #define GDK_WINDOWING_X11'
1680 elif test "x$gdktarget" = "xwin32" ; then
1682 #define GDK_WINDOWING_WIN32'
1683 elif test "x$gdktarget" = "xlinux-fb" ; then
1685 #define GDK_WINDOWING_FB
1686 #define GDK_NATIVE_WINDOW_POINTER'
1687 elif test "x$gdktarget" = "xquartz" ; then
1689 #define GDK_WINDOWING_QUARTZ'
1690 elif test "x$gdktarget" = "xdirectfb" ; then
1692 #define GDK_WINDOWING_DIRECTFB'
1695 if test x$gdk_wchar_h = xyes; then
1697 #define GDK_HAVE_WCHAR_H 1'
1699 if test x$gdk_wctype_h = xyes; then
1701 #define GDK_HAVE_WCTYPE_H 1"
1703 if test x$gdk_working_wctype = xno; then
1705 #define GDK_HAVE_BROKEN_WCTYPE 1"
1718 gtk+-unix-print-2.0.pc
1719 gdk-pixbuf-2.0-uninstalled.pc
1720 gdk-2.0-uninstalled.pc
1721 gtk+-2.0-uninstalled.pc
1724 po-properties/Makefile.in
1726 demos/gtk-demo/Makefile
1727 demos/gtk-demo/geninclude.pl
1730 docs/reference/Makefile
1731 docs/reference/gdk-pixbuf/Makefile
1732 docs/reference/gdk-pixbuf/version.xml
1733 docs/reference/gdk/Makefile
1734 docs/reference/gdk/version.xml
1735 docs/reference/gtk/Makefile
1736 docs/reference/gtk/version.xml
1739 docs/tutorial/Makefile
1741 gdk-pixbuf/gdk_pixbuf.rc
1742 gdk-pixbuf/gdk-pixbuf-features.h
1743 gdk-pixbuf/pixops/Makefile
1747 gdk/win32/rc/Makefile
1749 gdk/linux-fb/Makefile
1751 gdk/directfb/Makefile
1756 gtk/theme-bits/Makefile
1757 gtk/xdgmime/Makefile
1759 modules/input/Makefile
1760 modules/engines/Makefile
1761 modules/engines/pixbuf/Makefile
1762 modules/engines/ms-windows/Makefile
1763 modules/engines/ms-windows/Theme/Makefile
1764 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
1765 modules/printbackends/Makefile
1766 modules/printbackends/cups/Makefile
1767 modules/printbackends/lpr/Makefile
1768 modules/printbackends/file/Makefile
1771 contrib/gdk-pixbuf-xlib/Makefile
1772 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
1777 echo "configuration:
1780 if test "x$gdktarget" = "xlinux-fb"; then
1781 echo "Warning: The linux-fb GDK target is unmaintained"
1782 echo " and may not work or even compile"