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], [7])
15 m4_define([gtk_micro_version], [2])
16 m4_define([gtk_version],
17 [gtk_major_version.gtk_minor_version.gtk_micro_version])
18 m4_define([gtk_interface_age], [0])
19 m4_define([gtk_binary_age],
20 [m4_eval(100 * gtk_minor_version + gtk_micro_version)])
21 # This is the X.Y used in -lgtk-FOO-X.Y
22 m4_define([gtk_api_version], [2.0])
24 # Define a string for the earliest version that this release has
25 # backwards binary compatibility with for all interfaces a module
26 # might. Unless we add module-only API with lower stability
27 # guarantees, this should be unchanged until we break binary compat
30 #GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
31 m4_define([gtk_binary_version], [2.4.0])
33 # required versions of other packages
34 m4_define([glib_required_version], [2.7.1])
35 m4_define([pango_required_version], [1.9.0])
36 m4_define([atk_required_version], [1.0.1])
39 AC_INIT([gtk+], [gtk_version],
40 [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
43 AC_CONFIG_SRCDIR([gdk/gdktypes.h])
45 # Save this value here, since automake will set cflags later
46 cflags_set=${CFLAGS+set}
48 AM_INIT_AUTOMAKE(no-define)
49 AM_CONFIG_HEADER(config.h)
52 # For each of the libraries we build, we define the following
54 # substituted variables:
56 # foo_PACKAGES: pkg-config packages this library requires
57 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
58 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
59 # foo_DEP_LIBS: All libraries this module requires
60 # foo_DEP_CFLAGS: All cflags this module requires
63 GTK_MAJOR_VERSION=gtk_major_version
64 GTK_MINOR_VERSION=gtk_minor_version
65 GTK_MICRO_VERSION=gtk_micro_version
66 GTK_INTERFACE_AGE=gtk_interface_age
67 GTK_BINARY_AGE=gtk_binary_age
68 GTK_VERSION=gtk_version
69 GTK_API_VERSION=gtk_api_version
70 GTK_BINARY_VERSION=gtk_binary_version
71 AC_SUBST(GTK_MAJOR_VERSION)
72 AC_SUBST(GTK_MINOR_VERSION)
73 AC_SUBST(GTK_MICRO_VERSION)
74 AC_SUBST(GTK_INTERFACE_AGE)
75 AC_SUBST(GTK_BINARY_AGE)
76 AC_SUBST(GTK_API_VERSION)
78 AC_SUBST(GTK_BINARY_VERSION)
81 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
82 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
83 #LT_REVISION=$GTK_INTERFACE_AGE
84 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
85 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
87 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
88 m4_define([lt_revision], [gtk_interface_age])
89 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
90 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
91 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
92 AC_SUBST(LT_VERSION_INFO)
93 AC_SUBST(LT_CURRENT_MINUS_AGE)
97 # gdk-pixbuf gets versioned separately, and for now, using standard
98 # libtool versioning, not GTK+-style versioning
100 GDK_PIXBUF_MAJOR=gtk_major_version
101 GDK_PIXBUF_MINOR=gtk_minor_version
102 GDK_PIXBUF_MICRO=gtk_micro_version
103 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
104 AC_SUBST(GDK_PIXBUF_MAJOR)
105 AC_SUBST(GDK_PIXBUF_MINOR)
106 AC_SUBST(GDK_PIXBUF_MICRO)
107 AC_SUBST(GDK_PIXBUF_VERSION)
109 GETTEXT_PACKAGE=gtk20
110 AC_SUBST(GETTEXT_PACKAGE)
111 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
116 AC_MSG_CHECKING([for native Win32])
126 AC_MSG_RESULT([$os_win32])
133 dnl Initialize libtool
137 if test "$os_win32" = "yes"; then
138 if test x$enable_static = xyes -o x$enable_static = x; then
139 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
142 if test x$enable_shared = xno; then
143 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
151 # Make sure we use 64-bit versions of various file stuff.
155 AC_PATH_PROG(NM, nm, nm)
157 dnl Initialize maintainer mode
160 AC_MSG_CHECKING([for some Win32 platform])
162 *-*-mingw*|*-*-cygwin*)
169 AC_MSG_RESULT([$platform_win32])
170 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
172 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
173 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
174 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
176 if test "$os_win32" = "yes"; then
177 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
179 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
181 m4_define([debug_default],
182 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
184 dnl declare --enable-* args and collect ac_help strings
186 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
187 [turn on debugging @<:@default=debug_default@:>@]),,
188 enable_debug=debug_default)
190 [AC_HELP_STRING([--enable-shm],
191 [support shared memory if available [default=yes]])],,
194 [AC_HELP_STRING([--enable-xkb],
195 [support XKB [default=maybe]])],,
196 [enable_xkb="maybe"])
197 AC_ARG_ENABLE(rebuilds,
198 [AC_HELP_STRING([--disable-rebuilds],
199 [disable all source autogeneration rules])],,
200 [enable_rebuilds=yes])
201 AC_ARG_ENABLE(visibility,
202 [AC_HELP_STRING([--disable-visibility],
203 [don't use ELF visibility attributes])],,
204 [enable_visibility=yes])
207 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
210 [AC_HELP_STRING([--with-wintab=DIRECTORY],
211 [use Wintab API with win32 backend])])
213 [AC_HELP_STRING([--with-ie55=DIRECTORY],
214 [IE5.5 libs and headers (for Active IMM)])])
216 if test "$platform_win32" = yes; then
222 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32]] select non-default GDK target],
223 gdktarget=$with_gdktarget)
227 x11|linux-fb|win32) ;;
228 *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb or win32.]);;
231 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
232 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
234 AC_SUBST(gdktargetlib)
235 AC_SUBST(gtktargetlib)
237 AC_ARG_ENABLE(shadowfb,
238 [AC_HELP_STRING([--disable-shadowfb],
239 [disable shadowfb support for linux-fb])],,
240 [enable_shadowfb=yes])
242 AC_ARG_ENABLE(fbmanager,
243 [AC_HELP_STRING([--enable-fbmanager],
244 [enable framebuffer manager support (GtkFB)])],,
247 if test "x$enable_debug" = "xyes"; then
248 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
249 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
251 if test "x$enable_debug" = "xno"; then
252 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
254 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
258 if test "x$enable_visibility" = "xno"; then
259 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
263 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
266 # Build time sanity check...
269 # Checks for programs.
276 if test "x$GCC" = "xyes"; then
278 *[\ \ ]-Wall[\ \ ]*) ;;
279 *) CFLAGS="$CFLAGS -Wall" ;;
282 if test "x$enable_ansi" = "xyes"; then
284 *[\ \ ]-ansi[\ \ ]*) ;;
285 *) CFLAGS="$CFLAGS -ansi" ;;
289 *[\ \ ]-pedantic[\ \ ]*) ;;
290 *) CFLAGS="$CFLAGS -pedantic" ;;
296 # Ensure MSVC-compatible struct packing convention is used when
297 # compiling for Win32 with gcc.
298 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
299 # gcc2 uses "-fnative-struct".
300 if test x"$os_win32" = xyes; then
301 if test x"$GCC" = xyes; then
303 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
304 if test -z "$ac_cv_prog_CC"; then
307 our_gcc="$ac_cv_prog_CC"
309 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
311 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
312 msnative_struct='-fnative-struct'
316 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
317 msnative_struct='-mms-bitfields'
321 if test x"$msnative_struct" = x ; then
322 AC_MSG_RESULT([no way])
323 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
325 CFLAGS="$CFLAGS $msnative_struct"
326 AC_MSG_RESULT([${msnative_struct}])
331 # Honor aclocal flags
332 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
334 ## Initial sanity check, done here so that users get told they
335 ## have the wrong dependencies as early in the process as possible.
336 ## Later on we actually use the cflags/libs from separate pkg-config
337 ## calls. Oh, also the later pkg-config calls don't include
338 ## the version requirements since those make the module lists
339 ## annoying to construct
340 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
341 [glib-2.0 >= glib_required_version dnl
342 atk >= atk_required_version dnl
343 pango >= pango_required_version])
345 if test "$os_win32" != yes; then
346 # libtool option to control which symbols are exported
347 # right now, symbols starting with _ are not exported
348 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
350 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
351 LIBTOOL_EXPORT_OPTIONS=
353 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
355 dnl ******************************************************
356 dnl * See whether to include shared library dependencies *
357 dnl ******************************************************
359 AC_ARG_ENABLE(explicit-deps,
360 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
361 [use explicit dependencies in .pc files [default=auto]])],,
362 [enable_explicit_deps=auto])
364 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
365 case $enable_explicit_deps in
367 deplib_check_method=`(./libtool --config; echo eval echo \\$deplib_check_method) | sh`
368 if test "X$deplib_check_method" = Xnone || test "x$enable_static" = xyes ; then
369 enable_explicit_deps=yes
371 enable_explicit_deps=no
376 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
379 AC_MSG_RESULT($enable_explicit_deps)
381 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
383 # define a MAINT-like variable REBUILD which is set if Perl
384 # and awk are found, so autogenerated sources can be rebuilt
386 AC_PATH_PROGS(PERL, perl5 perl)
388 # We would like indent, but don't require it.
389 AC_CHECK_PROG(INDENT, indent, indent)
392 if test "x$enable_rebuilds" = "xyes" && \
394 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
399 AC_CHECK_FUNCS(lstat mkstemp flockfile)
401 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
402 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
403 AC_TRY_LINK([#include <langinfo.h>], [
405 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
406 ], gtk_ok=yes, gtk_ok=no)
407 AC_MSG_RESULT($gtk_ok)
408 if test "$gtk_ok" = "yes"; then
409 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
410 [Define if _NL_TIME_FIRST_WEEKDAY is available])
413 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
414 AC_MSG_CHECKING(for sigsetjmp)
415 AC_TRY_LINK([#include <setjmp.h>], [
418 ], gtk_ok=yes, gtk_ok=no)
419 AC_MSG_RESULT($gtk_ok)
420 if test "$gtk_ok" = "yes"; then
421 AC_DEFINE(HAVE_SIGSETJMP)
425 # TRANSLATORS: Please note that gtk+ has both po/ and po-properties/
426 # directories. If you add a new language to ALL_LINGUAS, please make
427 # sure that both po/ and po-properties/ have .po files that correspond
428 # to your language. If you only add one to po/, the build will break
430 ALL_LINGUAS="af am ar az az_IR be bg bn br bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu ia id is it ja ko li lt lv mi mk ml mn mr ms nb ne nl nn no nso pa pl pt pt_BR ro ru rw sk sl sq sr sr@ije sr@Latn sv ta th tk tr uk uz uz@Latn vi wa xh yi zh_CN zh_TW"
432 LIBS="$LIBS $INTLLIBS"
433 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
434 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
437 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
439 dnl The DU4 header files don't provide library prototypes unless
440 dnl -std1 is given to the native cc.
441 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
445 AC_TRY_RUN([#include <math.h>
446 int main (void) { return (log(1) != log(1.)); }],
447 AC_MSG_RESULT(none needed),
448 gtk_save_CFLAGS="$CFLAGS"
449 CFLAGS="$CFLAGS -std1"
450 AC_TRY_RUN([#include <math.h>
451 int main (void) { return (log(1) != log(1.)); }],
452 AC_MSG_RESULT(-std1),
454 CFLAGS="$gtk_save_CFLAGS"
456 [No ANSI prototypes found in library. (-std1 didn't work.)]),
459 AC_MSG_RESULT(none needed)
463 AC_MSG_CHECKING(for the BeOS)
477 AC_MSG_CHECKING(for HP-UX)
479 hpux9* | hpux10* | hpux11*)
481 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
488 dnl NeXTStep cc seems to need this
489 AC_MSG_CHECKING([for extra flags for POSIX compliance])
490 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
491 AC_MSG_RESULT(none needed),
492 gtk_save_CFLAGS="$CFLAGS"
493 CFLAGS="$CFLAGS -posix"
494 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
495 AC_MSG_RESULT(-posix),
497 CFLAGS="$gtk_save_CFLAGS"
498 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
501 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
504 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
506 AM_PATH_GLIB_2_0(glib_required_version, :,
508 *** GLIB glib_required_version or better is required. The latest version of
509 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
510 gobject gmodule-no-export gthread)
513 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
516 LIBS="$LIBS $GLIB_LIBS"
517 AC_CHECK_FUNCS(bind_textdomain_codeset)
520 AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
521 AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
522 AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
524 if test "${with_ie55+set}" = set && test $with_ie55 != no; then
525 AC_MSG_CHECKING([for dimm.h])
526 saved_CFLAGS="$CFLAGS"
527 CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
528 AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
530 #define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
531 #define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
537 #undef IMEMENUITEMINFOA
538 #undef IMEMENUITEMINFOW
544 AC_MSG_CHECKING([for IE55 uuid.lib])
545 if test -f $with_ie55/Lib/uuid.lib ; then
548 AC_DEFINE(HAVE_DIMM_H)
549 IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
550 AC_SUBST(IE55_UUID_LIB)
553 CFLAGS="$saved_CFLAGS"
558 CFLAGS="$saved_CFLAGS"
561 AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
563 if test "${with_wintab+set}" = set && test $with_wintab != no; then
564 AC_MSG_CHECKING([for wintab.h])
565 saved_CFLAGS="$CFLAGS"
566 CFLAGS="$CFLAGS -I$with_wintab/include"
567 AC_TRY_COMPILE([#include <windows.h>
568 #include <wintab.h>],
571 AC_MSG_CHECKING([for wntab32x.lib])
572 if test -f $with_wintab/lib/i386/wntab32x.lib ; then
575 AC_DEFINE(HAVE_WINTAB)
576 WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
580 CFLAGS="$saved_cflags"
585 CFLAGS="$saved_cflags"
588 AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
590 saved_cflags="$CFLAGS"
591 saved_ldflags="$LDFLAGS"
594 # Checks for header files.
597 # Checks for typedefs, structures, and compiler characteristics.
600 # Checks for library functions.
604 AC_CHECK_FUNCS(mallinfo)
605 AC_CHECK_FUNCS(getresuid)
608 # Check if <sys/select.h> needs to be included for fd_set
609 AC_MSG_CHECKING([for fd_set])
610 AC_TRY_COMPILE([#include <sys/types.h>],
611 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
612 if test $gtk_ok = yes; then
613 AC_MSG_RESULT([yes, found in sys/types.h])
615 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
616 if test $gtk_ok = yes; then
617 AC_DEFINE(HAVE_SYS_SELECT_H)
618 AC_MSG_RESULT([yes, found in sys/select.h])
625 # `widechar' tests for gdki18n.h
626 AC_MSG_CHECKING(for wchar.h)
627 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
628 if test $gdk_wchar_h = yes; then
629 AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
631 AC_MSG_RESULT($gdk_wchar_h)
633 # Check for wctype.h (for iswalnum)
634 AC_MSG_CHECKING(for wctype.h)
635 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
636 if test $gdk_wctype_h = yes; then
637 AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
639 AC_MSG_RESULT($gdk_wctype_h)
641 # in Solaris 2.5, `iswalnum' is in -lw
643 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
646 LIBS="$LIBS $GDK_WLIBS"
647 # The following is necessary for Linux libc-5.4.38
648 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
649 AC_TRY_LINK([#include <stdlib.h>],[
650 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
651 # ifdef HAVE_WCTYPE_H
659 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
661 iswalnum((wchar_t) 0);
662 ], gdk_working_wctype=yes, gdk_working_wctype=no)
665 if test $gdk_working_wctype = no; then
666 AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
669 AC_MSG_RESULT($gdk_working_wctype)
672 # Check for uxtheme.h (for MS-Windows Engine)
673 AC_MSG_CHECKING(for uxtheme.h)
674 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
675 if test $gtk_uxtheme_h = yes; then
676 AC_DEFINE(HAVE_UXTHEME_H,1,[Have uxtheme.h include file])
678 AC_MSG_RESULT($gtk_uxtheme_h)
681 ##################################################
682 # Checks for gdk-pixbuf
683 ##################################################
685 dnl ********************************************************
686 dnl * See whether we need to load our modules as .la files *
687 dnl ********************************************************
691 *-aix*) use_la_modules=true
694 if $use_la_modules ; then
695 AC_DEFINE(USE_LA_MODULES, 1, [Whether to load modules via .la files rather than directly])
699 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
701 AC_ARG_ENABLE(modules,
702 [AC_HELP_STRING([--disable-modules],
703 [disable dynamic module loading])])
707 if test x$enable_modules = xno; then
711 AC_MSG_CHECKING(whether dynamic modules work)
712 ## for loop is to strip newline
713 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
718 dnl Now we check to see if our libtool supports shared lib deps
719 dnl (in a rather ugly way even)
721 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
722 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
723 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
724 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
725 if test "x$pixbuf_deplibs_check" = "xnone" || \
726 test "x$pixbuf_deplibs_check" = "xunknown" || \
727 test "x$pixbuf_deplibs_check" = "x"; then
733 AC_DEFINE(USE_GMODULE)
740 dnl We allow people to disable image loaders explicitely, but if they don't we error
741 dnl out so that people don't accidentally build without them.
744 [AC_HELP_STRING([--without-libpng],
745 [disable PNG loader for gdk-pixbuf])])
747 [AC_HELP_STRING([--without-libjpeg],
748 [disable JPEG loader for gdk-pixbuf])])
750 [AC_HELP_STRING([--without-libtiff],
751 [disable TIFF loader for gdk-pixbuf])])
754 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
755 AC_CHECK_LIB(tiff, TIFFReadScanline,
756 [AC_CHECK_HEADER(tiffio.h,
757 TIFF='tiff'; LIBTIFF='-ltiff',
758 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
759 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
760 [AC_CHECK_HEADER(tiffio.h,
761 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
762 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
763 [AC_CHECK_LIB(tiff34, TIFFFlushData,
764 [AC_CHECK_HEADER(tiffio.h,
765 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
766 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
767 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
770 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
772 *** Checks for TIFF loader failed. You can build without it by passing
773 *** --without-libtiff to configure but some programs using GTK+ may
774 *** not work properly])
778 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
779 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
782 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
783 if test "$jpeg_ok" = yes; then
784 AC_MSG_CHECKING([for jpeglib.h])
790 #include <jpeglib.h>],
793 AC_MSG_RESULT($jpeg_ok)
794 if test "$jpeg_ok" = yes; then
796 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
797 AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
798 AC_MSG_WARN(JPEG library does not support progressive saving.))
800 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
805 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
807 *** Checks for JPEG loader failed. You can build without it by passing
808 *** --without-libjpeg to configure but some programs using GTK+ may
809 *** not work properly])
813 if test x$with_libpng != xno && test -z "$LIBPNG"; then
814 AC_MSG_CHECKING(for libpng12)
815 if $PKG_CONFIG --exists libpng12 ; then
818 PNG_DEP_CFLAGS_PACKAGES=libpng12
819 LIBPNG=`$PKG_CONFIG --libs libpng12`
822 AC_CHECK_LIB(png, png_read_info,
823 [AC_CHECK_HEADER(png.h,
826 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
827 if test "$png_ok" = yes; then
828 AC_MSG_CHECKING([for png_structp in png.h])
829 AC_TRY_COMPILE([#include <png.h>],
830 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
833 AC_MSG_RESULT($png_ok)
834 if test "$png_ok" = yes; then
835 PNG='png'; LIBPNG='-lpng -lz'
837 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
840 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
845 if test x$with_libpng != xno && test -z "$LIBPNG"; then
847 *** Checks for PNG loader failed. You can build without it by passing
848 *** --without-libpng to configure but many programs using GTK+ will
849 *** not work properly. The PNG loader is also needed if you are compiling
857 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
860 # Allow building some or all gdk-pixbuf loaders included
862 AC_MSG_CHECKING(pixbuf loaders to build)
864 dnl due to an autoconf bug, commas in the first arg to
865 dnl AC_HELP_STRING cause problems.
866 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
867 dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
868 AC_ARG_WITH(included_loaders,
869 [ --with-included-loaders=LOADER1,LOADER2,...
870 build the specified loaders into gdk-pixbuf (only
871 used if module loading disabled)])
876 ## if the option was specified, leave it; otherwise disable included loaders
877 if test x$with_included_loaders = xno; then
878 with_included_loaders=yes
882 all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
884 # If no loaders specified, include all
885 if test "x$with_included_loaders" = xyes ; then
886 included_loaders="$all_loaders"
888 included_loaders="$with_included_loaders"
891 AC_MSG_RESULT($included_loaders)
894 INCLUDED_LOADER_DEFINE=
896 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
897 for loader in $included_loaders; do
898 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
901 AC_MSG_ERROR([the specified loader $loader does not exist])
904 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
905 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
908 AC_SUBST(INCLUDED_LOADER_OBJ)
909 AC_SUBST(INCLUDED_LOADER_DEFINE)
915 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
916 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
917 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
921 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
922 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
924 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
925 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
927 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
928 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
931 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
934 # Checks to see if we should compile in MMX support (there will be
935 # a runtime test when the code is actually run to see if it should
936 # be used - this just checks if we can compile it.)
938 # This code is partially taken from Mesa
940 AC_MSG_CHECKING(for x86 platform)
942 i386|i486|i586|i686|i786|k6|k7)
948 AC_MSG_RESULT($use_x86_asm)
951 if test $use_x86_asm = yes; then
955 AC_MSG_CHECKING(compiler support for MMX)
956 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
957 if AC_TRY_EVAL(ac_compile); then
964 if test $use_mmx_asm = yes; then
972 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
975 if test -z "$LIBPNG"; then
979 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
981 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
983 if test $cross_compiling = yes; then
984 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
985 if test x$GDK_PIXBUF_CSOURCE = xno; then
990 if test ! -f $srcdir/gtk/stock-icons/gtkstockpixbufs.h &&
991 test "x$REBUILD_PNGS" = "x#" ; then
993 *** gtkstockpixbufs.h is not in the tree, and cannot be built
994 *** because you don't have libpng, or (when cross-compiling) you
995 *** don't have a prebuilt gdk-pixbuf-csource on the host system.])
998 AC_SUBST(REBUILD_PNGS)
1000 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0"
1001 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
1002 GDK_PIXBUF_EXTRA_CFLAGS=
1003 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1004 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1006 AC_SUBST(GDK_PIXBUF_PACKAGES)
1007 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1008 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1009 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1010 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1013 ########################################
1014 # Windowing system checks
1015 ########################################
1017 GDK_EXTRA_LIBS=$GDK_WLIBS
1023 if test "x$gdktarget" = "xlinux-fb" || test "x$gdktarget" = "xx11" ; then
1025 # Checks for FreeType
1028 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
1029 if test "x$FREETYPE_CONFIG" != "xno" ; then
1030 FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
1031 FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
1033 gtk_save_LIBS="$LIBS"
1034 LIBS="$FREETYPE_LIBS $LIBS"
1035 AC_TRY_LINK_FUNC(FT_New_Face, have_freetype=true,:)
1036 LIBS="$gtk_save_LIBS"
1038 if $have_freetype ; then
1039 gtk_save_cppflags="$CPPFLAGS"
1040 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
1042 AC_MSG_CHECKING([For sufficiently new FreeType (at least 2.0.1)])
1044 #include <ft2build.h>
1045 #include FT_FREETYPE_H
1046 #include FT_ERRORS_H
1048 [(void)1;],:,have_freetype=false)
1049 if $have_freetype ; then
1055 CPPFLAGS="$gtk_save_cppflags"
1058 AC_SUBST(FREETYPE_LIBS)
1059 AC_SUBST(FREETYPE_CFLAGS)
1062 if test "x$gdktarget" = "xx11"; then
1063 # We start off with the libraries from Pango
1065 ## be sure we also have Pango built with Xft2 support
1066 if $PKG_CONFIG --exists 'pangoxft >= 1.2.0' ; then
1067 if $have_freetype ; then
1070 AC_MSG_ERROR([Xft Pango backend found but did not find freetype libraries])
1073 AC_MSG_ERROR([Xft Pango backend is required for x11 target])
1076 if $PKG_CONFIG --exists xft ; then : ; else
1077 AC_MSG_ERROR([Xft version 2 is required for x11 target])
1081 # If Pango included the shared library dependencies from X11 in
1082 # the pkg-config output, then we use that (to avoid duplicates).
1083 # but if they were omitted to avoid binary compatibility problems,
1084 # then we need to repeat the checks.
1086 x_libs="`$PKG_CONFIG --libs pangoxft`"
1088 *-lX11*) pango_omitted_x_deps=no ;;
1089 *) pango_omitted_x_deps=yes ;;
1092 x_cflags="`$PKG_CONFIG --cflags pangoxft`"
1096 if test x$no_x = xyes ; then
1097 AC_MSG_ERROR([X development libraries not found])
1100 if test $pango_omitted_x_deps = yes ; then
1101 # Old versions of Xft didn't necessarily include -lX11 in the output
1102 x_libs="`$PKG_CONFIG --libs xft` -lX11 $X_EXTRA_LIBS"
1105 ## Strip the .la files
1107 x_libs_for_checks=""
1108 for I in $x_libs ; do
1111 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1115 # Sanity check for the X11 library
1116 AC_CHECK_LIB(X11, XOpenDisplay, :,
1117 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
1120 if test "x$enable_shm" = "xyes"; then
1121 # Check for the Xext library (needed for XShm extention)
1122 AC_CHECK_LIB(Xext, XShmAttach,
1123 [GTK_ADD_LIB(x_extra_libs,Xext)],
1124 # On AIX, it is in XextSam instead, but we still need -lXext
1125 [AC_CHECK_LIB(XextSam, XShmAttach,
1126 [GTK_ADD_LIB(x_extra_libs,Xext)
1127 GTK_ADD_LIB(x_extra_libs,XextSam)
1128 ], , -lXext $x_libs_for_checks)],
1132 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1133 # Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11
1134 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $x_extra_libs $X_EXTRA_LIBS"
1136 # GTK+ uses some X calls, so needs to link against X directly
1137 if test $enable_explicit_deps != yes ; then
1138 GTK_DEP_LIBS_FOR_X="$X_LIBS -lX11 $X_EXTRA_LIBS"
1141 # Check for Xinerama extension (Solaris impl or Xfree impl)
1143 gtk_save_cppflags="$CPPFLAGS"
1144 CPPFLAGS="$CPPFLAGS $x_cflags"
1149 use_solaris_xinerama=yes
1150 AC_CHECK_LIB(Xext, XineramaGetInfo,
1151 use_solaris_xinerama=yes,
1152 use_solaris_xinerama=no,
1153 -lXext $x_libs_for_checks)
1154 if test "x$use_solaris_xinerama" = "xyes"; then
1155 AC_CHECK_HEADER(X11/extensions/xinerama.h,
1156 [GTK_ADD_LIB(x_extra_libs,Xext)
1157 AC_DEFINE(HAVE_SOLARIS_XINERAMA)
1158 AC_DEFINE(HAVE_XINERAMA)],
1159 use_solaris_xinerama=no,[#include <X11/Xlib.h>])
1161 AC_MSG_CHECKING(for Xinerama support on Solaris)
1162 AC_MSG_RESULT($use_solaris_xinerama);
1166 use_xfree_xinerama=yes
1167 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1168 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1169 [GTK_ADD_LIB(x_extra_libs,Xext)
1170 GTK_ADD_LIB(x_extra_libs,Xinerama)
1171 AC_DEFINE(HAVE_XFREE_XINERAMA)
1172 AC_DEFINE(HAVE_XINERAMA)],
1173 use_xfree_xinerama=no,
1174 [#include <X11/Xlib.h>])],
1175 use_xfree_xinerama=no, -lXext $x_libs_for_checks)
1176 AC_MSG_CHECKING(for Xinerama support on XFree86)
1177 AC_MSG_RESULT($use_xfree_xinerama);
1181 CPPFLAGS="$gtk_save_cppflags"
1185 gtk_save_cppflags="$CPPFLAGS"
1186 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1188 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1189 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1191 [AC_MSG_RESULT([no])],
1192 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1193 #include <X11/Xlibint.h>],
1195 [AC_MSG_RESULT([yes])
1196 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1197 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1198 [AC_MSG_RESULT([unknown])
1199 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1201 CPPFLAGS="$gtk_save_cppflags"
1203 # Check for shaped window extension
1205 AC_CHECK_LIB(Xext, XShapeCombineMask,
1206 [GTK_ADD_LIB(x_extra_libs,Xext)
1207 AC_DEFINE(HAVE_SHAPE_EXT)],
1211 # Check for XConvertCase (X11R6 specific)
1213 AC_CHECK_LIB(X11, XConvertCase,
1214 AC_DEFINE(HAVE_XCONVERTCASE),
1218 # Check for XInternAtoms (X11R6 specific)
1220 AC_CHECK_LIB(X11, XInternAtoms,
1221 AC_DEFINE([HAVE_XINTERNATOMS], 1,
1222 [Define to 1 if you have the `XInternAtoms' function.]),
1226 # Generic X11R6 check needed for XIM support; we could
1227 # probably use this to replace the above, but we'll
1228 # leave the separate checks for XConvertCase and XInternAtoms
1231 AC_CHECK_LIB(X11, XAddConnectionWatch,
1236 if $have_x11r6; then
1237 AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
1239 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1241 # Check for XKB support.
1243 if test "x$enable_xkb" = "xyes"; then
1244 AC_MSG_WARN(XKB support explicitly enabled)
1246 elif test "x$enable_xkb" = "xmaybe"; then
1247 AC_CHECK_LIB(X11, XkbQueryExtension,
1248 AC_DEFINE(HAVE_XKB),
1252 AC_MSG_WARN(XKB support explicitly disabled)
1255 x_cflags="$X_CFLAGS"
1256 x_ldflags="$X_LDFLAGS"
1258 # set up things for XInput
1260 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1261 AC_DEFINE(XINPUT_XFREE)
1262 GTK_ADD_LIB(x_extra_libs, Xi)
1264 AC_DEFINE(XINPUT_NONE)
1267 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1269 # Check for the RANDR extension
1271 AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
1272 [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
1273 # RANDR requires RENDER
1274 [GTK_ADD_LIB(x_extra_libs, Xrender)
1275 GTK_ADD_LIB(x_extra_libs, Xrandr)
1276 AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library)],
1277 :, [#include <X11/Xlib.h>])], : ,
1278 $X_LIBS -lXrandr -lXrender -lX11 $X_EXTRA_LIBS)
1280 # Checks for Xcursor library
1283 PKG_CHECK_MODULES(XCURSOR, xcursor, have_xcursor=true, :)
1285 if $have_xcursor ; then
1286 AC_DEFINE(HAVE_XCURSOR, 1, Have the Xcursor library)
1287 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xcursor` $GDK_EXTRA_CFLAGS"
1288 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xcursor` $GDK_EXTRA_LIBS"
1292 AC_CHECK_LIB(Xext, XSyncQueryExtension,
1293 [AC_CHECK_HEADER(X11/extensions/sync.h,
1294 [GTK_ADD_LIB(x_extra_libs, Xext)
1295 AC_DEFINE(HAVE_XSYNC, 1, Have the SYNC extension library)],
1296 :, [#include <X11/Xlib.h>])], : ,
1297 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
1299 # Checks for XFixes extension
1302 PKG_CHECK_MODULES(XFIXES, xfixes, have_xfixes=true, :)
1304 if $have_xfixes ; then
1305 AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
1306 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xfixes` $GDK_EXTRA_CFLAGS"
1307 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xfixes` $GDK_EXTRA_LIBS"
1312 if test "x$enable_shm" = "xyes"; then
1313 # Check for shared memory
1314 AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
1315 AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
1317 # Check for the X shared memory extension header file
1319 AC_MSG_CHECKING(X11/extensions/XShm.h)
1320 if test "x$no_xext_lib" = "xyes"; then
1323 gtk_save_CFLAGS="$CFLAGS"
1324 CFLAGS="$CFLAGS $x_cflags"
1327 #include <sys/types.h>
1328 #include <sys/ipc.h>
1329 #include <sys/shm.h>
1330 #include <X11/Xlib.h>
1331 #include <X11/Xutil.h>
1332 #include <X11/extensions/XShm.h>
1333 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1334 CFLAGS="$gtk_save_CFLAGS"
1336 AC_MSG_RESULT($have_xshm)
1337 if test $have_xshm = yes ; then
1338 AC_DEFINE(HAVE_XSHM_H)
1342 if test $pango_omitted_x_deps = yes ; then
1343 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $x_libs $GDK_EXTRA_LIBS"
1345 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $GDK_EXTRA_LIBS"
1348 AM_CONDITIONAL(USE_X11, true)
1350 AM_CONDITIONAL(XINPUT_XFREE, false)
1351 AM_CONDITIONAL(USE_X11, false)
1352 AM_CONDITIONAL(HAVE_X11R6, false)
1355 if test "x$gdktarget" = "xwin32"; then
1356 # We start off with the libraries from Pango
1358 if test x$have_wintab = xyes; then
1359 GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
1360 AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
1363 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -luuid"
1364 AM_CONDITIONAL(USE_WIN32, true)
1366 AM_CONDITIONAL(USE_WIN32, false)
1369 GDK_PIXBUF_XLIB_PACKAGES=
1370 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1371 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"
1373 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1374 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1375 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1376 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1377 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1379 if test "x$gdktarget" = "xlinux-fb"; then
1380 if $have_freetype ; then
1383 AC_MSG_ERROR([Using linux-fb backend but freetype was not found])
1386 ft2_libs="`$PKG_CONFIG --libs pangoft2`"
1388 *-lfreetype*) pango_omitted_ft2_deps=no ;;
1389 *) pango_omitted_ft2_deps=yes ;;
1392 CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
1394 if test x$enable_shadowfb = xyes ; then
1395 AC_DEFINE(ENABLE_SHADOW_FB)
1398 if test x$enable_fbmanager = xyes ; then
1399 AC_DEFINE(ENABLE_FB_MANAGER)
1400 AM_CONDITIONAL(ENABLE_FB_MANAGER, true)
1402 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1405 if test $pango_omitted_ft2_deps = yes ; then
1406 GDK_EXTRA_LIBS="$FREETYPE_LIBS $GDK_EXTRA_LIBS"
1409 AM_CONDITIONAL(USE_LINUX_FB, true)
1411 AM_CONDITIONAL(USE_LINUX_FB, false)
1412 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1416 # Pick correct Pango packages to use
1419 if test "x$gdktarget" = "xx11"; then
1420 PANGO_PACKAGES="pangoxft pangocairo"
1422 # We no longer use pangox, but if we find it, we link to it
1423 # for binary compatibility.
1424 if $PKG_CONFIG --exists pangox ; then
1425 PANGO_PACKAGES="$PANGO_PACKAGES pangox"
1427 elif test "x$gdktarget" = "xwin32"; then
1428 PANGO_PACKAGES="pangowin32 pangocairo"
1429 elif test "x$gdktarget" = "xlinux-fb"; then
1430 PANGO_PACKAGES="pangoft2 pangocairo"
1432 PANGO_PACKAGES="pango pangocairo"
1435 # Check for Pango flags
1437 AC_MSG_CHECKING(Pango flags)
1438 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1439 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1440 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1442 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1445 *** Pango not found. Pango built with Cairo support is required
1446 *** to build GTK+. See http://www.pango.org for Pango information.
1450 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1452 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1455 gtk_save_LIBS="$LIBS"
1456 LIBS="$PANGO_LIBS $LIBS"
1457 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1458 *** Can't link to Pango. Pango is required to build
1459 *** GTK+. For more information see http://www.pango.org]))
1460 LIBS="$gtk_save_LIBS"
1463 CFLAGS="$saved_cflags"
1464 LDFLAGS="$saved_ldflags"
1466 GDK_PACKAGES="$PANGO_PACKAGES"
1467 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1468 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1471 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1472 # into the pkg-config files
1474 if test $enable_explicit_deps != yes ; then
1478 AC_SUBST(GDK_PACKAGES)
1479 AC_SUBST(GDK_EXTRA_LIBS)
1480 AC_SUBST(GDK_EXTRA_CFLAGS)
1481 AC_SUBST(GDK_DEP_LIBS)
1482 AC_SUBST(GDK_DEP_CFLAGS)
1485 ########################################
1486 # Check for Accessibility Toolkit flags
1487 ########################################
1490 AC_MSG_CHECKING(ATK flags)
1491 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1492 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1493 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1495 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1498 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1503 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1506 gtk_save_LIBS="$LIBS"
1507 LIBS="$ATK_LIBS $LIBS"
1508 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1509 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1510 *** to build GTK+]))
1511 LIBS="$gtk_save_LIBS"
1514 GTK_PACKAGES="atk cairo"
1517 GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1518 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"
1520 if test x"$os_win32" = xyes; then
1521 GTK_EXTRA_CFLAGS="$msnative_struct"
1524 AC_SUBST(GTK_PACKAGES)
1525 AC_SUBST(GTK_EXTRA_LIBS)
1526 AC_SUBST(GTK_EXTRA_CFLAGS)
1527 AC_SUBST(GTK_DEP_LIBS)
1528 AC_SUBST(GTK_DEP_CFLAGS)
1531 AC_SUBST(GTK_DEBUG_FLAGS)
1532 AC_SUBST(GTK_XIM_FLAGS)
1534 ################################################################
1535 # Strip -export-dynamic from the link lines of various libraries
1536 ################################################################
1539 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1540 # but this flag is only meaningful for executables. For libraries
1541 # the effect is undefined; what it causes on Linux is that the
1542 # export list from -export-symbols-regex is ignored and everything
1545 # We are using gmodule-no-export now, but I'm leaving the stripping
1546 # code in place for now, since pango and atk still require gmodule.
1547 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1548 if test -n "$export_dynamic"; then
1549 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1550 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1551 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1552 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1556 ##################################################
1557 # Checks for gtk-doc and docbook-tools
1558 ##################################################
1560 GTK_DOC_CHECK([1.4])
1562 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1563 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1566 [AC_HELP_STRING([--enable-man],
1567 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1570 if test "${enable_man}" != no; then
1572 dnl Check for xsltproc
1574 AC_PATH_PROG([XSLTPROC], [xsltproc])
1575 if test -z "$XSLTPROC"; then
1579 dnl check for DocBook DTD and stylesheets in the local catalog.
1580 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1581 [DocBook XML DTD V4.1.2],,enable_man=no)
1582 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1583 [DocBook XSL Stylesheets],,enable_man=no)
1586 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1589 ##################################################
1591 ##################################################
1593 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1594 outfile=gdkconfig.h-tmp
1595 cat > $outfile <<\_______EOF
1598 * This is a generated file. Please modify `configure.in'
1606 #endif /* __cplusplus */
1610 cat >>$outfile <<_______EOF
1615 cat >>$outfile <<_______EOF
1619 #endif /* __cplusplus */
1621 #endif /* GDKCONFIG_H */
1625 if cmp -s $outfile gdk/gdkconfig.h; then
1626 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1629 mv $outfile gdk/gdkconfig.h
1632 if test "x$gdktarget" = "xx11" ; then
1634 #define GDK_WINDOWING_X11'
1635 elif test "x$gdktarget" = "xwin32" ; then
1637 #define GDK_WINDOWING_WIN32'
1638 elif test "x$gdktarget" = "xlinux-fb" ; then
1640 #define GDK_WINDOWING_FB
1641 #define GDK_NATIVE_WINDOW_POINTER'
1644 if test x$gdk_wchar_h = xyes; then
1646 #define GDK_HAVE_WCHAR_H 1'
1648 if test x$gdk_wctype_h = xyes; then
1650 #define GDK_HAVE_WCTYPE_H 1"
1652 if test x$gdk_working_wctype = xno; then
1654 #define GDK_HAVE_BROKEN_WCTYPE 1"
1667 gdk-pixbuf-2.0-uninstalled.pc
1668 gdk-2.0-uninstalled.pc
1669 gtk+-2.0-uninstalled.pc
1672 po-properties/Makefile.in
1674 build/win32/Makefile
1675 build/win32/dirent/Makefile
1677 demos/gtk-demo/Makefile
1678 demos/gtk-demo/geninclude.pl
1681 docs/reference/Makefile
1682 docs/reference/gdk-pixbuf/Makefile
1683 docs/reference/gdk-pixbuf/version.xml
1684 docs/reference/gdk/Makefile
1685 docs/reference/gdk/version.xml
1686 docs/reference/gtk/Makefile
1687 docs/reference/gtk/version.xml
1690 docs/tutorial/Makefile
1692 gdk-pixbuf/gdk_pixbuf.rc
1693 gdk-pixbuf/gdk-pixbuf-features.h
1694 gdk-pixbuf/pixops/Makefile
1698 gdk/win32/rc/Makefile
1700 gdk/linux-fb/Makefile
1705 gtk/stock-icons/Makefile
1706 gtk/theme-bits/Makefile
1707 gtk/xdgmime/Makefile
1709 modules/input/Makefile
1710 modules/engines/Makefile
1711 modules/engines/pixbuf/Makefile
1712 modules/engines/ms-windows/Makefile
1713 modules/engines/ms-windows/Theme/Makefile
1714 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
1716 contrib/gdk-pixbuf-xlib/Makefile
1717 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
1722 echo "configuration:
1725 if test "x$gdktarget" = "xlinux-fb"; then
1726 echo "Warning: The linux-fb GDK target is unmaintained"
1727 echo " and may not work or even compile"