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], [19])
15 m4_define([gtk_micro_version], [0])
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.
315 if test "x$GCC" = "xyes"; then
317 *[\ \ ]-Wall[\ \ ]*) ;;
318 *) CFLAGS="$CFLAGS -Wall" ;;
321 if test "x$enable_ansi" = "xyes"; then
323 *[\ \ ]-ansi[\ \ ]*) ;;
324 *) CFLAGS="$CFLAGS -ansi" ;;
328 *[\ \ ]-pedantic[\ \ ]*) ;;
329 *) CFLAGS="$CFLAGS -pedantic" ;;
335 CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
337 # Ensure MSVC-compatible struct packing convention is used when
338 # compiling for Win32 with gcc.
339 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
340 # gcc2 uses "-fnative-struct".
341 if test x"$os_win32" = xyes; then
342 if test x"$GCC" = xyes; then
344 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
345 if test -z "$ac_cv_prog_CC"; then
348 our_gcc="$ac_cv_prog_CC"
350 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
352 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
353 msnative_struct='-fnative-struct'
357 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
358 msnative_struct='-mms-bitfields'
362 if test x"$msnative_struct" = x ; then
363 AC_MSG_RESULT([no way])
364 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
366 CFLAGS="$CFLAGS $msnative_struct"
367 AC_MSG_RESULT([${msnative_struct}])
372 # Honor aclocal flags
373 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
375 ## Initial sanity check, done here so that users get told they
376 ## have the wrong dependencies as early in the process as possible.
377 ## Later on we actually use the cflags/libs from separate pkg-config
378 ## calls. Oh, also the later pkg-config calls don't include
379 ## the version requirements since those make the module lists
380 ## annoying to construct
381 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
382 [glib-2.0 >= glib_required_version dnl
383 atk >= atk_required_version dnl
384 pango >= pango_required_version dnl
385 cairo >= cairo_required_version])
387 ## In addition to checking that cairo is present, we also need to
388 ## check that the correct cairo backend is there. E.g. if the GDK
389 ## target is win32 we need the cairo-win32 backend and so on.
390 cairo_backend=$gdktarget
392 # GDK calls the xlib backend "x11," cairo calls it "xlib." Other
393 # backend names are identical.
394 if test "x$cairo_backend" = "xx11"; then
397 PKG_CHECK_MODULES(CAIRO_BACKEND,
398 [cairo-$cairo_backend >= cairo_required_version])
400 if test "$os_win32" != yes; then
401 # libtool option to control which symbols are exported
402 # right now, symbols starting with _ are not exported
403 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
405 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
406 LIBTOOL_EXPORT_OPTIONS=
408 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
410 dnl ******************************************************
411 dnl * See whether to include shared library dependencies *
412 dnl ******************************************************
414 AC_ARG_ENABLE(explicit-deps,
415 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
416 [use explicit dependencies in .pc files [default=auto]])],,
417 [enable_explicit_deps=auto])
419 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
420 case $enable_explicit_deps in
423 deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
424 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
425 enable_explicit_deps=yes
427 enable_explicit_deps=no
432 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
435 AC_MSG_RESULT($enable_explicit_deps)
437 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
439 # define a MAINT-like variable REBUILD which is set if Perl
440 # and awk are found, so autogenerated sources can be rebuilt
442 AC_PATH_PROGS(PERL, perl5 perl)
444 # We would like indent, but don't require it.
445 AC_CHECK_PROG(INDENT, indent, indent)
448 if test "x$enable_rebuilds" = "xyes" && \
450 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
455 AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
456 AC_CHECK_FUNCS(localtime_r)
458 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
459 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
460 AC_TRY_LINK([#include <langinfo.h>], [
462 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
463 ], gtk_ok=yes, gtk_ok=no)
464 AC_MSG_RESULT($gtk_ok)
465 if test "$gtk_ok" = "yes"; then
466 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
467 [Define if _NL_TIME_FIRST_WEEKDAY is available])
470 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
471 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
472 AC_TRY_LINK([#include <langinfo.h>], [
474 c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
475 ], gtk_ok=yes, gtk_ok=no)
476 AC_MSG_RESULT($gtk_ok)
477 if test "$gtk_ok" = "yes"; then
478 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
479 [Define if _NL_MEASUREMENT_MEASUREMENT is available])
482 # _NL_PAPER_HEIGHT is an enum and not a define
483 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
484 AC_TRY_LINK([#include <langinfo.h>], [
486 c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
487 ], gtk_ok=yes, gtk_ok=no)
488 AC_MSG_RESULT($gtk_ok)
489 if test "$gtk_ok" = "yes"; then
490 AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
491 [Define if _NL_PAPER_HEIGHT is available])
494 # _NL_PAPER_WIDTH is an enum and not a define
495 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
496 AC_TRY_LINK([#include <langinfo.h>], [
498 c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
499 ], gtk_ok=yes, gtk_ok=no)
500 AC_MSG_RESULT($gtk_ok)
501 if test "$gtk_ok" = "yes"; then
502 AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
503 [Define if _NL_PAPER_WIDTH is available])
506 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
507 AC_MSG_CHECKING(for sigsetjmp)
508 AC_TRY_LINK([#include <setjmp.h>], [
511 ], gtk_ok=yes, gtk_ok=no)
512 AC_MSG_RESULT($gtk_ok)
513 if test "$gtk_ok" = "yes"; then
514 AC_DEFINE(HAVE_SIGSETJMP, 1,
515 [Define to 1 if sigsetjmp is available])
519 ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
521 LIBS="$LIBS $INTLLIBS"
522 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
523 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
526 dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
527 dnl po-properties/POTFILES during configure; see GNOME #573515.
529 dnl Generate list of files to be processed by xgettext which will
530 dnl be included in po-properties/Makefile.
531 test -d po-properties || mkdir po-properties
532 if test "x$srcdir" != "x."; then
533 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
534 popropsrcprefix="$srcdir/"
536 popropsrcprefix="../$srcdir/"
539 popropsrcprefix="../"
541 rm -f po-properties/POTFILES
542 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
543 < $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
544 dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
546 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
548 dnl The DU4 header files don't provide library prototypes unless
549 dnl -std1 is given to the native cc.
550 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
554 AC_TRY_RUN([#include <math.h>
555 int main (void) { return (log(1) != log(1.)); }],
556 AC_MSG_RESULT(none needed),
557 gtk_save_CFLAGS="$CFLAGS"
558 CFLAGS="$CFLAGS -std1"
559 AC_TRY_RUN([#include <math.h>
560 int main (void) { return (log(1) != log(1.)); }],
561 AC_MSG_RESULT(-std1),
563 CFLAGS="$gtk_save_CFLAGS"
565 [No ANSI prototypes found in library. (-std1 didn't work.)]),
568 AC_MSG_RESULT(none needed)
572 AC_MSG_CHECKING(for the BeOS)
586 AC_MSG_CHECKING(for HP-UX)
588 hpux9* | hpux10* | hpux11*)
590 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
597 dnl NeXTStep cc seems to need this
598 AC_MSG_CHECKING([for extra flags for POSIX compliance])
599 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
600 AC_MSG_RESULT(none needed),
601 gtk_save_CFLAGS="$CFLAGS"
602 CFLAGS="$CFLAGS -posix"
603 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
604 AC_MSG_RESULT(-posix),
606 CFLAGS="$gtk_save_CFLAGS"
607 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
610 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
613 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
615 AM_PATH_GLIB_2_0(glib_required_version, :,
617 *** GLIB glib_required_version or better is required. The latest version of
618 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
619 gobject gmodule-no-export gthread)
621 # See if it's safe to turn G_DISABLE_DEPRECATED on.
622 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
623 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
624 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
625 CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
628 CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
632 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
635 LIBS="$LIBS $GLIB_LIBS"
636 AC_CHECK_FUNCS(bind_textdomain_codeset)
639 AC_CHECK_HEADERS(pwd.h,
640 AC_DEFINE(HAVE_PWD_H, 1,
641 [Define to 1 if pwd.h is available]))
642 AC_CHECK_HEADERS(sys/time.h,
643 AC_DEFINE(HAVE_SYS_TIME_H, 1,
644 [Define to 1 if time.h is available]))
645 AC_CHECK_HEADERS(unistd.h,
646 AC_DEFINE(HAVE_UNISTD_H, 1,
647 [Define to 1 if unistd.h is available]))
648 AC_CHECK_HEADERS(ftw.h,
649 AC_DEFINE(HAVE_FTW_H, 1,
650 [Define to 1 if ftw.h is available]))
652 AC_MSG_CHECKING([for GNU ftw extensions])
653 AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
655 #include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
656 if test $gtk_ok = yes; then
658 AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
663 saved_cflags="$CFLAGS"
664 saved_ldflags="$LDFLAGS"
667 # Checks for header files.
670 # Checks for typedefs, structures, and compiler characteristics.
673 # Checks for library functions.
677 AC_CHECK_FUNCS(mallinfo)
678 AC_CHECK_FUNCS(getresuid)
681 # Check if <sys/select.h> needs to be included for fd_set
682 AC_MSG_CHECKING([for fd_set])
683 AC_TRY_COMPILE([#include <sys/types.h>],
684 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
685 if test $gtk_ok = yes; then
686 AC_MSG_RESULT([yes, found in sys/types.h])
688 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
689 if test $gtk_ok = yes; then
690 AC_DEFINE(HAVE_SYS_SELECT_H, 1,
691 [Define to 1 if sys/select.h is available])
692 AC_MSG_RESULT([yes, found in sys/select.h])
694 AC_DEFINE(NO_FD_SET, 1,
695 [Define to 1 if fd_set is not available])
700 # `widechar' tests for gdki18n.h
701 AC_MSG_CHECKING(for wchar.h)
702 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
703 if test $gdk_wchar_h = yes; then
704 AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
706 AC_MSG_RESULT($gdk_wchar_h)
708 # Check for wctype.h (for iswalnum)
709 AC_MSG_CHECKING(for wctype.h)
710 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
711 if test $gdk_wctype_h = yes; then
712 AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
714 AC_MSG_RESULT($gdk_wctype_h)
716 # in Solaris 2.5, `iswalnum' is in -lw
718 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
721 LIBS="$LIBS $GDK_WLIBS"
722 # The following is necessary for Linux libc-5.4.38
723 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
724 AC_TRY_LINK([#include <stdlib.h>],[
725 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
726 # ifdef HAVE_WCTYPE_H
734 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
736 iswalnum((wchar_t) 0);
737 ], gdk_working_wctype=yes, gdk_working_wctype=no)
740 if test $gdk_working_wctype = no; then
741 AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
744 AC_MSG_RESULT($gdk_working_wctype)
747 # Check for uxtheme.h (for MS-Windows Engine)
748 AC_MSG_CHECKING(for uxtheme.h)
749 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
750 if test $gtk_uxtheme_h = yes; then
751 AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
753 AC_MSG_RESULT($gtk_uxtheme_h)
755 # Checks for gdkspawn
756 AC_CHECK_HEADERS(crt_externs.h)
757 AC_CHECK_FUNCS(_NSGetEnviron)
760 ##################################################
761 # Checks for gdk-pixbuf
762 ##################################################
764 dnl ********************************************************
765 dnl * See whether we need to load our modules as .la files *
766 dnl ********************************************************
770 *-aix*) use_la_modules=true
773 if $use_la_modules ; then
774 AC_DEFINE(USE_LA_MODULES, 1,
775 [Whether to load modules via .la files rather than directly])
779 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
781 AC_ARG_ENABLE(modules,
782 [AC_HELP_STRING([--disable-modules],
783 [disable dynamic module loading])])
787 if test x$enable_modules = xno; then
791 AC_MSG_CHECKING(whether dynamic modules work)
792 ## for loop is to strip newline
793 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
798 dnl Now we check to see if our libtool supports shared lib deps
799 dnl (in a rather ugly way even)
801 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
802 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
803 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
804 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
805 if test "x$pixbuf_deplibs_check" = "xnone" || \
806 test "x$pixbuf_deplibs_check" = "xunknown" || \
807 test "x$pixbuf_deplibs_check" = "x"; then
813 AC_DEFINE(USE_GMODULE, 1,
814 [Define to 1 if gmodule works and should be used])
821 dnl We allow people to disable image loaders explicitely, but if they don't we error
822 dnl out so that people don't accidentally build without them.
825 [AC_HELP_STRING([--without-libpng],
826 [disable PNG loader for gdk-pixbuf])])
828 [AC_HELP_STRING([--without-libjpeg],
829 [disable JPEG loader for gdk-pixbuf])])
831 [AC_HELP_STRING([--without-libtiff],
832 [disable TIFF loader for gdk-pixbuf])])
833 AC_ARG_WITH(libjasper,
834 [AC_HELP_STRING([--with-libjasper],
835 [enable JPEG2000 loader for gdk-pixbuf])])
837 AC_ARG_ENABLE(gdiplus,
838 [AC_HELP_STRING([--enable-gdiplus],
839 [enble GDI+ loaders for gdk-pixbuf (currently known to be broken)])],,
842 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
845 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
846 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
847 AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
848 [AC_CHECK_HEADER(tiffio.h,
849 TIFF='tiff'; LIBTIFF='-ltiff',
850 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
851 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
852 [AC_CHECK_HEADER(tiffio.h,
853 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
854 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
855 [AC_CHECK_LIB(tiff34, TIFFFlushData,
856 [AC_CHECK_HEADER(tiffio.h,
857 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
858 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
859 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
862 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
864 *** Checks for TIFF loader failed. You can build without it by passing
865 *** --without-libtiff to configure but some programs using GTK+ may
866 *** not work properly])
871 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
872 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
873 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
876 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
877 if test "$jpeg_ok" = yes; then
878 AC_MSG_CHECKING([for jpeglib.h])
884 #include <jpeglib.h>],
887 AC_MSG_RESULT($jpeg_ok)
888 if test "$jpeg_ok" = yes; then
890 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
891 AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
892 [Define to 1 is libjpeg supports progressive JPEG]),
893 AC_MSG_WARN(JPEG library does not support progressive saving.))
895 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
900 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
902 *** Checks for JPEG loader failed. You can build without it by passing
903 *** --without-libjpeg to configure but some programs using GTK+ may
904 *** not work properly])
909 if test x$with_libpng != xno && test -z "$LIBPNG"; then
910 AC_MSG_CHECKING(for libpng12)
911 if $PKG_CONFIG --exists libpng12 ; then
914 PNG_DEP_CFLAGS_PACKAGES=libpng12
915 LIBPNG=`$PKG_CONFIG --libs libpng12`
918 AC_CHECK_LIB(png, png_read_info,
919 [AC_CHECK_HEADER(png.h,
922 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
923 if test "$png_ok" = yes; then
924 AC_MSG_CHECKING([for png_structp in png.h])
925 AC_TRY_COMPILE([#include <png.h>],
926 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
929 AC_MSG_RESULT($png_ok)
930 if test "$png_ok" = yes; then
931 PNG='png'; LIBPNG='-lpng -lz'
933 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
936 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
941 if test x$with_libpng != xno && test -z "$LIBPNG"; then
943 *** Checks for PNG loader failed. You can build without it by passing
944 *** --without-libpng to configure but many programs using GTK+ will
945 *** not work properly. The PNG loader is also needed if you are compiling
949 dnl Test for libjasper
950 if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
951 AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
954 if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
956 *** Checks for JPEG2000 loader failed. You can build without it by passing
957 *** --without-libjasper to configure])
965 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
968 # Allow building some or all gdk-pixbuf loaders included
970 AC_MSG_CHECKING(pixbuf loaders to build)
972 dnl due to an autoconf bug, commas in the first arg to
973 dnl AC_HELP_STRING cause problems.
974 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
975 dnl [build the specified loaders into gdk-pixbuf])
976 AC_ARG_WITH(included_loaders,
977 [ --with-included-loaders=LOADER1,LOADER2,...
978 build the specified loaders into gdk-pixbuf])
983 ## if the option was specified, leave it; otherwise disable included loaders
984 if test x$with_included_loaders = xno; then
985 with_included_loaders=yes
989 # Use the traditional png loader instead of the GDI+ one on Windows,
990 # because some important apps like GIMP need to read and write
991 # arbitrary tEXt chunks which doesn't seem to be possible through GDI+
993 all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm,qtif"
994 if test x$with_libjasper != xno; then
995 all_loaders="$all_loaders,jasper"
997 if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
998 # Skip PNG, see comment above
999 gdip_formats="bmp emf gif ico jpeg tiff wmf"
1000 for f in $gdip_formats; do
1001 all_loaders="$all_loaders,gdip-$f"
1004 all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
1007 # If no loaders specified, include all
1008 if test "x$with_included_loaders" = xyes ; then
1009 included_loaders="$all_loaders"
1011 included_loaders="$with_included_loaders"
1014 AC_MSG_RESULT($included_loaders)
1016 INCLUDED_LOADER_OBJ=
1017 INCLUDED_LOADER_DEFINE=
1019 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1020 for loader in $included_loaders; do
1021 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
1024 AC_MSG_ERROR([the specified loader $loader does not exist])
1027 loader_underscores=`echo $loader | sed -e 's/-/_/g'`
1028 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
1030 # Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
1033 *) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
1035 eval INCLUDE_$loader_underscores=yes
1038 # Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
1039 # (except gdip-png, which isn't built at all)
1040 if test x"$INCLUDE_gdip_ico" = xyes; then
1041 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
1045 AC_SUBST(INCLUDED_LOADER_OBJ)
1046 AC_SUBST(INCLUDED_LOADER_DEFINE)
1048 AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
1049 AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
1050 AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
1051 AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
1052 AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
1053 AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
1054 AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
1055 AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
1056 AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
1057 AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
1058 AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
1059 AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
1060 AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
1061 AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
1062 AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
1063 AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
1064 AM_CONDITIONAL(INCLUDE_QTIF, [test x"$INCLUDE_qtif" = xyes])
1065 # As all GDI+ loaders are either built-in or not, arbitrarily just
1066 # check one of the variables here
1067 AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
1069 if test x$gio_can_sniff = x; then
1070 AC_MSG_CHECKING([if gio can sniff png])
1071 gtk_save_LIBS="$LIBS"
1072 gtk_save_CFLAGS="$CFLAGS"
1073 LIBS="`$PKG_CONFIG --libs gio-2.0`"
1074 CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
1075 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1076 #include <gio/gio.h>
1077 static const gsize data_size = 159;
1078 static const guint8 data[] =
1080 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
1081 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
1082 0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00,
1083 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00,
1084 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00,
1085 0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74,
1086 0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8,
1087 0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f,
1088 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
1089 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57,
1090 0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08,
1091 0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc,
1092 0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
1096 main (int argc, char **argv)
1100 content_type = g_content_type_guess (NULL, data, data_size, NULL);
1101 image_png = g_content_type_from_mime_type ("image/png");
1102 return !!strcmp (content_type, image_png);
1105 AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
1107 AC_MSG_RESULT($gio_can_sniff)
1108 LIBS="$gtk_save_LIBS"
1109 CFLAGS="$gtk_save_CFLAGS"
1113 # Allow building some or all immodules included
1115 AC_MSG_CHECKING(immodules to build)
1117 dnl due to an autoconf bug, commas in the first arg to
1118 dnl AC_HELP_STRING cause problems.
1119 dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
1120 dnl [build the specified input method modules into gtk])
1121 AC_ARG_WITH(included_immodules,
1122 [ --with-included-immodules=MODULE1,MODULE2,...
1123 build the specified input methods into gtk])
1128 ## if the option was specified, leave it; otherwise disable included immodules
1129 if test x$with_included_immodules = xno; then
1130 with_included_immodules=yes
1134 all_immodules="am-et,cedilla,cyrillic-translit"
1135 if test "$gdktarget" = "win32"; then
1136 all_immodules="${all_immodules},ime"
1138 all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
1139 if test "$gdktarget" = "x11"; then
1140 all_immodules="${all_immodules},xim"
1143 included_immodules=""
1144 # If the switch specified without listing any specific ones, include all
1145 if test "x$with_included_immodules" = xyes ; then
1146 included_immodules="$all_immodules"
1148 included_immodules="$with_included_immodules"
1151 AC_MSG_RESULT($included_immodules)
1152 AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
1154 INCLUDED_IMMODULE_OBJ=
1155 INCLUDED_IMMODULE_DEFINE=
1157 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1158 for immodule in $included_immodules; do
1159 immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
1160 if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
1163 AC_MSG_ERROR([the specified input method $immodule does not exist])
1166 INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
1167 INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
1168 eval INCLUDE_$immodule_underscores=yes
1171 AC_SUBST(INCLUDED_IMMODULE_OBJ)
1172 AC_SUBST(INCLUDED_IMMODULE_DEFINE)
1174 AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
1175 AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
1176 AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
1177 AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
1178 AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
1179 AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
1180 AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
1181 AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
1182 AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
1183 AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
1184 AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
1185 AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
1191 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
1192 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
1193 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
1194 AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
1198 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
1199 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
1201 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
1202 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
1204 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
1205 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
1207 if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
1208 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
1211 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
1214 # Checks to see whether we should include mediaLib
1217 AC_CHECK_HEADER(sys/systeminfo.h,
1218 AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1,
1219 [Define to 1 if sys/systeminfo.h is available]))
1220 AC_CHECK_HEADER(sys/sysinfo.h,
1221 AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
1222 [Define to 1 if sys/sysinfo.h is available]))
1224 AC_MSG_CHECKING(for mediaLib 2.3)
1226 # Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
1228 AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
1229 if test $use_mlib = yes; then
1230 AC_DEFINE(USE_MEDIALIB, 1,
1231 [Define to 1 if medialib is available and should be used])
1234 AC_MSG_CHECKING(for mediaLib 2.5)
1235 # Check for a mediaLib 2.5 function since that is what is needed for
1236 # gdk_rgb_convert integration.
1237 AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
1238 if test $use_mlib25 = yes; then
1239 AC_DEFINE(USE_MEDIALIB25, 1,
1240 [Define to 1 if medialib 2.5 is available])
1243 AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
1244 AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
1246 # Checks to see if we should compile in MMX support (there will be
1247 # a runtime test when the code is actually run to see if it should
1248 # be used - this just checks if we can compile it.)
1250 # This code is partially taken from Mesa
1252 AC_MSG_CHECKING(for x86 platform)
1254 i386|i486|i586|i686|i786|k6|k7)
1260 AC_MSG_RESULT($use_x86_asm)
1263 if test $use_x86_asm = yes; then
1267 AC_MSG_CHECKING(compiler support for MMX)
1268 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1269 if AC_TRY_EVAL(ac_compile); then
1276 if test $use_mmx_asm = yes; then
1277 AC_DEFINE(USE_MMX, 1,
1278 [Define to 1 if XXM is available and should be used])
1285 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1288 if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
1292 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1294 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1296 if test $cross_compiling = yes; then
1297 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1298 AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
1299 if test x$GTK_UPDATE_ICON_CACHE = xno; then
1304 if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
1305 test "x$REBUILD_PNGS" = "x#" ; then
1307 *** gtkbuiltincache.h is not in the tree, and cannot be built
1308 *** because you don't have libpng, or (when cross-compiling) you
1309 *** don't have a prebuilt gtk-update-icon-cache on the build system.])
1312 AC_SUBST(REBUILD_PNGS)
1314 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
1315 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
1316 GDK_PIXBUF_EXTRA_CFLAGS=
1317 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1318 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1320 ########################################
1321 # Windowing system checks
1322 ########################################
1324 GDK_PIXBUF_XLIB_PACKAGES=
1325 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1326 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1328 GDK_EXTRA_LIBS="$GDK_WLIBS"
1331 # GTK+ uses some X calls, so needs to link against X directly
1332 GTK_DEP_PACKAGES_FOR_X=
1335 if test "x$gdktarget" = "xx11"; then
1336 X_PACKAGES=fontconfig
1339 # We use fontconfig very peripherally when decoding the default
1342 if $PKG_CONFIG --exists fontconfig; then : ; else
1344 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1348 # Check for basic X packages; we use pkg-config if available
1350 if $PKG_CONFIG --exists x11 xext xrender; then
1352 X_PACKAGES="$X_PACKAGES x11 xext xrender"
1353 x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1354 X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1356 # Strip out any .la files that pkg-config might give us (this happens
1357 # with -uninstalled.pc files)
1359 for I in $x_libs ; do
1362 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1366 GDK_PIXBUF_XLIB_PACKAGES="x11"
1367 GTK_PACKAGES_FOR_X="x11"
1369 have_base_x_pc=false
1371 if test x$no_x = xyes ; then
1372 AC_MSG_ERROR([X development libraries not found])
1375 x_cflags="$X_CFLAGS"
1376 x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1378 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1379 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1380 GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1383 # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1386 gtk_save_cppflags="$CPPFLAGS"
1387 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1390 LIBS="$x_libs_for_checks $LIBS"
1392 # Sanity check for the X11 and Xext libraries. While everything we need from
1393 # Xext is optional, the chances a system has *none* of these things is so
1394 # small that we just unconditionally require it.
1395 AC_CHECK_FUNC(XOpenDisplay, :,
1396 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1397 AC_CHECK_FUNC(XextFindDisplay, :,
1398 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1399 AC_CHECK_FUNC(XRenderQueryExtension, :,
1400 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1404 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1405 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1407 [AC_MSG_RESULT([no])],
1408 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1409 #include <X11/Xlibint.h>],
1411 [AC_MSG_RESULT([yes])
1412 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1413 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1414 [AC_MSG_RESULT([unknown])
1415 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1417 # Check for XConvertCase, XInternAtoms (X11R6 specific)
1419 AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1421 # Generic X11R6 check needed for XIM support; we could
1422 # probably use this to replace the above, but we'll
1423 # leave the separate checks for XConvertCase and XInternAtoms
1427 AC_CHECK_FUNC(XAddConnectionWatch,
1430 if $have_x11r6; then
1431 AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1433 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1435 # Check for XKB support.
1437 if test "x$enable_xkb" = "xyes"; then
1438 AC_MSG_WARN(XKB support explicitly enabled)
1439 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1440 elif test "x$enable_xkb" = "xmaybe"; then
1441 AC_CHECK_FUNC(XkbQueryExtension,
1442 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1444 AC_MSG_WARN(XKB support explicitly disabled)
1447 # Check for shaped window extension
1449 AC_CHECK_FUNC(XShapeCombineMask, :,
1450 [AC_MSG_ERROR([Shape extension not found, check your development headers])])
1453 gtk_save_CFLAGS="$CFLAGS"
1454 CFLAGS="$CFLAGS $x_cflags"
1456 AC_CHECK_FUNC(XSyncQueryExtension,
1457 [AC_CHECK_HEADER(X11/extensions/sync.h,
1458 AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1459 :, [#include <X11/Xlib.h>])])
1461 CFLAGS="$gtk_save_CFLAGS"
1465 if test "x$enable_shm" = "xyes"; then
1466 # Check for the XShm extension, normally in Xext
1467 AC_CHECK_FUNC(XShmAttach,
1469 # On AIX, it is in XextSam instead
1470 [AC_CHECK_LIB(XextSam, XShmAttach,
1471 [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1474 if test "x$enable_shm" = "xyes"; then
1475 # Check for shared memory
1476 AC_CHECK_HEADER(sys/ipc.h,
1477 AC_DEFINE(HAVE_IPC_H, 1,
1478 [Define to 1 if ipc.h is available]),
1480 AC_CHECK_HEADER(sys/shm.h,
1481 AC_DEFINE(HAVE_SHM_H, 1,
1482 [Define to 1 if shm.h is available]),
1485 # Check for the X shared memory extension header file
1487 AC_MSG_CHECKING(X11/extensions/XShm.h)
1488 if test "x$no_xext_lib" = "xyes"; then
1491 gtk_save_CFLAGS="$CFLAGS"
1492 CFLAGS="$CFLAGS $x_cflags"
1495 #include <sys/types.h>
1496 #include <sys/ipc.h>
1497 #include <sys/shm.h>
1498 #include <X11/Xlib.h>
1499 #include <X11/Xutil.h>
1500 #include <X11/extensions/XShm.h>
1501 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1502 CFLAGS="$gtk_save_CFLAGS"
1504 AC_MSG_RESULT($have_xshm)
1505 if test $have_xshm = yes ; then
1506 AC_DEFINE(HAVE_XSHM_H, 1,
1507 [Define to 1 if xshm.h is available])
1511 if test "x$enable_xinerama" = "xyes"; then
1512 # Check for Xinerama extension (Solaris impl or Xfree impl)
1513 gtk_save_cppflags="$CPPFLAGS"
1514 CPPFLAGS="$CPPFLAGS $x_cflags"
1517 AC_MSG_CHECKING(for Xinerama support on XFree86)
1519 have_xfree_xinerama=false
1520 if $PKG_CONFIG --exists xinerama ; then
1521 have_xfree_xinerama=true
1522 X_PACKAGES="$X_PACKAGES xinerama"
1524 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1525 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1526 [GTK_ADD_LIB(x_extra_libs,Xinerama)
1527 have_xfree_xinerama=true], :,
1528 [#include <X11/Xlib.h>])])
1531 if $have_xfree_xinerama ; then
1532 AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1533 [Define to 1 if XFree Xinerama is available])
1534 AC_DEFINE(HAVE_XINERAMA, 1,
1535 [Define to 1 is Xinerama is available])
1543 AC_MSG_CHECKING(for Xinerama support on Solaris)
1545 have_solaris_xinerama=false
1546 AC_CHECK_FUNC(XineramaGetInfo,
1547 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1548 [have_solaris_xinerama=true], :,
1549 [#include <X11/Xlib.h>])])
1551 if $have_solaris_xinerama ; then
1552 AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1553 [Define to 1 if solaris xinerama is available])
1554 AC_DEFINE(HAVE_XINERAMA, 1,
1555 [Define to 1 if xinerama is available])
1567 # set up things for XInput
1569 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1570 AC_DEFINE(XINPUT_XFREE, 1,
1571 [Define to 1 if XFree XInput should be used])
1573 if $PKG_CONFIG --exists xi ; then
1574 X_PACKAGES="$X_PACKAGES xi"
1576 GTK_ADD_LIB(x_extra_libs, Xi)
1579 AC_DEFINE(XINPUT_NONE, 1,
1580 [Define to 1 if no XInput should be used])
1583 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1585 # Check for the RANDR extension
1586 if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
1587 AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1589 X_PACKAGES="$X_PACKAGES xrandr"
1592 # Checks for Xcursor library
1594 if $PKG_CONFIG --exists xcursor ; then
1595 AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1597 X_PACKAGES="$X_PACKAGES xcursor"
1600 # Checks for XFixes extension
1602 if $PKG_CONFIG --exists xfixes ; then
1603 AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1605 X_PACKAGES="$X_PACKAGES xfixes"
1606 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1609 # Checks for Xcomposite extension
1611 if $PKG_CONFIG --exists xcomposite ; then
1612 AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1614 X_PACKAGES="$X_PACKAGES xcomposite"
1615 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1618 # Checks for Xdamage extension
1620 if $PKG_CONFIG --exists xdamage ; then
1621 AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1623 X_PACKAGES="$X_PACKAGES xdamage"
1624 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1627 if $have_base_x_pc ; then
1628 GDK_EXTRA_LIBS="$x_extra_libs"
1630 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1633 CPPFLAGS="$gtk_save_cppflags"
1634 LIBS="$gtk_save_libs"
1636 AM_CONDITIONAL(USE_X11, true)
1640 AM_CONDITIONAL(XINPUT_XFREE, false)
1641 AM_CONDITIONAL(USE_X11, false)
1642 AM_CONDITIONAL(HAVE_X11R6, false)
1645 if test "x$gdktarget" = "xwin32"; then
1646 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1647 AM_CONDITIONAL(USE_WIN32, true)
1649 AM_CONDITIONAL(USE_WIN32, false)
1652 if test "x$gdktarget" = "xquartz"; then
1653 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1654 AM_CONDITIONAL(USE_QUARTZ, true)
1656 AM_CONDITIONAL(USE_QUARTZ, false)
1659 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1660 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"
1662 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1663 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1664 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1665 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1666 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1668 if test "x$gdktarget" = "xdirectfb"; then
1669 DIRECTFB_REQUIRED_VERSION=1.0.0
1670 AC_MSG_CHECKING(for DirectFB)
1672 PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
1673 AM_CONDITIONAL(USE_DIRECTFB, true)
1675 AM_CONDITIONAL(USE_DIRECTFB, false)
1679 # Check for Pango flags
1681 if test "x$gdktarget" = "xwin32"; then
1682 PANGO_PACKAGES="pangowin32 pangocairo"
1684 PANGO_PACKAGES="pango pangocairo"
1687 AC_MSG_CHECKING(Pango flags)
1688 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1689 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1690 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1692 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1695 *** Pango not found. Pango built with Cairo support is required
1696 *** to build GTK+. See http://www.pango.org for Pango information.
1700 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1702 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1705 gtk_save_LIBS="$LIBS"
1706 LIBS="$PANGO_LIBS $LIBS"
1707 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1708 *** Can't link to Pango. Pango is required to build
1709 *** GTK+. For more information see http://www.pango.org]))
1710 LIBS="$gtk_save_LIBS"
1713 CFLAGS="$saved_cflags"
1714 LDFLAGS="$saved_ldflags"
1716 GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 $X_PACKAGES cairo-$cairo_backend"
1717 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1718 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1720 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1721 # into the pkg-config files
1723 if test $enable_explicit_deps != yes ; then
1724 GDK_PACKAGES="$PANGO_PACKAGES"
1728 AC_SUBST(GDK_PACKAGES)
1729 AC_SUBST(GDK_EXTRA_LIBS)
1730 AC_SUBST(GDK_EXTRA_CFLAGS)
1731 AC_SUBST(GDK_DEP_LIBS)
1732 AC_SUBST(GDK_DEP_CFLAGS)
1735 ########################################
1736 # Check for Accessibility Toolkit flags
1737 ########################################
1740 AC_MSG_CHECKING(ATK flags)
1741 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1742 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1743 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1745 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1748 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1753 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1756 gtk_save_LIBS="$LIBS"
1757 LIBS="$ATK_LIBS $LIBS"
1758 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1759 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1760 *** to build GTK+]))
1761 LIBS="$gtk_save_LIBS"
1764 GTK_PACKAGES="atk cairo gio-2.0"
1765 if test "x$gdktarget" = "xx11"; then
1766 GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1770 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"
1771 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"
1773 if test x"$os_win32" = xyes; then
1774 GTK_EXTRA_CFLAGS="$msnative_struct"
1777 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1778 ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1779 PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1780 CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1782 if test $enable_explicit_deps != yes ; then
1783 GDK_PIXBUF_EXTRA_LIBS=
1786 AC_SUBST(GDK_PIXBUF_PACKAGES)
1787 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1788 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1789 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1790 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1792 AC_SUBST(GTK_PACKAGES)
1793 AC_SUBST(GTK_EXTRA_LIBS)
1794 AC_SUBST(GTK_EXTRA_CFLAGS)
1795 AC_SUBST(GTK_DEP_LIBS)
1796 AC_SUBST(GTK_DEP_CFLAGS)
1798 AC_SUBST(GLIB_PREFIX)
1799 AC_SUBST(ATK_PREFIX)
1800 AC_SUBST(PANGO_PREFIX)
1801 AC_SUBST(CAIRO_PREFIX)
1803 AC_SUBST(GTK_DEBUG_FLAGS)
1804 AC_SUBST(GTK_XIM_FLAGS)
1806 ########################
1807 # Checks needed for gail
1808 ########################
1811 dnl Checks for inet libraries:
1812 AC_SEARCH_LIBS(gethostent, nsl)
1813 AC_SEARCH_LIBS(setsockopt, socket)
1814 AC_SEARCH_LIBS(connect, inet)
1816 dnl check for the sockaddr_un.sun_len member
1817 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1818 [struct_sockaddr_un_sun_len=true],
1819 [struct_sockaddr_un_suin_len=false],
1820 [#include <sys/types.h>
1821 #include <sys/un.h>]
1823 case $struct_sockaddr_un_sun_len in
1825 AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1826 [Have the sockaddr_un.sun_len member])
1832 GAIL_INET_LIBS="$LIBS"
1833 AC_SUBST([GAIL_INET_LIBS])
1837 ################################################################
1838 # Printing system checks
1839 ################################################################
1842 [AC_HELP_STRING([--disable-cups]
1843 [disable cups print backend])],,
1846 if test "x$enable_cups" = "xno"; then
1847 AM_CONDITIONAL(HAVE_CUPS, false)
1849 AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1850 if test "x$CUPS_CONFIG" = "xno"; then
1851 if test "x$enable_cups" = "xauto"; then
1852 AM_CONDITIONAL(HAVE_CUPS, false)
1859 CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1860 CUPS_LIBS=`$CUPS_CONFIG --libs`
1862 CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1863 CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1864 CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1866 if test $CUPS_API_MAJOR -gt 1 -o \
1867 $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1868 AC_DEFINE(HAVE_CUPS_API_1_2, 1,
1869 [Define to 1 if CUPS 1.2 API is available])
1872 AC_SUBST(CUPS_API_MAJOR)
1873 AC_SUBST(CUPS_API_MINOR)
1874 AC_SUBST(CUPS_CFLAGS)
1877 AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1879 AM_CONDITIONAL(HAVE_CUPS, true)
1881 gtk_save_cflags="$CFLAGS"
1882 CFLAGS="$CUPS_CFLAGS"
1883 AC_TRY_COMPILE([#include <cups/http.h>],
1884 [http_t http; char *s = http.authstring;],
1885 [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1886 [Define if cups http_t authstring field is accessible])],)
1887 CFLAGS="$gtk_save_cflags"
1889 AC_SUBST(HAVE_HTTP_AUTHSTRING)
1891 gtk_save_libs="$LIBS"
1893 AC_CHECK_FUNCS(httpGetAuthString)
1894 LIBS="$gtk_save_libs"
1898 # Checks to see if we should compile with PAPI backend for GTK+
1902 [AC_HELP_STRING([--disable-papi]
1903 [disable papi print backend])],,
1906 if test "x$enable_papi" = "xno"; then
1907 AM_CONDITIONAL(HAVE_PAPI, false)
1909 AC_MSG_CHECKING(libpapi)
1910 AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
1911 if test $have_papi = yes; then
1912 AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
1914 AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
1915 if test "x$enable_papi" = "xyes" -a "x$have_papi" = "xno"; then
1922 AM_CONDITIONAL(HAVE_PAPI_CUPS, test "x$have_papi" = "xyes" -a "x$CUPS_CONFIG" != "xno")
1924 gtk_save_cppflags="$CPPFLAGS"
1925 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
1927 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1928 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1929 *** backend enabled.]))
1931 if test "$os_win32" != "yes"; then
1932 AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1933 *** Can't find cairo-ps.h. You must build Cairo with the
1934 *** postscript backend enabled.]))
1937 CPPFLAGS="$gtk_save_cppflags"
1940 AC_ARG_ENABLE(test-print-backend,
1941 [AC_HELP_STRING([--enable-test-print-backend],
1942 [build test print backend])],,
1943 [enable_test_print_backend=no])
1944 AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1947 ################################################################
1948 # Strip -export-dynamic from the link lines of various libraries
1949 ################################################################
1952 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1953 # but this flag is only meaningful for executables. For libraries
1954 # the effect is undefined; what it causes on Linux is that the
1955 # export list from -export-symbols-regex is ignored and everything
1958 # We are using gmodule-no-export now, but I'm leaving the stripping
1959 # code in place for now, since pango and atk still require gmodule.
1961 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1962 if test -n "$export_dynamic"; then
1963 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1964 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1965 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1966 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1970 ##################################################
1971 # Checks for gtk-doc and docbook-tools
1972 ##################################################
1974 GTK_DOC_CHECK([1.11])
1976 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1977 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1980 [AC_HELP_STRING([--enable-man],
1981 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1984 if test "${enable_man}" != no; then
1986 dnl Check for xsltproc
1988 AC_PATH_PROG([XSLTPROC], [xsltproc])
1989 if test -z "$XSLTPROC"; then
1993 dnl check for DocBook DTD and stylesheets in the local catalog.
1994 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1995 [DocBook XML DTD V4.1.2],,enable_man=no)
1996 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1997 [DocBook XSL Stylesheets],,enable_man=no)
2000 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
2003 ##################################################
2005 ##################################################
2007 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
2008 outfile=gdkconfig.h-tmp
2009 cat > $outfile <<\_______EOF
2012 * This is a generated file. Please modify `configure.in'
2020 #endif /* __cplusplus */
2023 /* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
2024 # ifdef GSEAL_ENABLE
2025 # define GSEAL(ident) _g_sealed__ ## ident
2027 # define GSEAL(ident) ident
2033 cat >>$outfile <<_______EOF
2038 cat >>$outfile <<_______EOF
2042 #endif /* __cplusplus */
2044 #endif /* GDKCONFIG_H */
2048 if cmp -s $outfile gdk/gdkconfig.h; then
2049 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
2052 mv $outfile gdk/gdkconfig.h
2055 if test "x$gdktarget" = "xx11" ; then
2057 #define GDK_WINDOWING_X11'
2058 elif test "x$gdktarget" = "xwin32" ; then
2060 #define GDK_NATIVE_WINDOW_POINTER
2062 #define GDK_WINDOWING_WIN32'
2063 elif test "x$gdktarget" = "xquartz" ; then
2065 #define GDK_WINDOWING_QUARTZ'
2066 elif test "x$gdktarget" = "xdirectfb" ; then
2068 #define GDK_WINDOWING_DIRECTFB'
2071 if test x$gdk_wchar_h = xyes; then
2073 #define GDK_HAVE_WCHAR_H 1'
2075 if test x$gdk_wctype_h = xyes; then
2077 #define GDK_HAVE_WCTYPE_H 1"
2079 if test x$gdk_working_wctype = xno; then
2081 #define GDK_HAVE_BROKEN_WCTYPE 1"
2094 gtk+-unix-print-2.0.pc
2096 gdk-pixbuf-2.0-uninstalled.pc
2097 gdk-2.0-uninstalled.pc
2098 gtk+-2.0-uninstalled.pc
2102 po-properties/Makefile.in
2104 demos/gtk-demo/Makefile
2105 demos/gtk-demo/geninclude.pl
2108 docs/reference/Makefile
2109 docs/reference/gdk-pixbuf/Makefile
2110 docs/reference/gdk-pixbuf/version.xml
2111 docs/reference/gdk/Makefile
2112 docs/reference/gdk/version.xml
2113 docs/reference/gtk/Makefile
2114 docs/reference/gtk/version.xml
2115 docs/reference/libgail-util/Makefile
2118 docs/tutorial/Makefile
2120 gdk-pixbuf/gdk_pixbuf.rc
2121 gdk-pixbuf/gdk-pixbuf-features.h
2122 gdk-pixbuf/pixops/Makefile
2126 gdk/win32/rc/Makefile
2129 gdk/directfb/Makefile
2135 gtk/theme-bits/Makefile
2138 modules/other/Makefile
2139 modules/other/gail/Makefile
2140 modules/other/gail/libgail-util/Makefile
2141 modules/other/gail/tests/Makefile
2142 modules/engines/Makefile
2143 modules/engines/pixbuf/Makefile
2144 modules/engines/ms-windows/Makefile
2145 modules/engines/ms-windows/Theme/Makefile
2146 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
2147 modules/input/Makefile
2148 modules/printbackends/Makefile
2149 modules/printbackends/cups/Makefile
2150 modules/printbackends/lpr/Makefile
2151 modules/printbackends/file/Makefile
2152 modules/printbackends/papi/Makefile
2153 modules/printbackends/test/Makefile
2156 contrib/gdk-pixbuf-xlib/Makefile
2157 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
2162 echo "configuration: