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], [6])
16 m4_define([gtk_version],
17 [gtk_major_version.gtk_minor_version.gtk_micro_version])
18 m4_define([gtk_interface_age], [3])
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])
37 m4_define([cairo_required_version], [0.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)
98 # gdk-pixbuf gets versioned separately, and for now, using standard
99 # libtool versioning, not GTK+-style versioning
101 GDK_PIXBUF_MAJOR=gtk_major_version
102 GDK_PIXBUF_MINOR=gtk_minor_version
103 GDK_PIXBUF_MICRO=gtk_micro_version
104 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
105 AC_SUBST(GDK_PIXBUF_MAJOR)
106 AC_SUBST(GDK_PIXBUF_MINOR)
107 AC_SUBST(GDK_PIXBUF_MICRO)
108 AC_SUBST(GDK_PIXBUF_VERSION)
110 GETTEXT_PACKAGE=gtk20
111 AC_SUBST(GETTEXT_PACKAGE)
112 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
117 AC_MSG_CHECKING([for native Win32])
127 AC_MSG_RESULT([$os_win32])
134 dnl Initialize libtool
138 if test "$os_win32" = "yes"; then
139 if test x$enable_static = xyes -o x$enable_static = x; then
140 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
143 if test x$enable_shared = xno; then
144 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
152 # Make sure we use 64-bit versions of various file stuff.
156 AC_PATH_PROG(NM, nm, nm)
158 dnl Initialize maintainer mode
161 AC_MSG_CHECKING([for some Win32 platform])
163 *-*-mingw*|*-*-cygwin*)
170 AC_MSG_RESULT([$platform_win32])
171 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
173 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
174 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
175 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
177 if test "$os_win32" = "yes"; then
178 AC_CHECK_TOOL(WINDRES, windres, no)
179 if test "$WINDRES" = no; then
180 AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
182 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
184 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
186 m4_define([debug_default],
187 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
189 dnl declare --enable-* args and collect ac_help strings
191 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
192 [turn on debugging @<:@default=debug_default@:>@]),,
193 enable_debug=debug_default)
195 [AC_HELP_STRING([--enable-shm],
196 [support shared memory if available [default=yes]])],,
199 [AC_HELP_STRING([--enable-xkb],
200 [support XKB [default=maybe]])],,
201 [enable_xkb="maybe"])
202 AC_ARG_ENABLE(rebuilds,
203 [AC_HELP_STRING([--disable-rebuilds],
204 [disable all source autogeneration rules])],,
205 [enable_rebuilds=yes])
206 AC_ARG_ENABLE(visibility,
207 [AC_HELP_STRING([--disable-visibility],
208 [don't use ELF visibility attributes])],,
209 [enable_visibility=yes])
212 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
215 [AC_HELP_STRING([--with-wintab=DIRECTORY],
216 [use Wintab API with win32 backend])])
218 [AC_HELP_STRING([--with-ie55=DIRECTORY],
219 [IE5.5 libs and headers (for Active IMM)])])
221 if test "$platform_win32" = yes; then
227 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32]] select non-default GDK target],
228 gdktarget=$with_gdktarget)
232 x11|linux-fb|win32) ;;
233 *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb or win32.]);;
236 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
237 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
239 AC_SUBST(gdktargetlib)
240 AC_SUBST(gtktargetlib)
242 AC_ARG_ENABLE(shadowfb,
243 [AC_HELP_STRING([--disable-shadowfb],
244 [disable shadowfb support for linux-fb])],,
245 [enable_shadowfb=yes])
247 AC_ARG_ENABLE(fbmanager,
248 [AC_HELP_STRING([--enable-fbmanager],
249 [enable framebuffer manager support (GtkFB)])],,
252 if test "x$enable_debug" = "xyes"; then
253 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
254 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
256 if test "x$enable_debug" = "xno"; then
257 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
259 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
263 if test "x$enable_visibility" = "xno"; then
264 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
268 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
271 # Build time sanity check...
274 # Checks for programs.
281 if test "x$GCC" = "xyes"; then
283 *[\ \ ]-Wall[\ \ ]*) ;;
284 *) CFLAGS="$CFLAGS -Wall" ;;
287 if test "x$enable_ansi" = "xyes"; then
289 *[\ \ ]-ansi[\ \ ]*) ;;
290 *) CFLAGS="$CFLAGS -ansi" ;;
294 *[\ \ ]-pedantic[\ \ ]*) ;;
295 *) CFLAGS="$CFLAGS -pedantic" ;;
301 # Ensure MSVC-compatible struct packing convention is used when
302 # compiling for Win32 with gcc.
303 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
304 # gcc2 uses "-fnative-struct".
305 if test x"$os_win32" = xyes; then
306 if test x"$GCC" = xyes; then
308 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
309 if test -z "$ac_cv_prog_CC"; then
312 our_gcc="$ac_cv_prog_CC"
314 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
316 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
317 msnative_struct='-fnative-struct'
321 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
322 msnative_struct='-mms-bitfields'
326 if test x"$msnative_struct" = x ; then
327 AC_MSG_RESULT([no way])
328 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
330 CFLAGS="$CFLAGS $msnative_struct"
331 AC_MSG_RESULT([${msnative_struct}])
336 # Honor aclocal flags
337 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
339 ## Initial sanity check, done here so that users get told they
340 ## have the wrong dependencies as early in the process as possible.
341 ## Later on we actually use the cflags/libs from separate pkg-config
342 ## calls. Oh, also the later pkg-config calls don't include
343 ## the version requirements since those make the module lists
344 ## annoying to construct
345 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
346 [glib-2.0 >= glib_required_version dnl
347 atk >= atk_required_version dnl
348 pango >= pango_required_version dnl
349 cairo >= cairo_required_version])
351 if test "$os_win32" != yes; then
352 # libtool option to control which symbols are exported
353 # right now, symbols starting with _ are not exported
354 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
356 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
357 LIBTOOL_EXPORT_OPTIONS=
359 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
361 dnl ******************************************************
362 dnl * See whether to include shared library dependencies *
363 dnl ******************************************************
365 AC_ARG_ENABLE(explicit-deps,
366 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
367 [use explicit dependencies in .pc files [default=auto]])],,
368 [enable_explicit_deps=auto])
370 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
371 case $enable_explicit_deps in
373 deplib_check_method=`(./libtool --config; echo eval echo \\$deplib_check_method) | sh`
374 if test "X$deplib_check_method" = Xnone || test "x$enable_static" = xyes ; then
375 enable_explicit_deps=yes
377 enable_explicit_deps=no
382 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
385 AC_MSG_RESULT($enable_explicit_deps)
387 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
389 # define a MAINT-like variable REBUILD which is set if Perl
390 # and awk are found, so autogenerated sources can be rebuilt
392 AC_PATH_PROGS(PERL, perl5 perl)
394 # We would like indent, but don't require it.
395 AC_CHECK_PROG(INDENT, indent, indent)
398 if test "x$enable_rebuilds" = "xyes" && \
400 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
405 AC_CHECK_FUNCS(lstat mkstemp flockfile)
407 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
408 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
409 AC_TRY_LINK([#include <langinfo.h>], [
411 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
412 ], gtk_ok=yes, gtk_ok=no)
413 AC_MSG_RESULT($gtk_ok)
414 if test "$gtk_ok" = "yes"; then
415 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
416 [Define if _NL_TIME_FIRST_WEEKDAY is available])
419 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
420 AC_MSG_CHECKING(for sigsetjmp)
421 AC_TRY_LINK([#include <setjmp.h>], [
424 ], gtk_ok=yes, gtk_ok=no)
425 AC_MSG_RESULT($gtk_ok)
426 if test "$gtk_ok" = "yes"; then
427 AC_DEFINE(HAVE_SIGSETJMP)
431 # TRANSLATORS: Please note that gtk+ has both po/ and po-properties/
432 # directories. If you add a new language to ALL_LINGUAS, please make
433 # sure that both po/ and po-properties/ have .po files that correspond
434 # to your language. If you only add one to po/, the build will break
436 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 hy 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 te th tk tr uk uz uz@Latn vi wa xh yi zh_CN zh_TW"
438 LIBS="$LIBS $INTLLIBS"
439 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
440 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
443 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
445 dnl The DU4 header files don't provide library prototypes unless
446 dnl -std1 is given to the native cc.
447 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
451 AC_TRY_RUN([#include <math.h>
452 int main (void) { return (log(1) != log(1.)); }],
453 AC_MSG_RESULT(none needed),
454 gtk_save_CFLAGS="$CFLAGS"
455 CFLAGS="$CFLAGS -std1"
456 AC_TRY_RUN([#include <math.h>
457 int main (void) { return (log(1) != log(1.)); }],
458 AC_MSG_RESULT(-std1),
460 CFLAGS="$gtk_save_CFLAGS"
462 [No ANSI prototypes found in library. (-std1 didn't work.)]),
465 AC_MSG_RESULT(none needed)
469 AC_MSG_CHECKING(for the BeOS)
483 AC_MSG_CHECKING(for HP-UX)
485 hpux9* | hpux10* | hpux11*)
487 CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
494 dnl NeXTStep cc seems to need this
495 AC_MSG_CHECKING([for extra flags for POSIX compliance])
496 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
497 AC_MSG_RESULT(none needed),
498 gtk_save_CFLAGS="$CFLAGS"
499 CFLAGS="$CFLAGS -posix"
500 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
501 AC_MSG_RESULT(-posix),
503 CFLAGS="$gtk_save_CFLAGS"
504 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
507 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
510 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
512 AM_PATH_GLIB_2_0(glib_required_version, :,
514 *** GLIB glib_required_version or better is required. The latest version of
515 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
516 gobject gmodule-no-export gthread)
519 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
522 LIBS="$LIBS $GLIB_LIBS"
523 AC_CHECK_FUNCS(bind_textdomain_codeset)
526 AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
527 AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
528 AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
530 if test "${with_ie55+set}" = set && test $with_ie55 != no; then
531 AC_MSG_CHECKING([for dimm.h])
532 saved_CFLAGS="$CFLAGS"
533 CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
534 AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
536 #define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
537 #define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
543 #undef IMEMENUITEMINFOA
544 #undef IMEMENUITEMINFOW
550 AC_MSG_CHECKING([for IE55 uuid.lib])
551 if test -f $with_ie55/Lib/uuid.lib ; then
554 AC_DEFINE(HAVE_DIMM_H)
555 IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
556 AC_SUBST(IE55_UUID_LIB)
559 CFLAGS="$saved_CFLAGS"
564 CFLAGS="$saved_CFLAGS"
567 AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
569 if test "${with_wintab+set}" = set && test $with_wintab != no; then
570 AC_MSG_CHECKING([for wintab.h])
571 saved_CFLAGS="$CFLAGS"
572 CFLAGS="$CFLAGS -I$with_wintab/include"
573 AC_TRY_COMPILE([#include <windows.h>
574 #include <wintab.h>],
577 AC_MSG_CHECKING([for wntab32x.lib])
578 if test -f $with_wintab/lib/i386/wntab32x.lib ; then
581 AC_DEFINE(HAVE_WINTAB)
582 WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
586 CFLAGS="$saved_cflags"
591 CFLAGS="$saved_cflags"
594 AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
596 saved_cflags="$CFLAGS"
597 saved_ldflags="$LDFLAGS"
600 # Checks for header files.
603 # Checks for typedefs, structures, and compiler characteristics.
606 # Checks for library functions.
610 AC_CHECK_FUNCS(mallinfo)
611 AC_CHECK_FUNCS(getresuid)
614 # Check if <sys/select.h> needs to be included for fd_set
615 AC_MSG_CHECKING([for fd_set])
616 AC_TRY_COMPILE([#include <sys/types.h>],
617 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
618 if test $gtk_ok = yes; then
619 AC_MSG_RESULT([yes, found in sys/types.h])
621 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
622 if test $gtk_ok = yes; then
623 AC_DEFINE(HAVE_SYS_SELECT_H)
624 AC_MSG_RESULT([yes, found in sys/select.h])
631 # `widechar' tests for gdki18n.h
632 AC_MSG_CHECKING(for wchar.h)
633 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
634 if test $gdk_wchar_h = yes; then
635 AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
637 AC_MSG_RESULT($gdk_wchar_h)
639 # Check for wctype.h (for iswalnum)
640 AC_MSG_CHECKING(for wctype.h)
641 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
642 if test $gdk_wctype_h = yes; then
643 AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
645 AC_MSG_RESULT($gdk_wctype_h)
647 # in Solaris 2.5, `iswalnum' is in -lw
649 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
652 LIBS="$LIBS $GDK_WLIBS"
653 # The following is necessary for Linux libc-5.4.38
654 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
655 AC_TRY_LINK([#include <stdlib.h>],[
656 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
657 # ifdef HAVE_WCTYPE_H
665 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
667 iswalnum((wchar_t) 0);
668 ], gdk_working_wctype=yes, gdk_working_wctype=no)
671 if test $gdk_working_wctype = no; then
672 AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
675 AC_MSG_RESULT($gdk_working_wctype)
678 # Check for uxtheme.h (for MS-Windows Engine)
679 AC_MSG_CHECKING(for uxtheme.h)
680 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
681 if test $gtk_uxtheme_h = yes; then
682 AC_DEFINE(HAVE_UXTHEME_H,1,[Have uxtheme.h include file])
684 AC_MSG_RESULT($gtk_uxtheme_h)
687 ##################################################
688 # Checks for gdk-pixbuf
689 ##################################################
691 dnl ********************************************************
692 dnl * See whether we need to load our modules as .la files *
693 dnl ********************************************************
697 *-aix*) use_la_modules=true
700 if $use_la_modules ; then
701 AC_DEFINE(USE_LA_MODULES, 1, [Whether to load modules via .la files rather than directly])
705 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
707 AC_ARG_ENABLE(modules,
708 [AC_HELP_STRING([--disable-modules],
709 [disable dynamic module loading])])
713 if test x$enable_modules = xno; then
717 AC_MSG_CHECKING(whether dynamic modules work)
718 ## for loop is to strip newline
719 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
724 dnl Now we check to see if our libtool supports shared lib deps
725 dnl (in a rather ugly way even)
727 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
728 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
729 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
730 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
731 if test "x$pixbuf_deplibs_check" = "xnone" || \
732 test "x$pixbuf_deplibs_check" = "xunknown" || \
733 test "x$pixbuf_deplibs_check" = "x"; then
739 AC_DEFINE(USE_GMODULE)
746 dnl We allow people to disable image loaders explicitely, but if they don't we error
747 dnl out so that people don't accidentally build without them.
750 [AC_HELP_STRING([--without-libpng],
751 [disable PNG loader for gdk-pixbuf])])
753 [AC_HELP_STRING([--without-libjpeg],
754 [disable JPEG loader for gdk-pixbuf])])
756 [AC_HELP_STRING([--without-libtiff],
757 [disable TIFF loader for gdk-pixbuf])])
760 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
761 AC_CHECK_LIB(tiff, TIFFReadScanline,
762 [AC_CHECK_HEADER(tiffio.h,
763 TIFF='tiff'; LIBTIFF='-ltiff',
764 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
765 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
766 [AC_CHECK_HEADER(tiffio.h,
767 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
768 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
769 [AC_CHECK_LIB(tiff34, TIFFFlushData,
770 [AC_CHECK_HEADER(tiffio.h,
771 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
772 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
773 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
776 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
778 *** Checks for TIFF loader failed. You can build without it by passing
779 *** --without-libtiff to configure but some programs using GTK+ may
780 *** not work properly])
784 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
785 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
788 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
789 if test "$jpeg_ok" = yes; then
790 AC_MSG_CHECKING([for jpeglib.h])
796 #include <jpeglib.h>],
799 AC_MSG_RESULT($jpeg_ok)
800 if test "$jpeg_ok" = yes; then
802 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
803 AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
804 AC_MSG_WARN(JPEG library does not support progressive saving.))
806 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
811 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
813 *** Checks for JPEG loader failed. You can build without it by passing
814 *** --without-libjpeg to configure but some programs using GTK+ may
815 *** not work properly])
819 if test x$with_libpng != xno && test -z "$LIBPNG"; then
820 AC_MSG_CHECKING(for libpng12)
821 if $PKG_CONFIG --exists libpng12 ; then
824 PNG_DEP_CFLAGS_PACKAGES=libpng12
825 LIBPNG=`$PKG_CONFIG --libs libpng12`
828 AC_CHECK_LIB(png, png_read_info,
829 [AC_CHECK_HEADER(png.h,
832 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
833 if test "$png_ok" = yes; then
834 AC_MSG_CHECKING([for png_structp in png.h])
835 AC_TRY_COMPILE([#include <png.h>],
836 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
839 AC_MSG_RESULT($png_ok)
840 if test "$png_ok" = yes; then
841 PNG='png'; LIBPNG='-lpng -lz'
843 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
846 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
851 if test x$with_libpng != xno && test -z "$LIBPNG"; then
853 *** Checks for PNG loader failed. You can build without it by passing
854 *** --without-libpng to configure but many programs using GTK+ will
855 *** not work properly. The PNG loader is also needed if you are compiling
863 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
866 # Allow building some or all gdk-pixbuf loaders included
868 AC_MSG_CHECKING(pixbuf loaders to build)
870 dnl due to an autoconf bug, commas in the first arg to
871 dnl AC_HELP_STRING cause problems.
872 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
873 dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
874 AC_ARG_WITH(included_loaders,
875 [ --with-included-loaders=LOADER1,LOADER2,...
876 build the specified loaders into gdk-pixbuf (only
877 used if module loading disabled)])
882 ## if the option was specified, leave it; otherwise disable included loaders
883 if test x$with_included_loaders = xno; then
884 with_included_loaders=yes
888 all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
890 # If no loaders specified, include all
891 if test "x$with_included_loaders" = xyes ; then
892 included_loaders="$all_loaders"
894 included_loaders="$with_included_loaders"
897 AC_MSG_RESULT($included_loaders)
900 INCLUDED_LOADER_DEFINE=
902 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
903 for loader in $included_loaders; do
904 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
907 AC_MSG_ERROR([the specified loader $loader does not exist])
910 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
911 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
914 AC_SUBST(INCLUDED_LOADER_OBJ)
915 AC_SUBST(INCLUDED_LOADER_DEFINE)
921 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
922 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
923 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
927 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
928 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
930 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
931 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
933 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
934 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
937 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
940 # Checks to see if we should compile in MMX support (there will be
941 # a runtime test when the code is actually run to see if it should
942 # be used - this just checks if we can compile it.)
944 # This code is partially taken from Mesa
946 AC_MSG_CHECKING(for x86 platform)
948 i386|i486|i586|i686|i786|k6|k7)
954 AC_MSG_RESULT($use_x86_asm)
957 if test $use_x86_asm = yes; then
961 AC_MSG_CHECKING(compiler support for MMX)
962 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
963 if AC_TRY_EVAL(ac_compile); then
970 if test $use_mmx_asm = yes; then
978 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
981 if test -z "$LIBPNG"; then
985 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
987 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
989 if test $cross_compiling = yes; then
990 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
991 if test x$GDK_PIXBUF_CSOURCE = xno; then
996 if test ! -f $srcdir/gtk/stock-icons/gtkstockpixbufs.h &&
997 test "x$REBUILD_PNGS" = "x#" ; then
999 *** gtkstockpixbufs.h is not in the tree, and cannot be built
1000 *** because you don't have libpng, or (when cross-compiling) you
1001 *** don't have a prebuilt gdk-pixbuf-csource on the host system.])
1004 AC_SUBST(REBUILD_PNGS)
1006 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0"
1007 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
1008 GDK_PIXBUF_EXTRA_CFLAGS=
1009 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1010 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1012 AC_SUBST(GDK_PIXBUF_PACKAGES)
1013 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1014 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1015 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1016 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1019 ########################################
1020 # Windowing system checks
1021 ########################################
1023 GDK_EXTRA_LIBS=$GDK_WLIBS
1029 if test "x$gdktarget" = "xlinux-fb" || test "x$gdktarget" = "xx11" ; then
1031 # Checks for FreeType
1034 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
1035 if test "x$FREETYPE_CONFIG" != "xno" ; then
1036 FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
1037 FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
1039 gtk_save_LIBS="$LIBS"
1040 LIBS="$FREETYPE_LIBS $LIBS"
1041 AC_TRY_LINK_FUNC(FT_New_Face, have_freetype=true,:)
1042 LIBS="$gtk_save_LIBS"
1044 if $have_freetype ; then
1045 gtk_save_cppflags="$CPPFLAGS"
1046 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
1048 AC_MSG_CHECKING([For sufficiently new FreeType (at least 2.0.1)])
1050 #include <ft2build.h>
1051 #include FT_FREETYPE_H
1052 #include FT_ERRORS_H
1054 [(void)1;],:,have_freetype=false)
1055 if $have_freetype ; then
1061 CPPFLAGS="$gtk_save_cppflags"
1064 AC_SUBST(FREETYPE_LIBS)
1065 AC_SUBST(FREETYPE_CFLAGS)
1068 if test "x$gdktarget" = "xx11"; then
1069 # We start off with the libraries from Pango
1071 ## be sure we also have Pango built with Xft2 support
1072 if $PKG_CONFIG --exists 'pangoxft >= 1.2.0' ; then
1073 if $have_freetype ; then
1076 AC_MSG_ERROR([Xft Pango backend found but did not find freetype libraries])
1079 AC_MSG_ERROR([Xft Pango backend is required for x11 target])
1082 if $PKG_CONFIG --exists xft ; then : ; else
1083 AC_MSG_ERROR([Xft version 2 is required for x11 target])
1087 # If Pango included the shared library dependencies from X11 in
1088 # the pkg-config output, then we use that (to avoid duplicates).
1089 # but if they were omitted to avoid binary compatibility problems,
1090 # then we need to repeat the checks.
1092 x_libs="`$PKG_CONFIG --libs pangoxft`"
1094 *-lX11*) pango_omitted_x_deps=no ;;
1095 *) pango_omitted_x_deps=yes ;;
1098 x_cflags="`$PKG_CONFIG --cflags pangoxft`"
1102 if test x$no_x = xyes ; then
1103 AC_MSG_ERROR([X development libraries not found])
1106 if test $pango_omitted_x_deps = yes ; then
1107 # Old versions of Xft didn't necessarily include -lX11 in the output
1108 x_libs="`$PKG_CONFIG --libs xft` -lX11 $X_EXTRA_LIBS"
1111 ## Strip the .la files
1113 x_libs_for_checks=""
1114 for I in $x_libs ; do
1117 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1121 # Sanity check for the X11 library
1122 AC_CHECK_LIB(X11, XOpenDisplay, :,
1123 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
1126 if test "x$enable_shm" = "xyes"; then
1127 # Check for the Xext library (needed for XShm extention)
1128 AC_CHECK_LIB(Xext, XShmAttach,
1129 [GTK_ADD_LIB(x_extra_libs,Xext)],
1130 # On AIX, it is in XextSam instead, but we still need -lXext
1131 [AC_CHECK_LIB(XextSam, XShmAttach,
1132 [GTK_ADD_LIB(x_extra_libs,Xext)
1133 GTK_ADD_LIB(x_extra_libs,XextSam)
1134 ], , -lXext $x_libs_for_checks)],
1138 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1139 # Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11
1140 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $x_extra_libs $X_EXTRA_LIBS"
1142 # GTK+ uses some X calls, so needs to link against X directly
1143 if test $enable_explicit_deps != yes ; then
1144 GTK_DEP_LIBS_FOR_X="$X_LIBS -lX11 $X_EXTRA_LIBS"
1147 # Check for Xinerama extension (Solaris impl or Xfree impl)
1149 gtk_save_cppflags="$CPPFLAGS"
1150 CPPFLAGS="$CPPFLAGS $x_cflags"
1155 use_solaris_xinerama=yes
1156 AC_CHECK_LIB(Xext, XineramaGetInfo,
1157 use_solaris_xinerama=yes,
1158 use_solaris_xinerama=no,
1159 -lXext $x_libs_for_checks)
1160 if test "x$use_solaris_xinerama" = "xyes"; then
1161 AC_CHECK_HEADER(X11/extensions/xinerama.h,
1162 [GTK_ADD_LIB(x_extra_libs,Xext)
1163 AC_DEFINE(HAVE_SOLARIS_XINERAMA)
1164 AC_DEFINE(HAVE_XINERAMA)],
1165 use_solaris_xinerama=no,[#include <X11/Xlib.h>])
1167 AC_MSG_CHECKING(for Xinerama support on Solaris)
1168 AC_MSG_RESULT($use_solaris_xinerama);
1172 use_xfree_xinerama=yes
1173 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1174 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1175 [GTK_ADD_LIB(x_extra_libs,Xext)
1176 GTK_ADD_LIB(x_extra_libs,Xinerama)
1177 AC_DEFINE(HAVE_XFREE_XINERAMA)
1178 AC_DEFINE(HAVE_XINERAMA)],
1179 use_xfree_xinerama=no,
1180 [#include <X11/Xlib.h>])],
1181 use_xfree_xinerama=no, -lXext $x_libs_for_checks)
1182 AC_MSG_CHECKING(for Xinerama support on XFree86)
1183 AC_MSG_RESULT($use_xfree_xinerama);
1187 CPPFLAGS="$gtk_save_cppflags"
1191 gtk_save_cppflags="$CPPFLAGS"
1192 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1194 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1195 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1197 [AC_MSG_RESULT([no])],
1198 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1199 #include <X11/Xlibint.h>],
1201 [AC_MSG_RESULT([yes])
1202 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1203 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1204 [AC_MSG_RESULT([unknown])
1205 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1207 CPPFLAGS="$gtk_save_cppflags"
1209 # Check for shaped window extension
1211 AC_CHECK_LIB(Xext, XShapeCombineMask,
1212 [GTK_ADD_LIB(x_extra_libs,Xext)
1213 AC_DEFINE(HAVE_SHAPE_EXT)],
1217 # Check for XConvertCase (X11R6 specific)
1219 AC_CHECK_LIB(X11, XConvertCase,
1220 AC_DEFINE(HAVE_XCONVERTCASE),
1224 # Check for XInternAtoms (X11R6 specific)
1226 AC_CHECK_LIB(X11, XInternAtoms,
1227 AC_DEFINE([HAVE_XINTERNATOMS], 1,
1228 [Define to 1 if you have the `XInternAtoms' function.]),
1232 # Generic X11R6 check needed for XIM support; we could
1233 # probably use this to replace the above, but we'll
1234 # leave the separate checks for XConvertCase and XInternAtoms
1237 AC_CHECK_LIB(X11, XAddConnectionWatch,
1242 if $have_x11r6; then
1243 AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
1245 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1247 # Check for XKB support.
1249 if test "x$enable_xkb" = "xyes"; then
1250 AC_MSG_WARN(XKB support explicitly enabled)
1252 elif test "x$enable_xkb" = "xmaybe"; then
1253 AC_CHECK_LIB(X11, XkbQueryExtension,
1254 AC_DEFINE(HAVE_XKB),
1258 AC_MSG_WARN(XKB support explicitly disabled)
1261 x_cflags="$X_CFLAGS"
1262 x_ldflags="$X_LDFLAGS"
1264 # set up things for XInput
1266 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1267 AC_DEFINE(XINPUT_XFREE)
1268 GTK_ADD_LIB(x_extra_libs, Xi)
1270 AC_DEFINE(XINPUT_NONE)
1273 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1275 # Check for the RANDR extension
1277 AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
1278 [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
1279 # RANDR requires RENDER
1280 [GTK_ADD_LIB(x_extra_libs, Xrender)
1281 GTK_ADD_LIB(x_extra_libs, Xrandr)
1282 AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library)],
1283 :, [#include <X11/Xlib.h>])], : ,
1284 $X_LIBS -lXrandr -lXrender -lX11 $X_EXTRA_LIBS)
1286 # Checks for Xcursor library
1289 PKG_CHECK_MODULES(XCURSOR, xcursor, have_xcursor=true, :)
1291 if $have_xcursor ; then
1292 AC_DEFINE(HAVE_XCURSOR, 1, Have the Xcursor library)
1293 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xcursor` $GDK_EXTRA_CFLAGS"
1294 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xcursor` $GDK_EXTRA_LIBS"
1298 AC_CHECK_LIB(Xext, XSyncQueryExtension,
1299 [AC_CHECK_HEADER(X11/extensions/sync.h,
1300 [GTK_ADD_LIB(x_extra_libs, Xext)
1301 AC_DEFINE(HAVE_XSYNC, 1, Have the SYNC extension library)],
1302 :, [#include <X11/Xlib.h>])], : ,
1303 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
1305 # Checks for XFixes extension
1308 PKG_CHECK_MODULES(XFIXES, xfixes, have_xfixes=true, :)
1310 if $have_xfixes ; then
1311 AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
1312 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xfixes` $GDK_EXTRA_CFLAGS"
1313 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xfixes` $GDK_EXTRA_LIBS"
1318 if test "x$enable_shm" = "xyes"; then
1319 # Check for shared memory
1320 AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
1321 AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
1323 # Check for the X shared memory extension header file
1325 AC_MSG_CHECKING(X11/extensions/XShm.h)
1326 if test "x$no_xext_lib" = "xyes"; then
1329 gtk_save_CFLAGS="$CFLAGS"
1330 CFLAGS="$CFLAGS $x_cflags"
1333 #include <sys/types.h>
1334 #include <sys/ipc.h>
1335 #include <sys/shm.h>
1336 #include <X11/Xlib.h>
1337 #include <X11/Xutil.h>
1338 #include <X11/extensions/XShm.h>
1339 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1340 CFLAGS="$gtk_save_CFLAGS"
1342 AC_MSG_RESULT($have_xshm)
1343 if test $have_xshm = yes ; then
1344 AC_DEFINE(HAVE_XSHM_H)
1348 if test $pango_omitted_x_deps = yes ; then
1349 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $x_libs $GDK_EXTRA_LIBS"
1351 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $GDK_EXTRA_LIBS"
1354 AM_CONDITIONAL(USE_X11, true)
1356 AM_CONDITIONAL(XINPUT_XFREE, false)
1357 AM_CONDITIONAL(USE_X11, false)
1358 AM_CONDITIONAL(HAVE_X11R6, false)
1361 if test "x$gdktarget" = "xwin32"; then
1362 # We start off with the libraries from Pango
1364 if test x$have_wintab = xyes; then
1365 GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
1366 AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
1369 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1370 AM_CONDITIONAL(USE_WIN32, true)
1372 AM_CONDITIONAL(USE_WIN32, false)
1375 GDK_PIXBUF_XLIB_PACKAGES=
1376 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1377 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"
1379 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1380 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1381 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1382 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1383 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1385 if test "x$gdktarget" = "xlinux-fb"; then
1386 if $have_freetype ; then
1389 AC_MSG_ERROR([Using linux-fb backend but freetype was not found])
1392 ft2_libs="`$PKG_CONFIG --libs pangoft2`"
1394 *-lfreetype*) pango_omitted_ft2_deps=no ;;
1395 *) pango_omitted_ft2_deps=yes ;;
1398 CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
1400 if test x$enable_shadowfb = xyes ; then
1401 AC_DEFINE(ENABLE_SHADOW_FB)
1404 if test x$enable_fbmanager = xyes ; then
1405 AC_DEFINE(ENABLE_FB_MANAGER)
1406 AM_CONDITIONAL(ENABLE_FB_MANAGER, true)
1408 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1411 if test $pango_omitted_ft2_deps = yes ; then
1412 GDK_EXTRA_LIBS="$FREETYPE_LIBS $GDK_EXTRA_LIBS"
1415 AM_CONDITIONAL(USE_LINUX_FB, true)
1417 AM_CONDITIONAL(USE_LINUX_FB, false)
1418 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1422 # Pick correct Pango packages to use
1425 if test "x$gdktarget" = "xx11"; then
1426 PANGO_PACKAGES="pangoxft pangocairo"
1428 # We no longer use pangox, but if we find it, we link to it
1429 # for binary compatibility.
1430 if $PKG_CONFIG --exists pangox ; then
1431 PANGO_PACKAGES="$PANGO_PACKAGES pangox"
1433 elif test "x$gdktarget" = "xwin32"; then
1434 PANGO_PACKAGES="pangowin32 pangocairo"
1435 elif test "x$gdktarget" = "xlinux-fb"; then
1436 PANGO_PACKAGES="pangoft2 pangocairo"
1438 PANGO_PACKAGES="pango pangocairo"
1441 # Check for Pango flags
1443 AC_MSG_CHECKING(Pango flags)
1444 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1445 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1446 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1448 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1451 *** Pango not found. Pango built with Cairo support is required
1452 *** to build GTK+. See http://www.pango.org for Pango information.
1456 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1458 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1461 gtk_save_LIBS="$LIBS"
1462 LIBS="$PANGO_LIBS $LIBS"
1463 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1464 *** Can't link to Pango. Pango is required to build
1465 *** GTK+. For more information see http://www.pango.org]))
1466 LIBS="$gtk_save_LIBS"
1469 CFLAGS="$saved_cflags"
1470 LDFLAGS="$saved_ldflags"
1472 GDK_PACKAGES="$PANGO_PACKAGES"
1473 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1474 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1477 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1478 # into the pkg-config files
1480 if test $enable_explicit_deps != yes ; then
1484 AC_SUBST(GDK_PACKAGES)
1485 AC_SUBST(GDK_EXTRA_LIBS)
1486 AC_SUBST(GDK_EXTRA_CFLAGS)
1487 AC_SUBST(GDK_DEP_LIBS)
1488 AC_SUBST(GDK_DEP_CFLAGS)
1491 ########################################
1492 # Check for Accessibility Toolkit flags
1493 ########################################
1496 AC_MSG_CHECKING(ATK flags)
1497 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1498 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1499 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1501 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1504 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1509 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1512 gtk_save_LIBS="$LIBS"
1513 LIBS="$ATK_LIBS $LIBS"
1514 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1515 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1516 *** to build GTK+]))
1517 LIBS="$gtk_save_LIBS"
1520 GTK_PACKAGES="atk cairo"
1523 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"
1524 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"
1526 if test x"$os_win32" = xyes; then
1527 GTK_EXTRA_CFLAGS="$msnative_struct"
1530 AC_SUBST(GTK_PACKAGES)
1531 AC_SUBST(GTK_EXTRA_LIBS)
1532 AC_SUBST(GTK_EXTRA_CFLAGS)
1533 AC_SUBST(GTK_DEP_LIBS)
1534 AC_SUBST(GTK_DEP_CFLAGS)
1537 AC_SUBST(GTK_DEBUG_FLAGS)
1538 AC_SUBST(GTK_XIM_FLAGS)
1540 ################################################################
1541 # Strip -export-dynamic from the link lines of various libraries
1542 ################################################################
1545 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1546 # but this flag is only meaningful for executables. For libraries
1547 # the effect is undefined; what it causes on Linux is that the
1548 # export list from -export-symbols-regex is ignored and everything
1551 # We are using gmodule-no-export now, but I'm leaving the stripping
1552 # code in place for now, since pango and atk still require gmodule.
1553 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1554 if test -n "$export_dynamic"; then
1555 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1556 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1557 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1558 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1562 ##################################################
1563 # Checks for gtk-doc and docbook-tools
1564 ##################################################
1566 GTK_DOC_CHECK([1.4])
1568 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1569 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1572 [AC_HELP_STRING([--enable-man],
1573 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1576 if test "${enable_man}" != no; then
1578 dnl Check for xsltproc
1580 AC_PATH_PROG([XSLTPROC], [xsltproc])
1581 if test -z "$XSLTPROC"; then
1585 dnl check for DocBook DTD and stylesheets in the local catalog.
1586 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1587 [DocBook XML DTD V4.1.2],,enable_man=no)
1588 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1589 [DocBook XSL Stylesheets],,enable_man=no)
1592 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1595 ##################################################
1597 ##################################################
1599 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1600 outfile=gdkconfig.h-tmp
1601 cat > $outfile <<\_______EOF
1604 * This is a generated file. Please modify `configure.in'
1612 #endif /* __cplusplus */
1616 cat >>$outfile <<_______EOF
1621 cat >>$outfile <<_______EOF
1625 #endif /* __cplusplus */
1627 #endif /* GDKCONFIG_H */
1631 if cmp -s $outfile gdk/gdkconfig.h; then
1632 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1635 mv $outfile gdk/gdkconfig.h
1638 if test "x$gdktarget" = "xx11" ; then
1640 #define GDK_WINDOWING_X11'
1641 elif test "x$gdktarget" = "xwin32" ; then
1643 #define GDK_WINDOWING_WIN32'
1644 elif test "x$gdktarget" = "xlinux-fb" ; then
1646 #define GDK_WINDOWING_FB
1647 #define GDK_NATIVE_WINDOW_POINTER'
1650 if test x$gdk_wchar_h = xyes; then
1652 #define GDK_HAVE_WCHAR_H 1'
1654 if test x$gdk_wctype_h = xyes; then
1656 #define GDK_HAVE_WCTYPE_H 1"
1658 if test x$gdk_working_wctype = xno; then
1660 #define GDK_HAVE_BROKEN_WCTYPE 1"
1673 gdk-pixbuf-2.0-uninstalled.pc
1674 gdk-2.0-uninstalled.pc
1675 gtk+-2.0-uninstalled.pc
1678 po-properties/Makefile.in
1680 demos/gtk-demo/Makefile
1681 demos/gtk-demo/geninclude.pl
1684 docs/reference/Makefile
1685 docs/reference/gdk-pixbuf/Makefile
1686 docs/reference/gdk-pixbuf/version.xml
1687 docs/reference/gdk/Makefile
1688 docs/reference/gdk/version.xml
1689 docs/reference/gtk/Makefile
1690 docs/reference/gtk/version.xml
1693 docs/tutorial/Makefile
1695 gdk-pixbuf/gdk_pixbuf.rc
1696 gdk-pixbuf/gdk-pixbuf-features.h
1697 gdk-pixbuf/pixops/Makefile
1701 gdk/win32/rc/Makefile
1703 gdk/linux-fb/Makefile
1708 gtk/stock-icons/Makefile
1709 gtk/theme-bits/Makefile
1710 gtk/xdgmime/Makefile
1712 modules/input/Makefile
1713 modules/engines/Makefile
1714 modules/engines/pixbuf/Makefile
1715 modules/engines/ms-windows/Makefile
1716 modules/engines/ms-windows/Theme/Makefile
1717 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
1720 contrib/gdk-pixbuf-xlib/Makefile
1721 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
1726 echo "configuration:
1729 if test "x$gdktarget" = "xlinux-fb"; then
1730 echo "Warning: The linux-fb GDK target is unmaintained"
1731 echo " and may not work or even compile"