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], [17])
15 m4_define([gtk_micro_version], [11])
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.21.3])
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)
52 # Support silent build rules, requires at least automake-1.11. Enable
53 # by either passing --enable-silent-rules to configure or passing V=0
55 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([no])])
58 # For each of the libraries we build, we define the following
60 # substituted variables:
62 # foo_PACKAGES: pkg-config packages this library requires
63 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
64 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
65 # foo_DEP_LIBS: All libraries this module requires
66 # foo_DEP_CFLAGS: All cflags this module requires
69 GTK_MAJOR_VERSION=gtk_major_version
70 GTK_MINOR_VERSION=gtk_minor_version
71 GTK_MICRO_VERSION=gtk_micro_version
72 GTK_INTERFACE_AGE=gtk_interface_age
73 GTK_BINARY_AGE=gtk_binary_age
74 GTK_VERSION=gtk_version
75 GTK_API_VERSION=gtk_api_version
76 GTK_BINARY_VERSION=gtk_binary_version
77 AC_SUBST(GTK_MAJOR_VERSION)
78 AC_SUBST(GTK_MINOR_VERSION)
79 AC_SUBST(GTK_MICRO_VERSION)
80 AC_SUBST(GTK_INTERFACE_AGE)
81 AC_SUBST(GTK_BINARY_AGE)
82 AC_SUBST(GTK_API_VERSION)
84 AC_SUBST(GTK_BINARY_VERSION)
87 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
88 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
89 #LT_REVISION=$GTK_INTERFACE_AGE
90 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
91 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
93 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
94 m4_define([lt_revision], [gtk_interface_age])
95 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
96 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
97 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
98 AC_SUBST(LT_VERSION_INFO)
99 AC_SUBST(LT_CURRENT_MINUS_AGE)
101 m4_define([gail_lt_current],[18])
102 m4_define([gail_lt_revision],[1])
103 m4_define([gail_lt_age],[0])
104 m4_define([gail_lt_version_info],[gail_lt_current:gail_lt_revision:gail_lt_age])
105 m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
106 AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
107 AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
110 # gdk-pixbuf gets versioned separately, and for now, using standard
111 # libtool versioning, not GTK+-style versioning
113 GDK_PIXBUF_MAJOR=gtk_major_version
114 GDK_PIXBUF_MINOR=gtk_minor_version
115 GDK_PIXBUF_MICRO=gtk_micro_version
116 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
117 AC_SUBST(GDK_PIXBUF_MAJOR)
118 AC_SUBST(GDK_PIXBUF_MINOR)
119 AC_SUBST(GDK_PIXBUF_MICRO)
120 AC_SUBST(GDK_PIXBUF_VERSION)
122 GETTEXT_PACKAGE=gtk20
123 AC_SUBST(GETTEXT_PACKAGE)
124 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
125 [The prefix for our gettext translation domains.])
130 AC_MSG_CHECKING([for native Win32])
131 LIB_EXE_MACHINE_FLAG=X86
139 LIB_EXE_MACHINE_FLAG=X64
147 AC_MSG_RESULT([$os_win32])
149 AC_SUBST(LIB_EXE_MACHINE_FLAG)
157 dnl Initialize libtool
162 dnl Check for a working C++ compiler, but do not bail out, if none is found.
163 dnl We use this for an automated test for C++ header correctness.
165 AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], gcc)
169 AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=)
170 AM_CONDITIONAL(HAVE_CXX, test "$CXX" != "")
172 gtk_save_cxxflags="$CXXFLAGS"
173 CXXFLAGS="$CXXFLAGS -x objective-c++"
174 AC_TRY_COMPILE([@interface Foo @end],,OBJC=yes,OBJC=no)
175 AM_CONDITIONAL(HAVE_OBJC, test "$OBJC" = "yes")
176 CXXFLAGS="$gtk_save_cxxflags"
179 if test "$os_win32" = "yes"; then
180 if test x$enable_static = xyes -o x$enable_static = x; then
181 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
184 if test x$enable_shared = xno; then
185 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
192 dnl when using libtool 2.x create libtool early, because it's used in configure
193 m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
196 # Make sure we use 64-bit versions of various file stuff.
200 AC_PATH_PROG(NM, nm, nm)
202 dnl Initialize maintainer mode
205 AC_MSG_CHECKING([for some Win32 platform])
207 *-*-mingw*|*-*-cygwin*)
214 AC_MSG_RESULT([$platform_win32])
215 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
217 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
218 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
219 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
221 if test "$os_win32" = "yes"; then
222 AC_CHECK_TOOL(WINDRES, windres, no)
223 if test "$WINDRES" = no; then
224 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
226 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
228 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
230 m4_define([debug_default],
231 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
233 dnl declare --enable-* args and collect ac_help strings
235 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
236 [turn on debugging @<:@default=debug_default@:>@]),,
237 enable_debug=debug_default)
239 [AC_HELP_STRING([--enable-shm],
240 [support shared memory if available [default=yes]])],,
243 [AC_HELP_STRING([--enable-xkb],
244 [support XKB [default=maybe]])],,
245 [enable_xkb="maybe"])
246 AC_ARG_ENABLE(xinerama,
247 [AC_HELP_STRING([--enable-xinerama],
248 [support xinerama extension if available [default=yes]])],,
249 [enable_xinerama="yes"])
250 AC_ARG_ENABLE(rebuilds,
251 [AC_HELP_STRING([--disable-rebuilds],
252 [disable all source autogeneration rules])],,
253 [enable_rebuilds=yes])
254 AC_ARG_ENABLE(visibility,
255 [AC_HELP_STRING([--disable-visibility],
256 [don't use ELF visibility attributes])],,
257 [enable_visibility=yes])
260 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
262 if test "$platform_win32" = yes; then
268 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
269 gdktarget=$with_gdktarget)
273 x11|win32|quartz|directfb) ;;
274 *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
277 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
278 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
280 AC_SUBST(gdktargetlib)
281 AC_SUBST(gtktargetlib)
283 if test "x$enable_debug" = "xyes"; then
284 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
285 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG -DG_ERRORCHECK_MUTEXES"
287 if test "x$enable_debug" = "xno"; then
288 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
290 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
295 if test "x$enable_visibility" = "xno"; then
296 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
300 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}",
301 [Define if debugging is enabled])
304 # Build time sanity check...
307 # Checks for programs.
314 if test "x$GCC" = "xyes"; then
316 *[\ \ ]-Wall[\ \ ]*) ;;
317 *) CFLAGS="$CFLAGS -Wall" ;;
320 if test "x$enable_ansi" = "xyes"; then
322 *[\ \ ]-ansi[\ \ ]*) ;;
323 *) CFLAGS="$CFLAGS -ansi" ;;
327 *[\ \ ]-pedantic[\ \ ]*) ;;
328 *) CFLAGS="$CFLAGS -pedantic" ;;
334 CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
336 # Ensure MSVC-compatible struct packing convention is used when
337 # compiling for Win32 with gcc.
338 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
339 # gcc2 uses "-fnative-struct".
340 if test x"$os_win32" = xyes; then
341 if test x"$GCC" = xyes; then
343 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
344 if test -z "$ac_cv_prog_CC"; then
347 our_gcc="$ac_cv_prog_CC"
349 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
351 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
352 msnative_struct='-fnative-struct'
356 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
357 msnative_struct='-mms-bitfields'
361 if test x"$msnative_struct" = x ; then
362 AC_MSG_RESULT([no way])
363 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
365 CFLAGS="$CFLAGS $msnative_struct"
366 AC_MSG_RESULT([${msnative_struct}])
371 # Honor aclocal flags
372 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
374 ## Initial sanity check, done here so that users get told they
375 ## have the wrong dependencies as early in the process as possible.
376 ## Later on we actually use the cflags/libs from separate pkg-config
377 ## calls. Oh, also the later pkg-config calls don't include
378 ## the version requirements since those make the module lists
379 ## annoying to construct
380 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
381 [glib-2.0 >= glib_required_version dnl
382 atk >= atk_required_version dnl
383 pango >= pango_required_version dnl
384 cairo >= cairo_required_version])
386 ## In addition to checking that cairo is present, we also need to
387 ## check that the correct cairo backend is there. E.g. if the GDK
388 ## target is win32 we need the cairo-win32 backend and so on.
389 cairo_backend=$gdktarget
391 # GDK calls the xlib backend "x11," cairo calls it "xlib." Other
392 # backend names are identical.
393 if test "x$cairo_backend" = "xx11"; then
396 PKG_CHECK_MODULES(CAIRO_BACKEND,
397 [cairo-$cairo_backend >= cairo_required_version])
399 if test "$os_win32" != yes; then
400 # libtool option to control which symbols are exported
401 # right now, symbols starting with _ are not exported
402 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
404 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
405 LIBTOOL_EXPORT_OPTIONS=
407 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
409 dnl ******************************************************
410 dnl * See whether to include shared library dependencies *
411 dnl ******************************************************
413 AC_ARG_ENABLE(explicit-deps,
414 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
415 [use explicit dependencies in .pc files [default=auto]])],,
416 [enable_explicit_deps=auto])
418 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
419 case $enable_explicit_deps in
422 deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
423 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
424 enable_explicit_deps=yes
426 enable_explicit_deps=no
431 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
434 AC_MSG_RESULT($enable_explicit_deps)
436 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
438 # define a MAINT-like variable REBUILD which is set if Perl
439 # and awk are found, so autogenerated sources can be rebuilt
441 AC_PATH_PROGS(PERL, perl5 perl)
443 # We would like indent, but don't require it.
444 AC_CHECK_PROG(INDENT, indent, indent)
447 if test "x$enable_rebuilds" = "xyes" && \
449 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
454 AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
455 AC_CHECK_FUNCS(localtime_r)
457 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
458 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
459 AC_TRY_LINK([#include <langinfo.h>], [
461 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
462 ], gtk_ok=yes, gtk_ok=no)
463 AC_MSG_RESULT($gtk_ok)
464 if test "$gtk_ok" = "yes"; then
465 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
466 [Define if _NL_TIME_FIRST_WEEKDAY is available])
469 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
470 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
471 AC_TRY_LINK([#include <langinfo.h>], [
473 c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
474 ], gtk_ok=yes, gtk_ok=no)
475 AC_MSG_RESULT($gtk_ok)
476 if test "$gtk_ok" = "yes"; then
477 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
478 [Define if _NL_MEASUREMENT_MEASUREMENT is available])
481 # _NL_PAPER_HEIGHT is an enum and not a define
482 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
483 AC_TRY_LINK([#include <langinfo.h>], [
485 c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
486 ], gtk_ok=yes, gtk_ok=no)
487 AC_MSG_RESULT($gtk_ok)
488 if test "$gtk_ok" = "yes"; then
489 AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
490 [Define if _NL_PAPER_HEIGHT is available])
493 # _NL_PAPER_WIDTH is an enum and not a define
494 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
495 AC_TRY_LINK([#include <langinfo.h>], [
497 c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
498 ], gtk_ok=yes, gtk_ok=no)
499 AC_MSG_RESULT($gtk_ok)
500 if test "$gtk_ok" = "yes"; then
501 AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
502 [Define if _NL_PAPER_WIDTH is available])
505 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
506 AC_MSG_CHECKING(for sigsetjmp)
507 AC_TRY_LINK([#include <setjmp.h>], [
510 ], gtk_ok=yes, gtk_ok=no)
511 AC_MSG_RESULT($gtk_ok)
512 if test "$gtk_ok" = "yes"; then
513 AC_DEFINE(HAVE_SIGSETJMP, 1,
514 [Define to 1 if sigsetjmp is available])
518 ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
520 LIBS="$LIBS $INTLLIBS"
521 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
522 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
525 dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
526 dnl po-properties/POTFILES during configure; see GNOME #573515.
528 dnl Generate list of files to be processed by xgettext which will
529 dnl be included in po-properties/Makefile.
530 test -d po-properties || mkdir po-properties
531 if test "x$srcdir" != "x."; then
532 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
533 popropsrcprefix="$srcdir/"
535 popropsrcprefix="../$srcdir/"
538 popropsrcprefix="../"
540 rm -f po-properties/POTFILES
541 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
542 < $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
543 dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
545 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
547 dnl The DU4 header files don't provide library prototypes unless
548 dnl -std1 is given to the native cc.
549 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
553 AC_TRY_RUN([#include <math.h>
554 int main (void) { return (log(1) != log(1.)); }],
555 AC_MSG_RESULT(none needed),
556 gtk_save_CFLAGS="$CFLAGS"
557 CFLAGS="$CFLAGS -std1"
558 AC_TRY_RUN([#include <math.h>
559 int main (void) { return (log(1) != log(1.)); }],
560 AC_MSG_RESULT(-std1),
562 CFLAGS="$gtk_save_CFLAGS"
564 [No ANSI prototypes found in library. (-std1 didn't work.)]),
567 AC_MSG_RESULT(none needed)
571 AC_MSG_CHECKING(for the BeOS)
585 AC_MSG_CHECKING(for HP-UX)
587 hpux9* | hpux10* | hpux11*)
589 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
596 dnl NeXTStep cc seems to need this
597 AC_MSG_CHECKING([for extra flags for POSIX compliance])
598 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
599 AC_MSG_RESULT(none needed),
600 gtk_save_CFLAGS="$CFLAGS"
601 CFLAGS="$CFLAGS -posix"
602 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
603 AC_MSG_RESULT(-posix),
605 CFLAGS="$gtk_save_CFLAGS"
606 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
609 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
612 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
614 AM_PATH_GLIB_2_0(glib_required_version, :,
616 *** GLIB glib_required_version or better is required. The latest version of
617 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
618 gobject gmodule-no-export gthread)
620 # See if it's safe to turn G_DISABLE_DEPRECATED on.
621 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
622 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
623 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
624 CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
627 CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
631 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
634 LIBS="$LIBS $GLIB_LIBS"
635 AC_CHECK_FUNCS(bind_textdomain_codeset)
638 AC_CHECK_HEADERS(pwd.h,
639 AC_DEFINE(HAVE_PWD_H, 1,
640 [Define to 1 if pwd.h is available]))
641 AC_CHECK_HEADERS(sys/time.h,
642 AC_DEFINE(HAVE_SYS_TIME_H, 1,
643 [Define to 1 if time.h is available]))
644 AC_CHECK_HEADERS(unistd.h,
645 AC_DEFINE(HAVE_UNISTD_H, 1,
646 [Define to 1 if unistd.h is available]))
647 AC_CHECK_HEADERS(ftw.h,
648 AC_DEFINE(HAVE_FTW_H, 1,
649 [Define to 1 if ftw.h is available]))
651 AC_MSG_CHECKING([for GNU ftw extensions])
652 AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
654 #include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
655 if test $gtk_ok = yes; then
657 AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
662 saved_cflags="$CFLAGS"
663 saved_ldflags="$LDFLAGS"
666 # Checks for header files.
669 # Checks for typedefs, structures, and compiler characteristics.
672 # Checks for library functions.
676 AC_CHECK_FUNCS(mallinfo)
677 AC_CHECK_FUNCS(getresuid)
680 # Check if <sys/select.h> needs to be included for fd_set
681 AC_MSG_CHECKING([for fd_set])
682 AC_TRY_COMPILE([#include <sys/types.h>],
683 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
684 if test $gtk_ok = yes; then
685 AC_MSG_RESULT([yes, found in sys/types.h])
687 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
688 if test $gtk_ok = yes; then
689 AC_DEFINE(HAVE_SYS_SELECT_H, 1,
690 [Define to 1 if sys/select.h is available])
691 AC_MSG_RESULT([yes, found in sys/select.h])
693 AC_DEFINE(NO_FD_SET, 1,
694 [Define to 1 if fd_set is not available])
699 # `widechar' tests for gdki18n.h
700 AC_MSG_CHECKING(for wchar.h)
701 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
702 if test $gdk_wchar_h = yes; then
703 AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
705 AC_MSG_RESULT($gdk_wchar_h)
707 # Check for wctype.h (for iswalnum)
708 AC_MSG_CHECKING(for wctype.h)
709 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
710 if test $gdk_wctype_h = yes; then
711 AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
713 AC_MSG_RESULT($gdk_wctype_h)
715 # in Solaris 2.5, `iswalnum' is in -lw
717 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
720 LIBS="$LIBS $GDK_WLIBS"
721 # The following is necessary for Linux libc-5.4.38
722 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
723 AC_TRY_LINK([#include <stdlib.h>],[
724 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
725 # ifdef HAVE_WCTYPE_H
733 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
735 iswalnum((wchar_t) 0);
736 ], gdk_working_wctype=yes, gdk_working_wctype=no)
739 if test $gdk_working_wctype = no; then
740 AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
743 AC_MSG_RESULT($gdk_working_wctype)
746 # Check for uxtheme.h (for MS-Windows Engine)
747 AC_MSG_CHECKING(for uxtheme.h)
748 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
749 if test $gtk_uxtheme_h = yes; then
750 AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
752 AC_MSG_RESULT($gtk_uxtheme_h)
754 # Checks for gdkspawn
755 AC_CHECK_HEADERS(crt_externs.h)
756 AC_CHECK_FUNCS(_NSGetEnviron)
759 ##################################################
760 # Checks for gdk-pixbuf
761 ##################################################
763 dnl ********************************************************
764 dnl * See whether we need to load our modules as .la files *
765 dnl ********************************************************
769 *-aix*) use_la_modules=true
772 if $use_la_modules ; then
773 AC_DEFINE(USE_LA_MODULES, 1,
774 [Whether to load modules via .la files rather than directly])
778 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
780 AC_ARG_ENABLE(modules,
781 [AC_HELP_STRING([--disable-modules],
782 [disable dynamic module loading])])
786 if test x$enable_modules = xno; then
790 AC_MSG_CHECKING(whether dynamic modules work)
791 ## for loop is to strip newline
792 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
797 dnl Now we check to see if our libtool supports shared lib deps
798 dnl (in a rather ugly way even)
800 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
801 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
802 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
803 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
804 if test "x$pixbuf_deplibs_check" = "xnone" || \
805 test "x$pixbuf_deplibs_check" = "xunknown" || \
806 test "x$pixbuf_deplibs_check" = "x"; then
812 AC_DEFINE(USE_GMODULE, 1,
813 [Define to 1 if gmodule works and should be used])
820 dnl We allow people to disable image loaders explicitely, but if they don't we error
821 dnl out so that people don't accidentally build without them.
824 [AC_HELP_STRING([--without-libpng],
825 [disable PNG loader for gdk-pixbuf])])
827 [AC_HELP_STRING([--without-libjpeg],
828 [disable JPEG loader for gdk-pixbuf])])
830 [AC_HELP_STRING([--without-libtiff],
831 [disable TIFF loader for gdk-pixbuf])])
832 AC_ARG_WITH(libjasper,
833 [AC_HELP_STRING([--with-libjasper],
834 [enable JPEG2000 loader for gdk-pixbuf])])
836 AC_ARG_ENABLE(gdiplus,
837 [AC_HELP_STRING([--enable-gdiplus],
838 [enble GDI+ loaders for gdk-pixbuf (currently known to be broken)])],,
841 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
844 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
845 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
846 AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
847 [AC_CHECK_HEADER(tiffio.h,
848 TIFF='tiff'; LIBTIFF='-ltiff',
849 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
850 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
851 [AC_CHECK_HEADER(tiffio.h,
852 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
853 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
854 [AC_CHECK_LIB(tiff34, TIFFFlushData,
855 [AC_CHECK_HEADER(tiffio.h,
856 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
857 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
858 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
861 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
863 *** Checks for TIFF loader failed. You can build without it by passing
864 *** --without-libtiff to configure but some programs using GTK+ may
865 *** not work properly])
870 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
871 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
872 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
875 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
876 if test "$jpeg_ok" = yes; then
877 AC_MSG_CHECKING([for jpeglib.h])
883 #include <jpeglib.h>],
886 AC_MSG_RESULT($jpeg_ok)
887 if test "$jpeg_ok" = yes; then
889 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
890 AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
891 [Define to 1 is libjpeg supports progressive JPEG]),
892 AC_MSG_WARN(JPEG library does not support progressive saving.))
894 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
899 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
901 *** Checks for JPEG loader failed. You can build without it by passing
902 *** --without-libjpeg to configure but some programs using GTK+ may
903 *** not work properly])
908 if test x$with_libpng != xno && test -z "$LIBPNG"; then
909 AC_MSG_CHECKING(for libpng12)
910 if $PKG_CONFIG --exists libpng12 ; then
913 PNG_DEP_CFLAGS_PACKAGES=libpng12
914 LIBPNG=`$PKG_CONFIG --libs libpng12`
917 AC_CHECK_LIB(png, png_read_info,
918 [AC_CHECK_HEADER(png.h,
921 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
922 if test "$png_ok" = yes; then
923 AC_MSG_CHECKING([for png_structp in png.h])
924 AC_TRY_COMPILE([#include <png.h>],
925 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
928 AC_MSG_RESULT($png_ok)
929 if test "$png_ok" = yes; then
930 PNG='png'; LIBPNG='-lpng -lz'
932 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
935 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
940 if test x$with_libpng != xno && test -z "$LIBPNG"; then
942 *** Checks for PNG loader failed. You can build without it by passing
943 *** --without-libpng to configure but many programs using GTK+ will
944 *** not work properly. The PNG loader is also needed if you are compiling
948 dnl Test for libjasper
949 if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
950 AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
953 if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
955 *** Checks for JPEG2000 loader failed. You can build without it by passing
956 *** --without-libjasper to configure])
964 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
967 # Allow building some or all gdk-pixbuf loaders included
969 AC_MSG_CHECKING(pixbuf loaders to build)
971 dnl due to an autoconf bug, commas in the first arg to
972 dnl AC_HELP_STRING cause problems.
973 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
974 dnl [build the specified loaders into gdk-pixbuf])
975 AC_ARG_WITH(included_loaders,
976 [ --with-included-loaders=LOADER1,LOADER2,...
977 build the specified loaders into gdk-pixbuf])
982 ## if the option was specified, leave it; otherwise disable included loaders
983 if test x$with_included_loaders = xno; then
984 with_included_loaders=yes
988 # Use the traditional png loader instead of the GDI+ one on Windows,
989 # because some important apps like GIMP need to read and write
990 # arbitrary tEXt chunks which doesn't seem to be possible through GDI+
992 all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm"
993 if test x$with_libjasper != xno; then
994 all_loaders="$all_loaders,jasper"
996 if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
997 # Skip PNG, see comment above
998 gdip_formats="bmp emf gif ico jpeg tiff wmf"
999 for f in $gdip_formats; do
1000 all_loaders="$all_loaders,gdip-$f"
1003 all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
1006 # If no loaders specified, include all
1007 if test "x$with_included_loaders" = xyes ; then
1008 included_loaders="$all_loaders"
1010 included_loaders="$with_included_loaders"
1013 AC_MSG_RESULT($included_loaders)
1015 INCLUDED_LOADER_OBJ=
1016 INCLUDED_LOADER_DEFINE=
1018 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1019 for loader in $included_loaders; do
1020 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
1023 AC_MSG_ERROR([the specified loader $loader does not exist])
1026 loader_underscores=`echo $loader | sed -e 's/-/_/g'`
1027 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
1029 # Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
1032 *) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
1034 eval INCLUDE_$loader_underscores=yes
1037 # Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
1038 # (except gdip-png, which isn't built at all)
1039 if test x"$INCLUDE_gdip_ico" = xyes; then
1040 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
1044 AC_SUBST(INCLUDED_LOADER_OBJ)
1045 AC_SUBST(INCLUDED_LOADER_DEFINE)
1047 AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
1048 AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
1049 AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
1050 AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
1051 AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
1052 AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
1053 AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
1054 AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
1055 AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
1056 AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
1057 AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
1058 AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
1059 AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
1060 AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
1061 AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
1062 AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
1063 # As all GDI+ loaders are either built-in or not, arbitrarily just
1064 # check one of the variables here
1065 AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
1067 if test x$gio_can_sniff = x; then
1068 AC_MSG_CHECKING([if gio can sniff png])
1069 gtk_save_LIBS="$LIBS"
1070 gtk_save_CFLAGS="$CFLAGS"
1071 LIBS="`$PKG_CONFIG --libs gio-2.0`"
1072 CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
1073 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1074 #include <gio/gio.h>
1075 static const gsize data_size = 159;
1076 static const guint8 data[] =
1078 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
1079 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
1080 0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00,
1081 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00,
1082 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00,
1083 0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74,
1084 0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8,
1085 0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f,
1086 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
1087 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57,
1088 0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08,
1089 0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc,
1090 0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
1094 main (int argc, char **argv)
1098 content_type = g_content_type_guess (NULL, data, data_size, NULL);
1099 image_png = g_content_type_from_mime_type ("image/png");
1100 return !!strcmp (content_type, image_png);
1103 AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
1105 AC_MSG_RESULT($gio_can_sniff)
1106 LIBS="$gtk_save_LIBS"
1107 CFLAGS="$gtk_save_CFLAGS"
1111 # Allow building some or all immodules included
1113 AC_MSG_CHECKING(immodules to build)
1115 dnl due to an autoconf bug, commas in the first arg to
1116 dnl AC_HELP_STRING cause problems.
1117 dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
1118 dnl [build the specified input method modules into gtk])
1119 AC_ARG_WITH(included_immodules,
1120 [ --with-included-immodules=MODULE1,MODULE2,...
1121 build the specified input methods into gtk])
1126 ## if the option was specified, leave it; otherwise disable included immodules
1127 if test x$with_included_immodules = xno; then
1128 with_included_immodules=yes
1132 all_immodules="am-et,cedilla,cyrillic-translit"
1133 if test "$gdktarget" = "win32"; then
1134 all_immodules="${all_immodules},ime"
1136 all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
1137 if test "$gdktarget" = "x11"; then
1138 all_immodules="${all_immodules},xim"
1141 included_immodules=""
1142 # If the switch specified without listing any specific ones, include all
1143 if test "x$with_included_immodules" = xyes ; then
1144 included_immodules="$all_immodules"
1146 included_immodules="$with_included_immodules"
1149 AC_MSG_RESULT($included_immodules)
1150 AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
1152 INCLUDED_IMMODULE_OBJ=
1153 INCLUDED_IMMODULE_DEFINE=
1155 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1156 for immodule in $included_immodules; do
1157 immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
1158 if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
1161 AC_MSG_ERROR([the specified input method $immodule does not exist])
1164 INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
1165 INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
1166 eval INCLUDE_$immodule_underscores=yes
1169 AC_SUBST(INCLUDED_IMMODULE_OBJ)
1170 AC_SUBST(INCLUDED_IMMODULE_DEFINE)
1172 AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
1173 AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
1174 AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
1175 AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
1176 AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
1177 AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
1178 AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
1179 AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
1180 AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
1181 AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
1182 AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
1183 AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
1189 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
1190 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
1191 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
1192 AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
1196 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
1197 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
1199 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
1200 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
1202 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
1203 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
1205 if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
1206 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
1209 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
1212 # Checks to see whether we should include mediaLib
1215 AC_CHECK_HEADER(sys/systeminfo.h,
1216 AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1,
1217 [Define to 1 if sys/systeminfo.h is available]))
1218 AC_CHECK_HEADER(sys/sysinfo.h,
1219 AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
1220 [Define to 1 if sys/sysinfo.h is available]))
1222 AC_MSG_CHECKING(for mediaLib 2.3)
1224 # Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
1226 AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
1227 if test $use_mlib = yes; then
1228 AC_DEFINE(USE_MEDIALIB, 1,
1229 [Define to 1 if medialib is available and should be used])
1232 AC_MSG_CHECKING(for mediaLib 2.5)
1233 # Check for a mediaLib 2.5 function since that is what is needed for
1234 # gdk_rgb_convert integration.
1235 AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
1236 if test $use_mlib25 = yes; then
1237 AC_DEFINE(USE_MEDIALIB25, 1,
1238 [Define to 1 if medialib 2.5 is available])
1241 AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
1242 AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
1244 # Checks to see if we should compile in MMX support (there will be
1245 # a runtime test when the code is actually run to see if it should
1246 # be used - this just checks if we can compile it.)
1248 # This code is partially taken from Mesa
1250 AC_MSG_CHECKING(for x86 platform)
1252 i386|i486|i586|i686|i786|k6|k7)
1258 AC_MSG_RESULT($use_x86_asm)
1261 if test $use_x86_asm = yes; then
1265 AC_MSG_CHECKING(compiler support for MMX)
1266 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1267 if AC_TRY_EVAL(ac_compile); then
1274 if test $use_mmx_asm = yes; then
1275 AC_DEFINE(USE_MMX, 1,
1276 [Define to 1 if XXM is available and should be used])
1283 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1286 if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
1290 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1292 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1294 if test $cross_compiling = yes; then
1295 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1296 AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
1297 if test x$GTK_UPDATE_ICON_CACHE = xno; then
1302 if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
1303 test "x$REBUILD_PNGS" = "x#" ; then
1305 *** gtkbuiltincache.h is not in the tree, and cannot be built
1306 *** because you don't have libpng, or (when cross-compiling) you
1307 *** don't have a prebuilt gtk-update-icon-cache on the build system.])
1310 AC_SUBST(REBUILD_PNGS)
1312 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
1313 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
1314 GDK_PIXBUF_EXTRA_CFLAGS=
1315 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1316 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1318 ########################################
1319 # Windowing system checks
1320 ########################################
1322 GDK_PIXBUF_XLIB_PACKAGES=
1323 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1324 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1326 GDK_EXTRA_LIBS="$GDK_WLIBS"
1329 # GTK+ uses some X calls, so needs to link against X directly
1330 GTK_DEP_PACKAGES_FOR_X=
1333 if test "x$gdktarget" = "xx11"; then
1334 X_PACKAGES=fontconfig
1337 # We use fontconfig very peripherally when decoding the default
1340 if $PKG_CONFIG --exists fontconfig; then : ; else
1342 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1346 # Check for basic X packages; we use pkg-config if available
1348 if $PKG_CONFIG --exists x11 xext xrender; then
1350 X_PACKAGES="$X_PACKAGES x11 xext xrender"
1351 x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1352 X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1354 # Strip out any .la files that pkg-config might give us (this happens
1355 # with -uninstalled.pc files)
1357 for I in $x_libs ; do
1360 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1364 GDK_PIXBUF_XLIB_PACKAGES="x11"
1365 GTK_PACKAGES_FOR_X="x11"
1367 have_base_x_pc=false
1369 if test x$no_x = xyes ; then
1370 AC_MSG_ERROR([X development libraries not found])
1373 x_cflags="$X_CFLAGS"
1374 x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1376 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1377 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1378 GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1381 # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1384 gtk_save_cppflags="$CPPFLAGS"
1385 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1388 LIBS="$x_libs_for_checks $LIBS"
1390 # Sanity check for the X11 and Xext libraries. While everything we need from
1391 # Xext is optional, the chances a system has *none* of these things is so
1392 # small that we just unconditionally require it.
1393 AC_CHECK_FUNC(XOpenDisplay, :,
1394 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1395 AC_CHECK_FUNC(XextFindDisplay, :,
1396 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1397 AC_CHECK_FUNC(XRenderQueryExtension, :,
1398 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1402 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1403 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1405 [AC_MSG_RESULT([no])],
1406 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1407 #include <X11/Xlibint.h>],
1409 [AC_MSG_RESULT([yes])
1410 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1411 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1412 [AC_MSG_RESULT([unknown])
1413 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1415 # Check for XConvertCase, XInternAtoms (X11R6 specific)
1417 AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1419 # Generic X11R6 check needed for XIM support; we could
1420 # probably use this to replace the above, but we'll
1421 # leave the separate checks for XConvertCase and XInternAtoms
1425 AC_CHECK_FUNC(XAddConnectionWatch,
1428 if $have_x11r6; then
1429 AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1431 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1433 # Check for XKB support.
1435 if test "x$enable_xkb" = "xyes"; then
1436 AC_MSG_WARN(XKB support explicitly enabled)
1437 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1438 elif test "x$enable_xkb" = "xmaybe"; then
1439 AC_CHECK_FUNC(XkbQueryExtension,
1440 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1442 AC_MSG_WARN(XKB support explicitly disabled)
1445 # Check for shaped window extension
1447 AC_CHECK_FUNC(XShapeCombineMask, :,
1448 [AC_MSG_ERROR([Shape extension not found, check your development headers])])
1451 gtk_save_CFLAGS="$CFLAGS"
1452 CFLAGS="$CFLAGS $x_cflags"
1454 AC_CHECK_FUNC(XSyncQueryExtension,
1455 [AC_CHECK_HEADER(X11/extensions/sync.h,
1456 AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1457 :, [#include <X11/Xlib.h>])])
1459 CFLAGS="$gtk_save_CFLAGS"
1463 if test "x$enable_shm" = "xyes"; then
1464 # Check for the XShm extension, normally in Xext
1465 AC_CHECK_FUNC(XShmAttach,
1467 # On AIX, it is in XextSam instead
1468 [AC_CHECK_LIB(XextSam, XShmAttach,
1469 [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1472 if test "x$enable_shm" = "xyes"; then
1473 # Check for shared memory
1474 AC_CHECK_HEADER(sys/ipc.h,
1475 AC_DEFINE(HAVE_IPC_H, 1,
1476 [Define to 1 if ipc.h is available]),
1478 AC_CHECK_HEADER(sys/shm.h,
1479 AC_DEFINE(HAVE_SHM_H, 1,
1480 [Define to 1 if shm.h is available]),
1483 # Check for the X shared memory extension header file
1485 AC_MSG_CHECKING(X11/extensions/XShm.h)
1486 if test "x$no_xext_lib" = "xyes"; then
1489 gtk_save_CFLAGS="$CFLAGS"
1490 CFLAGS="$CFLAGS $x_cflags"
1493 #include <sys/types.h>
1494 #include <sys/ipc.h>
1495 #include <sys/shm.h>
1496 #include <X11/Xlib.h>
1497 #include <X11/Xutil.h>
1498 #include <X11/extensions/XShm.h>
1499 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1500 CFLAGS="$gtk_save_CFLAGS"
1502 AC_MSG_RESULT($have_xshm)
1503 if test $have_xshm = yes ; then
1504 AC_DEFINE(HAVE_XSHM_H, 1,
1505 [Define to 1 if xshm.h is available])
1509 if test "x$enable_xinerama" = "xyes"; then
1510 # Check for Xinerama extension (Solaris impl or Xfree impl)
1511 gtk_save_cppflags="$CPPFLAGS"
1512 CPPFLAGS="$CPPFLAGS $x_cflags"
1515 AC_MSG_CHECKING(for Xinerama support on XFree86)
1517 have_xfree_xinerama=false
1518 if $PKG_CONFIG --exists xinerama ; then
1519 have_xfree_xinerama=true
1520 X_PACKAGES="$X_PACKAGES xinerama"
1522 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1523 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1524 [GTK_ADD_LIB(x_extra_libs,Xinerama)
1525 have_xfree_xinerama=true], :,
1526 [#include <X11/Xlib.h>])])
1529 if $have_xfree_xinerama ; then
1530 AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1531 [Define to 1 if XFree Xinerama is available])
1532 AC_DEFINE(HAVE_XINERAMA, 1,
1533 [Define to 1 is Xinerama is available])
1541 AC_MSG_CHECKING(for Xinerama support on Solaris)
1543 have_solaris_xinerama=false
1544 AC_CHECK_FUNC(XineramaGetInfo,
1545 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1546 [have_solaris_xinerama=true], :,
1547 [#include <X11/Xlib.h>])])
1549 if $have_solaris_xinerama ; then
1550 AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1551 [Define to 1 if solaris xinerama is available])
1552 AC_DEFINE(HAVE_XINERAMA, 1,
1553 [Define to 1 if xinerama is available])
1565 # set up things for XInput
1567 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1568 AC_DEFINE(XINPUT_XFREE, 1,
1569 [Define to 1 if XFree XInput should be used])
1571 if $PKG_CONFIG --exists xi ; then
1572 X_PACKAGES="$X_PACKAGES xi"
1574 GTK_ADD_LIB(x_extra_libs, Xi)
1577 AC_DEFINE(XINPUT_NONE, 1,
1578 [Define to 1 if no XInput should be used])
1581 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1583 # Check for the RANDR extension
1584 if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
1585 AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1587 X_PACKAGES="$X_PACKAGES xrandr"
1590 # Checks for Xcursor library
1592 if $PKG_CONFIG --exists xcursor ; then
1593 AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1595 X_PACKAGES="$X_PACKAGES xcursor"
1598 # Checks for XFixes extension
1600 if $PKG_CONFIG --exists xfixes ; then
1601 AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1603 X_PACKAGES="$X_PACKAGES xfixes"
1604 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1607 # Checks for Xcomposite extension
1609 if $PKG_CONFIG --exists xcomposite ; then
1610 AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1612 X_PACKAGES="$X_PACKAGES xcomposite"
1613 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1616 # Checks for Xdamage extension
1618 if $PKG_CONFIG --exists xdamage ; then
1619 AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1621 X_PACKAGES="$X_PACKAGES xdamage"
1622 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1625 if $have_base_x_pc ; then
1626 GDK_EXTRA_LIBS="$x_extra_libs"
1628 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1631 CPPFLAGS="$gtk_save_cppflags"
1632 LIBS="$gtk_save_libs"
1634 AM_CONDITIONAL(USE_X11, true)
1638 AM_CONDITIONAL(XINPUT_XFREE, false)
1639 AM_CONDITIONAL(USE_X11, false)
1640 AM_CONDITIONAL(HAVE_X11R6, false)
1643 if test "x$gdktarget" = "xwin32"; then
1644 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1645 AM_CONDITIONAL(USE_WIN32, true)
1647 AM_CONDITIONAL(USE_WIN32, false)
1650 if test "x$gdktarget" = "xquartz"; then
1651 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1652 AM_CONDITIONAL(USE_QUARTZ, true)
1654 AM_CONDITIONAL(USE_QUARTZ, false)
1657 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1658 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"
1660 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1661 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1662 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1663 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1664 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1666 if test "x$gdktarget" = "xdirectfb"; then
1667 DIRECTFB_REQUIRED_VERSION=1.0.0
1668 AC_MSG_CHECKING(for DirectFB)
1670 PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
1671 AM_CONDITIONAL(USE_DIRECTFB, true)
1673 AM_CONDITIONAL(USE_DIRECTFB, false)
1677 # Check for Pango flags
1679 if test "x$gdktarget" = "xwin32"; then
1680 PANGO_PACKAGES="pangowin32 pangocairo"
1682 PANGO_PACKAGES="pango pangocairo"
1685 AC_MSG_CHECKING(Pango flags)
1686 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1687 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1688 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1690 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1693 *** Pango not found. Pango built with Cairo support is required
1694 *** to build GTK+. See http://www.pango.org for Pango information.
1698 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1700 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1703 gtk_save_LIBS="$LIBS"
1704 LIBS="$PANGO_LIBS $LIBS"
1705 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1706 *** Can't link to Pango. Pango is required to build
1707 *** GTK+. For more information see http://www.pango.org]))
1708 LIBS="$gtk_save_LIBS"
1711 CFLAGS="$saved_cflags"
1712 LDFLAGS="$saved_ldflags"
1714 GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 $X_PACKAGES cairo-$cairo_backend"
1715 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1716 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1718 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1719 # into the pkg-config files
1721 if test $enable_explicit_deps != yes ; then
1722 GDK_PACKAGES="$PANGO_PACKAGES"
1726 AC_SUBST(GDK_PACKAGES)
1727 AC_SUBST(GDK_EXTRA_LIBS)
1728 AC_SUBST(GDK_EXTRA_CFLAGS)
1729 AC_SUBST(GDK_DEP_LIBS)
1730 AC_SUBST(GDK_DEP_CFLAGS)
1733 ########################################
1734 # Check for Accessibility Toolkit flags
1735 ########################################
1738 AC_MSG_CHECKING(ATK flags)
1739 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1740 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1741 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1743 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1746 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1751 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1754 gtk_save_LIBS="$LIBS"
1755 LIBS="$ATK_LIBS $LIBS"
1756 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1757 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1758 *** to build GTK+]))
1759 LIBS="$gtk_save_LIBS"
1762 GTK_PACKAGES="atk cairo gio-2.0"
1763 if test "x$gdktarget" = "xx11"; then
1764 GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1768 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"
1769 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"
1771 if test x"$os_win32" = xyes; then
1772 GTK_EXTRA_CFLAGS="$msnative_struct"
1775 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1776 ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1777 PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1778 CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1780 if test $enable_explicit_deps != yes ; then
1781 GDK_PIXBUF_EXTRA_LIBS=
1784 AC_SUBST(GDK_PIXBUF_PACKAGES)
1785 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1786 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1787 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1788 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1790 AC_SUBST(GTK_PACKAGES)
1791 AC_SUBST(GTK_EXTRA_LIBS)
1792 AC_SUBST(GTK_EXTRA_CFLAGS)
1793 AC_SUBST(GTK_DEP_LIBS)
1794 AC_SUBST(GTK_DEP_CFLAGS)
1796 AC_SUBST(GLIB_PREFIX)
1797 AC_SUBST(ATK_PREFIX)
1798 AC_SUBST(PANGO_PREFIX)
1799 AC_SUBST(CAIRO_PREFIX)
1801 AC_SUBST(GTK_DEBUG_FLAGS)
1802 AC_SUBST(GTK_XIM_FLAGS)
1804 ########################
1805 # Checks needed for gail
1806 ########################
1809 dnl Checks for inet libraries:
1810 AC_SEARCH_LIBS(gethostent, nsl)
1811 AC_SEARCH_LIBS(setsockopt, socket)
1812 AC_SEARCH_LIBS(connect, inet)
1814 dnl check for the sockaddr_un.sun_len member
1815 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1816 [struct_sockaddr_un_sun_len=true],
1817 [struct_sockaddr_un_suin_len=false],
1818 [#include <sys/types.h>
1819 #include <sys/un.h>]
1821 case $struct_sockaddr_un_sun_len in
1823 AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1824 [Have the sockaddr_un.sun_len member])
1830 GAIL_INET_LIBS="$LIBS"
1831 AC_SUBST([GAIL_INET_LIBS])
1835 ################################################################
1836 # Printing system checks
1837 ################################################################
1840 [AC_HELP_STRING([--disable-cups]
1841 [disable cups print backend])],,
1844 if test "x$enable_cups" = "xno"; then
1845 AM_CONDITIONAL(HAVE_CUPS, false)
1847 AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1848 if test "x$CUPS_CONFIG" = "xno"; then
1849 if test "x$enable_cups" = "xauto"; then
1850 AM_CONDITIONAL(HAVE_CUPS, false)
1857 CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1858 CUPS_LIBS=`$CUPS_CONFIG --libs`
1860 CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1861 CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1862 CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1864 if test $CUPS_API_MAJOR -gt 1 -o \
1865 $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1866 AC_DEFINE(HAVE_CUPS_API_1_2, 1,
1867 [Define to 1 if CUPS 1.2 API is available])
1870 AC_SUBST(CUPS_API_MAJOR)
1871 AC_SUBST(CUPS_API_MINOR)
1872 AC_SUBST(CUPS_CFLAGS)
1875 AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1877 AM_CONDITIONAL(HAVE_CUPS, true)
1879 gtk_save_cflags="$CFLAGS"
1880 CFLAGS="$CUPS_CFLAGS"
1881 AC_TRY_COMPILE([#include <cups/http.h>],
1882 [http_t http; char *s = http.authstring;],
1883 [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1884 [Define if cups http_t authstring field is accessible])],)
1885 CFLAGS="$gtk_save_cflags"
1887 AC_SUBST(HAVE_HTTP_AUTHSTRING)
1889 gtk_save_libs="$LIBS"
1891 AC_CHECK_FUNCS(httpGetAuthString)
1892 LIBS="$gtk_save_libs"
1896 # Checks to see if we should compile with PAPI backend for GTK+
1900 [AC_HELP_STRING([--disable-papi]
1901 [disable papi print backend])],,
1904 if test "x$enable_papi" = "xno"; then
1905 AM_CONDITIONAL(HAVE_PAPI, false)
1907 AC_MSG_CHECKING(libpapi)
1908 AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
1909 if test $have_papi = yes; then
1910 AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
1912 AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
1913 if test "x$enable_papi" = "xyes" -a "x$have_papi" = "xno"; then
1920 AM_CONDITIONAL(HAVE_PAPI_CUPS, test "x$have_papi" = "xyes" -a "x$CUPS_CONFIG" != "xno")
1922 gtk_save_cppflags="$CPPFLAGS"
1923 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
1925 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1926 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1927 *** backend enabled.]))
1929 if test "$os_win32" != "yes"; then
1930 AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1931 *** Can't find cairo-ps.h. You must build Cairo with the
1932 *** postscript backend enabled.]))
1935 CPPFLAGS="$gtk_save_cppflags"
1938 AC_ARG_ENABLE(test-print-backend,
1939 [AC_HELP_STRING([--enable-test-print-backend],
1940 [build test print backend])],,
1941 [enable_test_print_backend=no])
1942 AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1945 ################################################################
1946 # Strip -export-dynamic from the link lines of various libraries
1947 ################################################################
1950 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1951 # but this flag is only meaningful for executables. For libraries
1952 # the effect is undefined; what it causes on Linux is that the
1953 # export list from -export-symbols-regex is ignored and everything
1956 # We are using gmodule-no-export now, but I'm leaving the stripping
1957 # code in place for now, since pango and atk still require gmodule.
1959 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1960 if test -n "$export_dynamic"; then
1961 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1962 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1963 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1964 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1968 ##################################################
1969 # Checks for gtk-doc and docbook-tools
1970 ##################################################
1972 GTK_DOC_CHECK([1.11])
1974 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1975 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1978 [AC_HELP_STRING([--enable-man],
1979 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1982 if test "${enable_man}" != no; then
1984 dnl Check for xsltproc
1986 AC_PATH_PROG([XSLTPROC], [xsltproc])
1987 if test -z "$XSLTPROC"; then
1991 dnl check for DocBook DTD and stylesheets in the local catalog.
1992 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1993 [DocBook XML DTD V4.1.2],,enable_man=no)
1994 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1995 [DocBook XSL Stylesheets],,enable_man=no)
1998 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
2001 ##################################################
2003 ##################################################
2005 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
2006 outfile=gdkconfig.h-tmp
2007 cat > $outfile <<\_______EOF
2010 * This is a generated file. Please modify `configure.in'
2018 #endif /* __cplusplus */
2021 /* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
2022 # ifdef GSEAL_ENABLE
2023 # define GSEAL(ident) _g_sealed__ ## ident
2025 # define GSEAL(ident) ident
2031 cat >>$outfile <<_______EOF
2036 cat >>$outfile <<_______EOF
2040 #endif /* __cplusplus */
2042 #endif /* GDKCONFIG_H */
2046 if cmp -s $outfile gdk/gdkconfig.h; then
2047 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
2050 mv $outfile gdk/gdkconfig.h
2053 if test "x$gdktarget" = "xx11" ; then
2055 #define GDK_WINDOWING_X11'
2056 elif test "x$gdktarget" = "xwin32" ; then
2058 #define GDK_NATIVE_WINDOW_POINTER
2060 #define GDK_WINDOWING_WIN32'
2061 elif test "x$gdktarget" = "xquartz" ; then
2063 #define GDK_WINDOWING_QUARTZ'
2064 elif test "x$gdktarget" = "xdirectfb" ; then
2066 #define GDK_WINDOWING_DIRECTFB'
2069 if test x$gdk_wchar_h = xyes; then
2071 #define GDK_HAVE_WCHAR_H 1'
2073 if test x$gdk_wctype_h = xyes; then
2075 #define GDK_HAVE_WCTYPE_H 1"
2077 if test x$gdk_working_wctype = xno; then
2079 #define GDK_HAVE_BROKEN_WCTYPE 1"
2092 gtk+-unix-print-2.0.pc
2094 gdk-pixbuf-2.0-uninstalled.pc
2095 gdk-2.0-uninstalled.pc
2096 gtk+-2.0-uninstalled.pc
2100 po-properties/Makefile.in
2102 demos/gtk-demo/Makefile
2103 demos/gtk-demo/geninclude.pl
2106 docs/reference/Makefile
2107 docs/reference/gdk-pixbuf/Makefile
2108 docs/reference/gdk-pixbuf/version.xml
2109 docs/reference/gdk/Makefile
2110 docs/reference/gdk/version.xml
2111 docs/reference/gtk/Makefile
2112 docs/reference/gtk/version.xml
2113 docs/reference/libgail-util/Makefile
2116 docs/tutorial/Makefile
2118 gdk-pixbuf/gdk_pixbuf.rc
2119 gdk-pixbuf/gdk-pixbuf-features.h
2120 gdk-pixbuf/pixops/Makefile
2124 gdk/win32/rc/Makefile
2127 gdk/directfb/Makefile
2133 gtk/theme-bits/Makefile
2136 modules/other/Makefile
2137 modules/other/gail/Makefile
2138 modules/other/gail/libgail-util/Makefile
2139 modules/other/gail/tests/Makefile
2140 modules/engines/Makefile
2141 modules/engines/pixbuf/Makefile
2142 modules/engines/ms-windows/Makefile
2143 modules/engines/ms-windows/Theme/Makefile
2144 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
2145 modules/input/Makefile
2146 modules/printbackends/Makefile
2147 modules/printbackends/cups/Makefile
2148 modules/printbackends/lpr/Makefile
2149 modules/printbackends/file/Makefile
2150 modules/printbackends/papi/Makefile
2151 modules/printbackends/test/Makefile
2154 contrib/gdk-pixbuf-xlib/Makefile
2155 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
2160 echo "configuration: