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], [2])
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.19.7])
35 m4_define([pango_required_version], [1.20])
36 m4_define([atk_required_version], [1.13.0])
37 m4_define([cairo_required_version], [1.6])
40 AC_INIT([gtk+], [gtk_version],
41 [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
44 AC_CONFIG_SRCDIR([gdk/gdktypes.h])
46 # Save this value here, since automake will set cflags later
47 cflags_set=${CFLAGS+set}
49 AM_INIT_AUTOMAKE(no-define)
50 AM_CONFIG_HEADER(config.h)
53 # For each of the libraries we build, we define the following
55 # substituted variables:
57 # foo_PACKAGES: pkg-config packages this library requires
58 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
59 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
60 # foo_DEP_LIBS: All libraries this module requires
61 # foo_DEP_CFLAGS: All cflags this module requires
64 GTK_MAJOR_VERSION=gtk_major_version
65 GTK_MINOR_VERSION=gtk_minor_version
66 GTK_MICRO_VERSION=gtk_micro_version
67 GTK_INTERFACE_AGE=gtk_interface_age
68 GTK_BINARY_AGE=gtk_binary_age
69 GTK_VERSION=gtk_version
70 GTK_API_VERSION=gtk_api_version
71 GTK_BINARY_VERSION=gtk_binary_version
72 AC_SUBST(GTK_MAJOR_VERSION)
73 AC_SUBST(GTK_MINOR_VERSION)
74 AC_SUBST(GTK_MICRO_VERSION)
75 AC_SUBST(GTK_INTERFACE_AGE)
76 AC_SUBST(GTK_BINARY_AGE)
77 AC_SUBST(GTK_API_VERSION)
79 AC_SUBST(GTK_BINARY_VERSION)
82 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
83 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
84 #LT_REVISION=$GTK_INTERFACE_AGE
85 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
86 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
88 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
89 m4_define([lt_revision], [gtk_interface_age])
90 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
91 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
92 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
93 AC_SUBST(LT_VERSION_INFO)
94 AC_SUBST(LT_CURRENT_MINUS_AGE)
96 m4_define([gail_lt_current],[18])
97 m4_define([gail_lt_revision],[1])
98 m4_define([gail_lt_age],[0])
99 m4_define([gail_lt_version_info],[gail_lt_current:gail_lt_revision:gail_lt_age])
100 m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
101 AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
102 AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
105 # gdk-pixbuf gets versioned separately, and for now, using standard
106 # libtool versioning, not GTK+-style versioning
108 GDK_PIXBUF_MAJOR=gtk_major_version
109 GDK_PIXBUF_MINOR=gtk_minor_version
110 GDK_PIXBUF_MICRO=gtk_micro_version
111 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
112 AC_SUBST(GDK_PIXBUF_MAJOR)
113 AC_SUBST(GDK_PIXBUF_MINOR)
114 AC_SUBST(GDK_PIXBUF_MICRO)
115 AC_SUBST(GDK_PIXBUF_VERSION)
117 GETTEXT_PACKAGE=gtk20
118 AC_SUBST(GETTEXT_PACKAGE)
119 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
120 [The prefix for our gettext translation domains.])
125 AC_MSG_CHECKING([for native Win32])
126 LIB_EXE_MACHINE_FLAG=X86
134 LIB_EXE_MACHINE_FLAG=X64
142 AC_MSG_RESULT([$os_win32])
144 AC_SUBST(LIB_EXE_MACHINE_FLAG)
152 dnl Initialize libtool
157 dnl Check for a working C++ compiler, but do not bail out, if none is found.
158 dnl We use this for an automated test for C++ header correctness.
160 AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], gcc)
164 AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=)
165 AM_CONDITIONAL(HAVE_CXX, test "$CXX" != "")
167 gtk_save_cxxflags="$CXXFLAGS"
168 CXXFLAGS="$CXXFLAGS -x objective-c++"
169 AC_TRY_COMPILE([@interface Foo @end],,OBJC=yes,OBJC=no)
170 AM_CONDITIONAL(HAVE_OBJC, test "$OBJC" = "yes")
171 CXXFLAGS="$gtk_save_cxxflags"
174 if test "$os_win32" = "yes"; then
175 if test x$enable_static = xyes -o x$enable_static = x; then
176 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
179 if test x$enable_shared = xno; then
180 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
187 dnl when using libtool 2.x create libtool early, because it's used in configure
188 m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
191 # Make sure we use 64-bit versions of various file stuff.
195 AC_PATH_PROG(NM, nm, nm)
197 dnl Initialize maintainer mode
200 AC_MSG_CHECKING([for some Win32 platform])
202 *-*-mingw*|*-*-cygwin*)
209 AC_MSG_RESULT([$platform_win32])
210 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
212 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
213 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
214 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
216 if test "$os_win32" = "yes"; then
217 AC_CHECK_TOOL(WINDRES, windres, no)
218 if test "$WINDRES" = no; then
219 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
221 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
223 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
225 m4_define([debug_default],
226 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
228 dnl declare --enable-* args and collect ac_help strings
230 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
231 [turn on debugging @<:@default=debug_default@:>@]),,
232 enable_debug=debug_default)
234 [AC_HELP_STRING([--enable-shm],
235 [support shared memory if available [default=yes]])],,
238 [AC_HELP_STRING([--enable-xkb],
239 [support XKB [default=maybe]])],,
240 [enable_xkb="maybe"])
241 AC_ARG_ENABLE(xinerama,
242 [AC_HELP_STRING([--enable-xinerama],
243 [support xinerama extension if available [default=yes]])],,
244 [enable_xinerama="yes"])
245 AC_ARG_ENABLE(rebuilds,
246 [AC_HELP_STRING([--disable-rebuilds],
247 [disable all source autogeneration rules])],,
248 [enable_rebuilds=yes])
249 AC_ARG_ENABLE(visibility,
250 [AC_HELP_STRING([--disable-visibility],
251 [don't use ELF visibility attributes])],,
252 [enable_visibility=yes])
255 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
257 if test "$platform_win32" = yes; then
263 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
264 gdktarget=$with_gdktarget)
268 x11|win32|quartz|directfb) ;;
269 *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
272 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
273 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
275 AC_SUBST(gdktargetlib)
276 AC_SUBST(gtktargetlib)
278 if test "x$enable_debug" = "xyes"; then
279 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
280 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG -DG_ERRORCHECK_MUTEXES"
282 if test "x$enable_debug" = "xno"; then
283 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
285 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
290 if test "x$enable_visibility" = "xno"; then
291 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
295 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}",
296 [Define if debugging is enabled])
299 # Build time sanity check...
302 # Checks for programs.
309 if test "x$GCC" = "xyes"; then
311 *[\ \ ]-Wall[\ \ ]*) ;;
312 *) CFLAGS="$CFLAGS -Wall" ;;
315 if test "x$enable_ansi" = "xyes"; then
317 *[\ \ ]-ansi[\ \ ]*) ;;
318 *) CFLAGS="$CFLAGS -ansi" ;;
322 *[\ \ ]-pedantic[\ \ ]*) ;;
323 *) CFLAGS="$CFLAGS -pedantic" ;;
329 CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
331 # Ensure MSVC-compatible struct packing convention is used when
332 # compiling for Win32 with gcc.
333 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
334 # gcc2 uses "-fnative-struct".
335 if test x"$os_win32" = xyes; then
336 if test x"$GCC" = xyes; then
338 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
339 if test -z "$ac_cv_prog_CC"; then
342 our_gcc="$ac_cv_prog_CC"
344 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
346 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
347 msnative_struct='-fnative-struct'
351 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
352 msnative_struct='-mms-bitfields'
356 if test x"$msnative_struct" = x ; then
357 AC_MSG_RESULT([no way])
358 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
360 CFLAGS="$CFLAGS $msnative_struct"
361 AC_MSG_RESULT([${msnative_struct}])
366 # Honor aclocal flags
367 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
369 ## Initial sanity check, done here so that users get told they
370 ## have the wrong dependencies as early in the process as possible.
371 ## Later on we actually use the cflags/libs from separate pkg-config
372 ## calls. Oh, also the later pkg-config calls don't include
373 ## the version requirements since those make the module lists
374 ## annoying to construct
375 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
376 [glib-2.0 >= glib_required_version dnl
377 atk >= atk_required_version dnl
378 pango >= pango_required_version dnl
379 cairo >= cairo_required_version])
381 ## In addition to checking that cairo is present, we also need to
382 ## check that the correct cairo backend is there. E.g. if the GDK
383 ## target is win32 we need the cairo-win32 backend and so on.
384 cairo_backend=$gdktarget
386 # GDK calls the xlib backend "x11," cairo calls it "xlib." Other
387 # backend names are identical.
388 if test "x$cairo_backend" = "xx11"; then
391 PKG_CHECK_MODULES(CAIRO_BACKEND,
392 [cairo-$cairo_backend >= cairo_required_version])
394 if test "$os_win32" != yes; then
395 # libtool option to control which symbols are exported
396 # right now, symbols starting with _ are not exported
397 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
399 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
400 LIBTOOL_EXPORT_OPTIONS=
402 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
404 dnl ******************************************************
405 dnl * See whether to include shared library dependencies *
406 dnl ******************************************************
408 AC_ARG_ENABLE(explicit-deps,
409 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
410 [use explicit dependencies in .pc files [default=auto]])],,
411 [enable_explicit_deps=auto])
413 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
414 case $enable_explicit_deps in
417 deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
418 if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
419 enable_explicit_deps=yes
421 enable_explicit_deps=no
426 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
429 AC_MSG_RESULT($enable_explicit_deps)
431 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
433 # define a MAINT-like variable REBUILD which is set if Perl
434 # and awk are found, so autogenerated sources can be rebuilt
436 AC_PATH_PROGS(PERL, perl5 perl)
438 # We would like indent, but don't require it.
439 AC_CHECK_PROG(INDENT, indent, indent)
442 if test "x$enable_rebuilds" = "xyes" && \
444 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
449 AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
450 AC_CHECK_FUNCS(localtime_r)
452 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
453 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
454 AC_TRY_LINK([#include <langinfo.h>], [
456 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
457 ], gtk_ok=yes, gtk_ok=no)
458 AC_MSG_RESULT($gtk_ok)
459 if test "$gtk_ok" = "yes"; then
460 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
461 [Define if _NL_TIME_FIRST_WEEKDAY is available])
464 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
465 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
466 AC_TRY_LINK([#include <langinfo.h>], [
468 c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
469 ], gtk_ok=yes, gtk_ok=no)
470 AC_MSG_RESULT($gtk_ok)
471 if test "$gtk_ok" = "yes"; then
472 AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
473 [Define if _NL_MEASUREMENT_MEASUREMENT is available])
476 # _NL_PAPER_HEIGHT is an enum and not a define
477 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
478 AC_TRY_LINK([#include <langinfo.h>], [
480 c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
481 ], gtk_ok=yes, gtk_ok=no)
482 AC_MSG_RESULT($gtk_ok)
483 if test "$gtk_ok" = "yes"; then
484 AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
485 [Define if _NL_PAPER_HEIGHT is available])
488 # _NL_PAPER_WIDTH is an enum and not a define
489 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
490 AC_TRY_LINK([#include <langinfo.h>], [
492 c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
493 ], gtk_ok=yes, gtk_ok=no)
494 AC_MSG_RESULT($gtk_ok)
495 if test "$gtk_ok" = "yes"; then
496 AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
497 [Define if _NL_PAPER_WIDTH is available])
500 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
501 AC_MSG_CHECKING(for sigsetjmp)
502 AC_TRY_LINK([#include <setjmp.h>], [
505 ], gtk_ok=yes, gtk_ok=no)
506 AC_MSG_RESULT($gtk_ok)
507 if test "$gtk_ok" = "yes"; then
508 AC_DEFINE(HAVE_SIGSETJMP, 1,
509 [Define to 1 if sigsetjmp is available])
513 ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
515 LIBS="$LIBS $INTLLIBS"
516 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
517 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
520 dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
521 dnl po-properties/POTFILES during configure; see GNOME #573515.
523 dnl Generate list of files to be processed by xgettext which will
524 dnl be included in po-properties/Makefile.
525 test -d po-properties || mkdir po-properties
526 if test "x$srcdir" != "x."; then
527 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
528 popropsrcprefix="$srcdir/"
530 popropsrcprefix="../$srcdir/"
533 popropsrcprefix="../"
535 rm -f po-properties/POTFILES
536 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
537 < $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
538 dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
540 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
542 dnl The DU4 header files don't provide library prototypes unless
543 dnl -std1 is given to the native cc.
544 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
548 AC_TRY_RUN([#include <math.h>
549 int main (void) { return (log(1) != log(1.)); }],
550 AC_MSG_RESULT(none needed),
551 gtk_save_CFLAGS="$CFLAGS"
552 CFLAGS="$CFLAGS -std1"
553 AC_TRY_RUN([#include <math.h>
554 int main (void) { return (log(1) != log(1.)); }],
555 AC_MSG_RESULT(-std1),
557 CFLAGS="$gtk_save_CFLAGS"
559 [No ANSI prototypes found in library. (-std1 didn't work.)]),
562 AC_MSG_RESULT(none needed)
566 AC_MSG_CHECKING(for the BeOS)
580 AC_MSG_CHECKING(for HP-UX)
582 hpux9* | hpux10* | hpux11*)
584 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
591 dnl NeXTStep cc seems to need this
592 AC_MSG_CHECKING([for extra flags for POSIX compliance])
593 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
594 AC_MSG_RESULT(none needed),
595 gtk_save_CFLAGS="$CFLAGS"
596 CFLAGS="$CFLAGS -posix"
597 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
598 AC_MSG_RESULT(-posix),
600 CFLAGS="$gtk_save_CFLAGS"
601 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
604 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
607 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
609 AM_PATH_GLIB_2_0(glib_required_version, :,
611 *** GLIB glib_required_version or better is required. The latest version of
612 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
613 gobject gmodule-no-export gthread)
615 # See if it's safe to turn G_DISABLE_DEPRECATED on.
616 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
617 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
618 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
619 CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
622 CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
626 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
629 LIBS="$LIBS $GLIB_LIBS"
630 AC_CHECK_FUNCS(bind_textdomain_codeset)
633 AC_CHECK_HEADERS(pwd.h,
634 AC_DEFINE(HAVE_PWD_H, 1,
635 [Define to 1 if pwd.h is available]))
636 AC_CHECK_HEADERS(sys/time.h,
637 AC_DEFINE(HAVE_SYS_TIME_H, 1,
638 [Define to 1 if time.h is available]))
639 AC_CHECK_HEADERS(unistd.h,
640 AC_DEFINE(HAVE_UNISTD_H, 1,
641 [Define to 1 if unistd.h is available]))
642 AC_CHECK_HEADERS(ftw.h,
643 AC_DEFINE(HAVE_FTW_H, 1,
644 [Define to 1 if ftw.h is available]))
646 AC_MSG_CHECKING([for GNU ftw extensions])
647 AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
649 #include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
650 if test $gtk_ok = yes; then
652 AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
657 saved_cflags="$CFLAGS"
658 saved_ldflags="$LDFLAGS"
661 # Checks for header files.
664 # Checks for typedefs, structures, and compiler characteristics.
667 # Checks for library functions.
671 AC_CHECK_FUNCS(mallinfo)
672 AC_CHECK_FUNCS(getresuid)
675 # Check if <sys/select.h> needs to be included for fd_set
676 AC_MSG_CHECKING([for fd_set])
677 AC_TRY_COMPILE([#include <sys/types.h>],
678 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
679 if test $gtk_ok = yes; then
680 AC_MSG_RESULT([yes, found in sys/types.h])
682 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
683 if test $gtk_ok = yes; then
684 AC_DEFINE(HAVE_SYS_SELECT_H, 1,
685 [Define to 1 if sys/select.h is available])
686 AC_MSG_RESULT([yes, found in sys/select.h])
688 AC_DEFINE(NO_FD_SET, 1,
689 [Define to 1 if fd_set is not available])
694 # `widechar' tests for gdki18n.h
695 AC_MSG_CHECKING(for wchar.h)
696 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
697 if test $gdk_wchar_h = yes; then
698 AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
700 AC_MSG_RESULT($gdk_wchar_h)
702 # Check for wctype.h (for iswalnum)
703 AC_MSG_CHECKING(for wctype.h)
704 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
705 if test $gdk_wctype_h = yes; then
706 AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
708 AC_MSG_RESULT($gdk_wctype_h)
710 # in Solaris 2.5, `iswalnum' is in -lw
712 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
715 LIBS="$LIBS $GDK_WLIBS"
716 # The following is necessary for Linux libc-5.4.38
717 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
718 AC_TRY_LINK([#include <stdlib.h>],[
719 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
720 # ifdef HAVE_WCTYPE_H
728 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
730 iswalnum((wchar_t) 0);
731 ], gdk_working_wctype=yes, gdk_working_wctype=no)
734 if test $gdk_working_wctype = no; then
735 AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
738 AC_MSG_RESULT($gdk_working_wctype)
741 # Check for uxtheme.h (for MS-Windows Engine)
742 AC_MSG_CHECKING(for uxtheme.h)
743 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
744 if test $gtk_uxtheme_h = yes; then
745 AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
747 AC_MSG_RESULT($gtk_uxtheme_h)
749 # Checks for gdkspawn
750 AC_CHECK_HEADERS(crt_externs.h)
751 AC_CHECK_FUNCS(_NSGetEnviron)
754 ##################################################
755 # Checks for gdk-pixbuf
756 ##################################################
758 dnl ********************************************************
759 dnl * See whether we need to load our modules as .la files *
760 dnl ********************************************************
764 *-aix*) use_la_modules=true
767 if $use_la_modules ; then
768 AC_DEFINE(USE_LA_MODULES, 1,
769 [Whether to load modules via .la files rather than directly])
773 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
775 AC_ARG_ENABLE(modules,
776 [AC_HELP_STRING([--disable-modules],
777 [disable dynamic module loading])])
781 if test x$enable_modules = xno; then
785 AC_MSG_CHECKING(whether dynamic modules work)
786 ## for loop is to strip newline
787 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
792 dnl Now we check to see if our libtool supports shared lib deps
793 dnl (in a rather ugly way even)
795 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
796 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
797 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
798 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
799 if test "x$pixbuf_deplibs_check" = "xnone" || \
800 test "x$pixbuf_deplibs_check" = "xunknown" || \
801 test "x$pixbuf_deplibs_check" = "x"; then
807 AC_DEFINE(USE_GMODULE, 1,
808 [Define to 1 if gmodule works and should be used])
815 dnl We allow people to disable image loaders explicitely, but if they don't we error
816 dnl out so that people don't accidentally build without them.
819 [AC_HELP_STRING([--without-libpng],
820 [disable PNG loader for gdk-pixbuf])])
822 [AC_HELP_STRING([--without-libjpeg],
823 [disable JPEG loader for gdk-pixbuf])])
825 [AC_HELP_STRING([--without-libtiff],
826 [disable TIFF loader for gdk-pixbuf])])
827 AC_ARG_WITH(libjasper,
828 [AC_HELP_STRING([--without-libjasper],
829 [disable JPEG2000 loader for gdk-pixbuf])])
831 AC_ARG_ENABLE(gdiplus,
832 [AC_HELP_STRING([--disable-gdiplus],
833 [disable GDI+ loaders for gdk-pixbuf])])
835 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
838 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
839 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
840 AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
841 [AC_CHECK_HEADER(tiffio.h,
842 TIFF='tiff'; LIBTIFF='-ltiff',
843 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
844 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
845 [AC_CHECK_HEADER(tiffio.h,
846 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
847 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
848 [AC_CHECK_LIB(tiff34, TIFFFlushData,
849 [AC_CHECK_HEADER(tiffio.h,
850 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
851 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
852 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
855 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
857 *** Checks for TIFF loader failed. You can build without it by passing
858 *** --without-libtiff to configure but some programs using GTK+ may
859 *** not work properly])
864 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
865 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
866 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
869 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
870 if test "$jpeg_ok" = yes; then
871 AC_MSG_CHECKING([for jpeglib.h])
877 #include <jpeglib.h>],
880 AC_MSG_RESULT($jpeg_ok)
881 if test "$jpeg_ok" = yes; then
883 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
884 AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
885 [Define to 1 is libjpeg supports progressive JPEG]),
886 AC_MSG_WARN(JPEG library does not support progressive saving.))
888 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
893 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
895 *** Checks for JPEG loader failed. You can build without it by passing
896 *** --without-libjpeg to configure but some programs using GTK+ may
897 *** not work properly])
902 if test x$with_libpng != xno && test -z "$LIBPNG"; then
903 AC_MSG_CHECKING(for libpng12)
904 if $PKG_CONFIG --exists libpng12 ; then
907 PNG_DEP_CFLAGS_PACKAGES=libpng12
908 LIBPNG=`$PKG_CONFIG --libs libpng12`
911 AC_CHECK_LIB(png, png_read_info,
912 [AC_CHECK_HEADER(png.h,
915 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
916 if test "$png_ok" = yes; then
917 AC_MSG_CHECKING([for png_structp in png.h])
918 AC_TRY_COMPILE([#include <png.h>],
919 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
922 AC_MSG_RESULT($png_ok)
923 if test "$png_ok" = yes; then
924 PNG='png'; LIBPNG='-lpng -lz'
926 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
929 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
934 if test x$with_libpng != xno && test -z "$LIBPNG"; then
936 *** Checks for PNG loader failed. You can build without it by passing
937 *** --without-libpng to configure but many programs using GTK+ will
938 *** not work properly. The PNG loader is also needed if you are compiling
942 dnl Test for libjasper
943 if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
944 AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
947 if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
949 *** Checks for JPEG2000 loader failed. You can build without it by passing
950 *** --without-libjasper to configure])
958 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
961 # Allow building some or all gdk-pixbuf loaders included
963 AC_MSG_CHECKING(pixbuf loaders to build)
965 dnl due to an autoconf bug, commas in the first arg to
966 dnl AC_HELP_STRING cause problems.
967 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
968 dnl [build the specified loaders into gdk-pixbuf])
969 AC_ARG_WITH(included_loaders,
970 [ --with-included-loaders=LOADER1,LOADER2,...
971 build the specified loaders into gdk-pixbuf])
976 ## if the option was specified, leave it; otherwise disable included loaders
977 if test x$with_included_loaders = xno; then
978 with_included_loaders=yes
982 # Use the traditional png loader instead of the GDI+ one on Windows,
983 # because some important apps like GIMP need to read and write
984 # arbitrary tEXt chunks which doesn't seem to be possible through GDI+
986 all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm"
987 if test x$with_libjasper != xno; then
988 all_loaders="$all_loaders,jasper"
990 if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
991 # Skip PNG, see comment above
992 gdip_formats="bmp emf gif ico jpeg tiff wmf"
993 for f in $gdip_formats; do
994 all_loaders="$all_loaders,gdip-$f"
997 all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
1000 # If no loaders specified, include all
1001 if test "x$with_included_loaders" = xyes ; then
1002 included_loaders="$all_loaders"
1004 included_loaders="$with_included_loaders"
1007 AC_MSG_RESULT($included_loaders)
1009 INCLUDED_LOADER_OBJ=
1010 INCLUDED_LOADER_DEFINE=
1012 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1013 for loader in $included_loaders; do
1014 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
1017 AC_MSG_ERROR([the specified loader $loader does not exist])
1020 loader_underscores=`echo $loader | sed -e 's/-/_/g'`
1021 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
1023 # Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
1026 *) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
1028 eval INCLUDE_$loader_underscores=yes
1031 # Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
1032 # (except gdip-png, which isn't built at all)
1033 if test x"$INCLUDE_gdip_ico" = xyes; then
1034 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
1038 AC_SUBST(INCLUDED_LOADER_OBJ)
1039 AC_SUBST(INCLUDED_LOADER_DEFINE)
1041 AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
1042 AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
1043 AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
1044 AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
1045 AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
1046 AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
1047 AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
1048 AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
1049 AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
1050 AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
1051 AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
1052 AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
1053 AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
1054 AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
1055 AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
1056 AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
1057 # As all GDI+ loaders are either built-in or not, arbitrarily just
1058 # check one of the variables here
1059 AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
1061 if test x$gio_can_sniff = x; then
1062 AC_MSG_CHECKING([if gio can sniff png])
1063 gtk_save_LIBS="$LIBS"
1064 gtk_save_CFLAGS="$CFLAGS"
1065 LIBS="`$PKG_CONFIG --libs gio-2.0`"
1066 CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
1067 AC_RUN_IFELSE([AC_LANG_SOURCE([[
1068 #include <gio/gio.h>
1069 static const gsize data_size = 159;
1070 static const guint8 data[] =
1072 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
1073 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
1074 0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00,
1075 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00,
1076 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00,
1077 0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74,
1078 0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8,
1079 0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f,
1080 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
1081 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57,
1082 0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08,
1083 0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc,
1084 0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
1088 main (int argc, char **argv)
1092 content_type = g_content_type_guess (NULL, data, data_size, NULL);
1093 image_png = g_content_type_from_mime_type ("image/png");
1094 return !!strcmp (content_type, image_png);
1097 AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
1099 AC_MSG_RESULT($gio_can_sniff)
1100 LIBS="$gtk_save_LIBS"
1101 CFLAGS="$gtk_save_CFLAGS"
1105 # Allow building some or all immodules included
1107 AC_MSG_CHECKING(immodules to build)
1109 dnl due to an autoconf bug, commas in the first arg to
1110 dnl AC_HELP_STRING cause problems.
1111 dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
1112 dnl [build the specified input method modules into gtk])
1113 AC_ARG_WITH(included_immodules,
1114 [ --with-included-immodules=MODULE1,MODULE2,...
1115 build the specified input methods into gtk])
1120 ## if the option was specified, leave it; otherwise disable included immodules
1121 if test x$with_included_immodules = xno; then
1122 with_included_immodules=yes
1126 all_immodules="am-et,cedilla,cyrillic-translit"
1127 if test "$gdktarget" = "win32"; then
1128 all_immodules="${all_immodules},ime"
1130 all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
1131 if test "$gdktarget" = "x11"; then
1132 all_immodules="${all_immodules},xim"
1135 included_immodules=""
1136 # If the switch specified without listing any specific ones, include all
1137 if test "x$with_included_immodules" = xyes ; then
1138 included_immodules="$all_immodules"
1140 included_immodules="$with_included_immodules"
1143 AC_MSG_RESULT($included_immodules)
1144 AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
1146 INCLUDED_IMMODULE_OBJ=
1147 INCLUDED_IMMODULE_DEFINE=
1149 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
1150 for immodule in $included_immodules; do
1151 immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
1152 if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
1155 AC_MSG_ERROR([the specified input method $immodule does not exist])
1158 INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
1159 INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
1160 eval INCLUDE_$immodule_underscores=yes
1163 AC_SUBST(INCLUDED_IMMODULE_OBJ)
1164 AC_SUBST(INCLUDED_IMMODULE_DEFINE)
1166 AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
1167 AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
1168 AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
1169 AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
1170 AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
1171 AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
1172 AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
1173 AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
1174 AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
1175 AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
1176 AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
1177 AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
1183 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
1184 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
1185 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
1186 AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
1190 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
1191 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
1193 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
1194 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
1196 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
1197 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
1199 if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
1200 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
1203 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
1206 # Checks to see whether we should include mediaLib
1209 AC_CHECK_HEADER(sys/systeminfo.h,
1210 AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1,
1211 [Define to 1 if sys/systeminfo.h is available]))
1212 AC_CHECK_HEADER(sys/sysinfo.h,
1213 AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
1214 [Define to 1 if sys/sysinfo.h is available]))
1216 AC_MSG_CHECKING(for mediaLib 2.3)
1218 # Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
1220 AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
1221 if test $use_mlib = yes; then
1222 AC_DEFINE(USE_MEDIALIB, 1,
1223 [Define to 1 if medialib is available and should be used])
1226 AC_MSG_CHECKING(for mediaLib 2.5)
1227 # Check for a mediaLib 2.5 function since that is what is needed for
1228 # gdk_rgb_convert integration.
1229 AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
1230 if test $use_mlib25 = yes; then
1231 AC_DEFINE(USE_MEDIALIB25, 1,
1232 [Define to 1 if medialib 2.5 is available])
1235 AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
1236 AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
1238 # Checks to see if we should compile in MMX support (there will be
1239 # a runtime test when the code is actually run to see if it should
1240 # be used - this just checks if we can compile it.)
1242 # This code is partially taken from Mesa
1244 AC_MSG_CHECKING(for x86 platform)
1246 i386|i486|i586|i686|i786|k6|k7)
1252 AC_MSG_RESULT($use_x86_asm)
1255 if test $use_x86_asm = yes; then
1259 AC_MSG_CHECKING(compiler support for MMX)
1260 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1261 if AC_TRY_EVAL(ac_compile); then
1268 if test $use_mmx_asm = yes; then
1269 AC_DEFINE(USE_MMX, 1,
1270 [Define to 1 if XXM is available and should be used])
1277 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1280 if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
1284 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1286 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1288 if test $cross_compiling = yes; then
1289 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1290 AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
1291 if test x$GTK_UPDATE_ICON_CACHE = xno; then
1296 if test ! -f $srcdir/gtk/gtkbuiltincache.h &&
1297 test "x$REBUILD_PNGS" = "x#" ; then
1299 *** gtkbuiltincache.h is not in the tree, and cannot be built
1300 *** because you don't have libpng, or (when cross-compiling) you
1301 *** don't have a prebuilt gtk-update-icon-cache on the build system.])
1304 AC_SUBST(REBUILD_PNGS)
1306 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
1307 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
1308 GDK_PIXBUF_EXTRA_CFLAGS=
1309 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1310 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1312 ########################################
1313 # Windowing system checks
1314 ########################################
1316 GDK_PIXBUF_XLIB_PACKAGES=
1317 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1318 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1320 X_PACKAGES=fontconfig
1321 GDK_EXTRA_LIBS="$GDK_WLIBS"
1324 # GTK+ uses some X calls, so needs to link against X directly
1325 GTK_DEP_PACKAGES_FOR_X=
1328 if test "x$gdktarget" = "xx11"; then
1330 # We use fontconfig very peripherally when decoding the default
1333 if $PKG_CONFIG --exists fontconfig; then : ; else
1335 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1339 # Check for basic X packages; we use pkg-config if available
1341 if $PKG_CONFIG --exists x11 xext xrender; then
1343 X_PACKAGES="$X_PACKAGES x11 xext xrender"
1344 x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1345 X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1347 # Strip out any .la files that pkg-config might give us (this happens
1348 # with -uninstalled.pc files)
1350 for I in $x_libs ; do
1353 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1357 GDK_PIXBUF_XLIB_PACKAGES="x11"
1358 GTK_PACKAGES_FOR_X="x11"
1360 have_base_x_pc=false
1362 if test x$no_x = xyes ; then
1363 AC_MSG_ERROR([X development libraries not found])
1366 x_cflags="$X_CFLAGS"
1367 x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1369 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1370 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1371 GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1374 # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1377 gtk_save_cppflags="$CPPFLAGS"
1378 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1381 LIBS="$x_libs_for_checks $LIBS"
1383 # Sanity check for the X11 and Xext libraries. While everything we need from
1384 # Xext is optional, the chances a system has *none* of these things is so
1385 # small that we just unconditionally require it.
1386 AC_CHECK_FUNC(XOpenDisplay, :,
1387 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1388 AC_CHECK_FUNC(XextFindDisplay, :,
1389 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1390 AC_CHECK_FUNC(XRenderQueryExtension, :,
1391 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1395 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1396 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1398 [AC_MSG_RESULT([no])],
1399 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1400 #include <X11/Xlibint.h>],
1402 [AC_MSG_RESULT([yes])
1403 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1404 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1405 [AC_MSG_RESULT([unknown])
1406 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1408 # Check for XConvertCase, XInternAtoms (X11R6 specific)
1410 AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1412 # Generic X11R6 check needed for XIM support; we could
1413 # probably use this to replace the above, but we'll
1414 # leave the separate checks for XConvertCase and XInternAtoms
1418 AC_CHECK_FUNC(XAddConnectionWatch,
1421 if $have_x11r6; then
1422 AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1424 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1426 # Check for XKB support.
1428 if test "x$enable_xkb" = "xyes"; then
1429 AC_MSG_WARN(XKB support explicitly enabled)
1430 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1431 elif test "x$enable_xkb" = "xmaybe"; then
1432 AC_CHECK_FUNC(XkbQueryExtension,
1433 AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1435 AC_MSG_WARN(XKB support explicitly disabled)
1438 # Check for shaped window extension
1440 AC_CHECK_FUNC(XShapeCombineMask, :,
1441 [AC_MSG_ERROR([Shape extension not found, check your development headers])])
1444 gtk_save_CFLAGS="$CFLAGS"
1445 CFLAGS="$CFLAGS $x_cflags"
1447 AC_CHECK_FUNC(XSyncQueryExtension,
1448 [AC_CHECK_HEADER(X11/extensions/sync.h,
1449 AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1450 :, [#include <X11/Xlib.h>])])
1452 CFLAGS="$gtk_save_CFLAGS"
1456 if test "x$enable_shm" = "xyes"; then
1457 # Check for the XShm extension, normally in Xext
1458 AC_CHECK_FUNC(XShmAttach,
1460 # On AIX, it is in XextSam instead
1461 [AC_CHECK_LIB(XextSam, XShmAttach,
1462 [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1465 if test "x$enable_shm" = "xyes"; then
1466 # Check for shared memory
1467 AC_CHECK_HEADER(sys/ipc.h,
1468 AC_DEFINE(HAVE_IPC_H, 1,
1469 [Define to 1 if ipc.h is available]),
1471 AC_CHECK_HEADER(sys/shm.h,
1472 AC_DEFINE(HAVE_SHM_H, 1,
1473 [Define to 1 if shm.h is available]),
1476 # Check for the X shared memory extension header file
1478 AC_MSG_CHECKING(X11/extensions/XShm.h)
1479 if test "x$no_xext_lib" = "xyes"; then
1482 gtk_save_CFLAGS="$CFLAGS"
1483 CFLAGS="$CFLAGS $x_cflags"
1486 #include <sys/types.h>
1487 #include <sys/ipc.h>
1488 #include <sys/shm.h>
1489 #include <X11/Xlib.h>
1490 #include <X11/Xutil.h>
1491 #include <X11/extensions/XShm.h>
1492 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1493 CFLAGS="$gtk_save_CFLAGS"
1495 AC_MSG_RESULT($have_xshm)
1496 if test $have_xshm = yes ; then
1497 AC_DEFINE(HAVE_XSHM_H, 1,
1498 [Define to 1 if xshm.h is available])
1502 if test "x$enable_xinerama" = "xyes"; then
1503 # Check for Xinerama extension (Solaris impl or Xfree impl)
1504 gtk_save_cppflags="$CPPFLAGS"
1505 CPPFLAGS="$CPPFLAGS $x_cflags"
1508 AC_MSG_CHECKING(for Xinerama support on XFree86)
1510 have_xfree_xinerama=false
1511 if $PKG_CONFIG --exists xinerama ; then
1512 have_xfree_xinerama=true
1513 X_PACKAGES="$X_PACKAGES xinerama"
1515 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1516 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1517 [GTK_ADD_LIB(x_extra_libs,Xinerama)
1518 have_xfree_xinerama=true], :,
1519 [#include <X11/Xlib.h>])])
1522 if $have_xfree_xinerama ; then
1523 AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1524 [Define to 1 if XFree Xinerama is available])
1525 AC_DEFINE(HAVE_XINERAMA, 1,
1526 [Define to 1 is Xinerama is available])
1534 AC_MSG_CHECKING(for Xinerama support on Solaris)
1536 have_solaris_xinerama=false
1537 AC_CHECK_FUNC(XineramaGetInfo,
1538 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1539 [have_solaris_xinerama=true], :,
1540 [#include <X11/Xlib.h>])])
1542 if $have_solaris_xinerama ; then
1543 AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1544 [Define to 1 if solaris xinerama is available])
1545 AC_DEFINE(HAVE_XINERAMA, 1,
1546 [Define to 1 if xinerama is available])
1558 # set up things for XInput
1560 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1561 AC_DEFINE(XINPUT_XFREE, 1,
1562 [Define to 1 if XFree XInput should be used])
1564 if $PKG_CONFIG --exists xi ; then
1565 X_PACKAGES="$X_PACKAGES xi"
1567 GTK_ADD_LIB(x_extra_libs, Xi)
1570 AC_DEFINE(XINPUT_NONE, 1,
1571 [Define to 1 if no XInput should be used])
1574 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1576 # Check for the RANDR extension
1577 if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
1578 AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1580 X_PACKAGES="$X_PACKAGES xrandr"
1583 # Checks for Xcursor library
1585 if $PKG_CONFIG --exists xcursor ; then
1586 AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1588 X_PACKAGES="$X_PACKAGES xcursor"
1591 # Checks for XFixes extension
1593 if $PKG_CONFIG --exists xfixes ; then
1594 AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1596 X_PACKAGES="$X_PACKAGES xfixes"
1597 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1600 # Checks for Xcomposite extension
1602 if $PKG_CONFIG --exists xcomposite ; then
1603 AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1605 X_PACKAGES="$X_PACKAGES xcomposite"
1606 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1609 # Checks for Xdamage extension
1611 if $PKG_CONFIG --exists xdamage ; then
1612 AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1614 X_PACKAGES="$X_PACKAGES xdamage"
1615 GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1618 if $have_base_x_pc ; then
1619 GDK_EXTRA_LIBS="$x_extra_libs"
1621 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1624 CPPFLAGS="$gtk_save_cppflags"
1625 LIBS="$gtk_save_libs"
1627 AM_CONDITIONAL(USE_X11, true)
1629 AM_CONDITIONAL(XINPUT_XFREE, false)
1630 AM_CONDITIONAL(USE_X11, false)
1631 AM_CONDITIONAL(HAVE_X11R6, false)
1634 if test "x$gdktarget" = "xwin32"; then
1635 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1636 AM_CONDITIONAL(USE_WIN32, true)
1638 AM_CONDITIONAL(USE_WIN32, false)
1641 if test "x$gdktarget" = "xquartz"; then
1642 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1643 AM_CONDITIONAL(USE_QUARTZ, true)
1645 AM_CONDITIONAL(USE_QUARTZ, false)
1648 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1649 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"
1651 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1652 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1653 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1654 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1655 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1657 if test "x$gdktarget" = "xdirectfb"; then
1658 DIRECTFB_REQUIRED_VERSION=1.0.0
1659 AC_MSG_CHECKING(for DirectFB)
1661 PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
1662 AM_CONDITIONAL(USE_DIRECTFB, true)
1664 AM_CONDITIONAL(USE_DIRECTFB, false)
1668 # Check for Pango flags
1670 if test "x$gdktarget" = "xwin32"; then
1671 PANGO_PACKAGES="pangowin32 pangocairo"
1673 PANGO_PACKAGES="pango pangocairo"
1676 AC_MSG_CHECKING(Pango flags)
1677 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1678 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1679 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1681 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1684 *** Pango not found. Pango built with Cairo support is required
1685 *** to build GTK+. See http://www.pango.org for Pango information.
1689 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1691 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1694 gtk_save_LIBS="$LIBS"
1695 LIBS="$PANGO_LIBS $LIBS"
1696 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1697 *** Can't link to Pango. Pango is required to build
1698 *** GTK+. For more information see http://www.pango.org]))
1699 LIBS="$gtk_save_LIBS"
1702 CFLAGS="$saved_cflags"
1703 LDFLAGS="$saved_ldflags"
1705 GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 $X_PACKAGES cairo-$cairo_backend"
1706 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1707 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1709 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1710 # into the pkg-config files
1712 if test $enable_explicit_deps != yes ; then
1713 GDK_PACKAGES="$PANGO_PACKAGES"
1717 AC_SUBST(GDK_PACKAGES)
1718 AC_SUBST(GDK_EXTRA_LIBS)
1719 AC_SUBST(GDK_EXTRA_CFLAGS)
1720 AC_SUBST(GDK_DEP_LIBS)
1721 AC_SUBST(GDK_DEP_CFLAGS)
1724 ########################################
1725 # Check for Accessibility Toolkit flags
1726 ########################################
1729 AC_MSG_CHECKING(ATK flags)
1730 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1731 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1732 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1734 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1737 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1742 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1745 gtk_save_LIBS="$LIBS"
1746 LIBS="$ATK_LIBS $LIBS"
1747 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1748 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1749 *** to build GTK+]))
1750 LIBS="$gtk_save_LIBS"
1753 GTK_PACKAGES="atk cairo gio-2.0"
1754 if test "x$gdktarget" = "xx11"; then
1755 GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1759 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"
1760 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"
1762 if test x"$os_win32" = xyes; then
1763 GTK_EXTRA_CFLAGS="$msnative_struct"
1766 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1767 ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1768 PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1769 CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1771 if test $enable_explicit_deps != yes ; then
1772 GDK_PIXBUF_EXTRA_LIBS=
1775 AC_SUBST(GDK_PIXBUF_PACKAGES)
1776 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1777 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1778 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1779 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1781 AC_SUBST(GTK_PACKAGES)
1782 AC_SUBST(GTK_EXTRA_LIBS)
1783 AC_SUBST(GTK_EXTRA_CFLAGS)
1784 AC_SUBST(GTK_DEP_LIBS)
1785 AC_SUBST(GTK_DEP_CFLAGS)
1787 AC_SUBST(GLIB_PREFIX)
1788 AC_SUBST(ATK_PREFIX)
1789 AC_SUBST(PANGO_PREFIX)
1790 AC_SUBST(CAIRO_PREFIX)
1792 AC_SUBST(GTK_DEBUG_FLAGS)
1793 AC_SUBST(GTK_XIM_FLAGS)
1795 ########################
1796 # Checks needed for gail
1797 ########################
1800 dnl Checks for inet libraries:
1801 AC_SEARCH_LIBS(gethostent, nsl)
1802 AC_SEARCH_LIBS(setsockopt, socket)
1803 AC_SEARCH_LIBS(connect, inet)
1805 dnl check for the sockaddr_un.sun_len member
1806 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1807 [struct_sockaddr_un_sun_len=true],
1808 [struct_sockaddr_un_suin_len=false],
1809 [#include <sys/types.h>
1810 #include <sys/un.h>]
1812 case $struct_sockaddr_un_sun_len in
1814 AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1815 [Have the sockaddr_un.sun_len member])
1821 GAIL_INET_LIBS="$LIBS"
1822 AC_SUBST([GAIL_INET_LIBS])
1826 ################################################################
1827 # Printing system checks
1828 ################################################################
1831 [AC_HELP_STRING([--disable-cups]
1832 [disable cups print backend])],,
1835 if test "x$enable_cups" = "xauto"
1837 AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1838 if test "x$CUPS_CONFIG" != "xno"; then
1839 CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1840 CUPS_LIBS=`$CUPS_CONFIG --libs`
1842 CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1843 CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1844 CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1846 if test $CUPS_API_MAJOR -gt 1 -o \
1847 $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1848 AC_DEFINE(HAVE_CUPS_API_1_2, 1,
1849 [Define to 1 if CUPS 1.2 API is available])
1852 AC_SUBST(CUPS_API_MAJOR)
1853 AC_SUBST(CUPS_API_MINOR)
1854 AC_SUBST(CUPS_CFLAGS)
1857 AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1859 AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno")
1861 gtk_save_cflags="$CFLAGS"
1862 CFLAGS="$CUPS_CFLAGS"
1863 AC_TRY_COMPILE([#include <cups/http.h>],
1864 [http_t http; char *s = http.authstring;],
1865 [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1866 [Define if cups http_t authstring field is accessible])],)
1867 CFLAGS="$gtk_save_cflags"
1869 AC_SUBST(HAVE_HTTP_AUTHSTRING)
1871 gtk_save_libs="$LIBS"
1873 AC_CHECK_FUNCS(httpGetAuthString)
1874 LIBS="$gtk_save_libs"
1877 AM_CONDITIONAL(HAVE_CUPS, false)
1880 # Checks to see if we should compile with PAPI backend for GTK+
1884 [AC_HELP_STRING([--disable-papi]
1885 [disable papi print backend])],,
1888 if test "x$enable_papi" = "xauto"
1890 AC_MSG_CHECKING(libpapi)
1891 AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
1892 if test $have_papi = yes; then
1893 AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
1895 AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
1897 AM_CONDITIONAL(HAVE_PAPI, false)
1900 AM_CONDITIONAL(HAVE_PAPI_CUPS, test $have_papi = yes && test "x$CUPS_CONFIG" != "xno")
1902 gtk_save_cppflags="$CPPFLAGS"
1903 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS"
1905 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1906 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1907 *** backend enabled.]))
1909 if test "$os_win32" != "yes"; then
1910 AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1911 *** Can't find cairo-ps.h. You must build Cairo with the
1912 *** postscript backend enabled.]))
1915 CPPFLAGS="$gtk_save_cppflags"
1918 AC_ARG_ENABLE(test-print-backend,
1919 [AC_HELP_STRING([--enable-test-print-backend],
1920 [build test print backend])],,
1921 [enable_test_print_backend=no])
1922 AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1925 ################################################################
1926 # Strip -export-dynamic from the link lines of various libraries
1927 ################################################################
1930 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1931 # but this flag is only meaningful for executables. For libraries
1932 # the effect is undefined; what it causes on Linux is that the
1933 # export list from -export-symbols-regex is ignored and everything
1936 # We are using gmodule-no-export now, but I'm leaving the stripping
1937 # code in place for now, since pango and atk still require gmodule.
1939 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1940 if test -n "$export_dynamic"; then
1941 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1942 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1943 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1944 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1948 ##################################################
1949 # Checks for gtk-doc and docbook-tools
1950 ##################################################
1952 GTK_DOC_CHECK([1.11])
1954 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1955 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1958 [AC_HELP_STRING([--enable-man],
1959 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1962 if test "${enable_man}" != no; then
1964 dnl Check for xsltproc
1966 AC_PATH_PROG([XSLTPROC], [xsltproc])
1967 if test -z "$XSLTPROC"; then
1971 dnl check for DocBook DTD and stylesheets in the local catalog.
1972 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1973 [DocBook XML DTD V4.1.2],,enable_man=no)
1974 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1975 [DocBook XSL Stylesheets],,enable_man=no)
1978 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1981 ##################################################
1983 ##################################################
1985 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1986 outfile=gdkconfig.h-tmp
1987 cat > $outfile <<\_______EOF
1990 * This is a generated file. Please modify `configure.in'
1998 #endif /* __cplusplus */
2001 /* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
2002 # ifdef GSEAL_ENABLE
2003 # define GSEAL(ident) _g_sealed__ ## ident
2005 # define GSEAL(ident) ident
2011 cat >>$outfile <<_______EOF
2016 cat >>$outfile <<_______EOF
2020 #endif /* __cplusplus */
2022 #endif /* GDKCONFIG_H */
2026 if cmp -s $outfile gdk/gdkconfig.h; then
2027 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
2030 mv $outfile gdk/gdkconfig.h
2033 if test "x$gdktarget" = "xx11" ; then
2035 #define GDK_WINDOWING_X11'
2036 elif test "x$gdktarget" = "xwin32" ; then
2038 #define GDK_NATIVE_WINDOW_POINTER
2040 #define GDK_WINDOWING_WIN32'
2041 elif test "x$gdktarget" = "xquartz" ; then
2043 #define GDK_WINDOWING_QUARTZ'
2044 elif test "x$gdktarget" = "xdirectfb" ; then
2046 #define GDK_WINDOWING_DIRECTFB'
2049 if test x$gdk_wchar_h = xyes; then
2051 #define GDK_HAVE_WCHAR_H 1'
2053 if test x$gdk_wctype_h = xyes; then
2055 #define GDK_HAVE_WCTYPE_H 1"
2057 if test x$gdk_working_wctype = xno; then
2059 #define GDK_HAVE_BROKEN_WCTYPE 1"
2072 gtk+-unix-print-2.0.pc
2074 gdk-pixbuf-2.0-uninstalled.pc
2075 gdk-2.0-uninstalled.pc
2076 gtk+-2.0-uninstalled.pc
2080 po-properties/Makefile.in
2082 demos/gtk-demo/Makefile
2083 demos/gtk-demo/geninclude.pl
2086 docs/reference/Makefile
2087 docs/reference/gdk-pixbuf/Makefile
2088 docs/reference/gdk-pixbuf/version.xml
2089 docs/reference/gdk/Makefile
2090 docs/reference/gdk/version.xml
2091 docs/reference/gtk/Makefile
2092 docs/reference/gtk/version.xml
2093 docs/reference/libgail-util/Makefile
2096 docs/tutorial/Makefile
2098 gdk-pixbuf/gdk_pixbuf.rc
2099 gdk-pixbuf/gdk-pixbuf-features.h
2100 gdk-pixbuf/pixops/Makefile
2104 gdk/win32/rc/Makefile
2107 gdk/directfb/Makefile
2113 gtk/theme-bits/Makefile
2116 modules/other/Makefile
2117 modules/other/gail/Makefile
2118 modules/other/gail/libgail-util/Makefile
2119 modules/other/gail/tests/Makefile
2120 modules/engines/Makefile
2121 modules/engines/pixbuf/Makefile
2122 modules/engines/ms-windows/Makefile
2123 modules/engines/ms-windows/Theme/Makefile
2124 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
2125 modules/input/Makefile
2126 modules/printbackends/Makefile
2127 modules/printbackends/cups/Makefile
2128 modules/printbackends/lpr/Makefile
2129 modules/printbackends/file/Makefile
2130 modules/printbackends/papi/Makefile
2131 modules/printbackends/test/Makefile
2134 contrib/gdk-pixbuf-xlib/Makefile
2135 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
2140 echo "configuration: