1 # require autoconf 2.52
4 # Process this file with autoconf to produce a configure script.
5 AC_INIT(gdk/gdktypes.h)
8 # For each of the libraries we build, we define the following
9 # substituted variables:
11 # foo_PACKAGES: pkg-config packages this library requires
12 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
13 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
14 # foo_DEP_LIBS: All libraries this module requires
15 # foo_DEP_CFLAGS: All cflags this module requires
18 # Save this value here, since automake will set cflags later
19 cflags_set=${CFLAGS+set}
21 dnl we to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they
22 dnl are available for $ac_help expansion (don't we all *love* autoconf?)
23 GLIB_AC_DIVERT_BEFORE_HELP([
26 # GTK_MICRO_VERSION += 1;
27 # GTK_INTERFACE_AGE += 1;
28 # GTK_BINARY_AGE += 1;
29 # if any functions have been added, set GTK_INTERFACE_AGE to 0.
30 # if backwards compatibility has been broken,
31 # set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
38 GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
39 dnl This is the X.Y used in -lgtk-FOO-X.Y
43 AC_SUBST(GTK_MAJOR_VERSION)
44 AC_SUBST(GTK_MINOR_VERSION)
45 AC_SUBST(GTK_MICRO_VERSION)
46 AC_SUBST(GTK_INTERFACE_AGE)
47 AC_SUBST(GTK_BINARY_AGE)
48 AC_SUBST(GTK_API_VERSION)
52 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
53 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
54 #LT_REVISION=$GTK_INTERFACE_AGE
55 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
56 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
58 LT_RELEASE=$GTK_MAJOR_VERSION.0
59 LT_CURRENT=`expr 100 '*' $GTK_MINOR_VERSION + $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
60 LT_REVISION=$GTK_INTERFACE_AGE
61 LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
62 LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
67 AC_SUBST(LT_CURRENT_MINUS_AGE)
69 # Define a string for the earliest version that this release has
70 # forward/backwards binary compatibility with. This is used for module
71 # locations. (Should this be backwards-compat instead?)
73 #GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
74 GTK_BINARY_VERSION=2.2.0
75 AC_SUBST(GTK_BINARY_VERSION)
78 # gdk-pixbuf gets versioned separately, and for now, using standard
79 # libtool versioning, not GTK+-style versioning
81 GDK_PIXBUF_MAJOR=$GTK_MAJOR_VERSION
82 GDK_PIXBUF_MINOR=$GTK_MINOR_VERSION
83 GDK_PIXBUF_MICRO=$GTK_MICRO_VERSION
84 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
85 AC_SUBST(GDK_PIXBUF_MAJOR)
86 AC_SUBST(GDK_PIXBUF_MINOR)
87 AC_SUBST(GDK_PIXBUF_MICRO)
88 AC_SUBST(GDK_PIXBUF_VERSION)
90 ## Versions of dependencies
91 GLIB_REQUIRED_VERSION=2.1.4
92 PANGO_REQUIRED_VERSION=1.0.1
93 ATK_REQUIRED_VERSION=1.0.1
100 AC_SUBST(GETTEXT_PACKAGE)
101 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
103 # Save this value here, since automake will set cflags later
104 cflags_set=${CFLAGS+set}
106 dnl Initialize automake stuff
107 AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
109 # Specify a configuration file
110 AM_CONFIG_HEADER(config.h)
112 dnl Initialize libtool
118 dnl XXXX Hack: Set AS and ASFLAGS so that automake 1.5 will be happy
123 dnl XXXX Hack: Set CCAS and CCASFLAGS so that automake 1.6 will be happy
125 CCASFLAGS="\${CFLAGS}"
129 dnl Initialize maintainer mode
134 AC_MSG_CHECKING([for some Win32 platform])
136 *-*-mingw*|*-*-cygwin*)
143 AC_MSG_RESULT([$platform_win32])
144 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
147 AC_MSG_CHECKING([for native Win32])
157 AC_MSG_RESULT([$os_win32])
158 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
160 if test "$os_win32" = "yes"; then
161 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
163 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
165 dnl figure debugging default, prior to $ac_help setup
167 GLIB_AC_DIVERT_BEFORE_HELP([
168 if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then
171 debug_default=minimum
175 dnl declare --enable-* args and collect ac_help strings
176 AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default)
177 AC_ARG_ENABLE(shm, [ --enable-shm support shared memory if available [default=yes]],
178 echo $enable_shm, enable_shm="yes")
179 AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]],
181 AC_ARG_ENABLE(xkb, [ --enable-xkb support XKB [default=maybe]],
182 , enable_xkb="maybe")
183 AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes)
185 AC_ARG_WITH(xinput, [ --with-xinput=[no/yes] support XInput ])
187 AC_ARG_WITH(wintab, [ --with-wintab=DIRECTORY use Wintab API with win32 backend])
188 AC_ARG_WITH(ie55, [ --with-ie55=DIRECTORY IE5.5 libs and headers (for Active IMM)])
190 GLIB_AC_DIVERT_BEFORE_HELP([
191 if test "$platform_win32" = yes; then
198 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32]] select GDK target [default=$gdktarget]],
199 gdktarget=$with_gdktarget)
203 x11|linux-fb|win32) ;;
204 *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb or win32.]);;
207 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
208 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
210 AC_SUBST(gdktargetlib)
211 AC_SUBST(gtktargetlib)
213 AC_ARG_ENABLE(shadowfb, [ --disable-shadowfb disable shadowfb support for linux-fb],,enable_shadowfb=yes)
215 AC_ARG_ENABLE(fbmanager, [ --enable-fbmanager enable framebuffer manager support (GtkFB)],enable_fbmanager=yes,enable_fbmanager=no)
217 if test "x$enable_debug" = "xyes"; then
218 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
219 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
221 if test "x$enable_debug" = "xno"; then
222 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
224 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
228 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
231 # Build time sanity check...
234 # Checks for programs.
241 if test "x$GCC" = "xyes"; then
243 *[\ \ ]-Wall[\ \ ]*) ;;
244 *) CFLAGS="$CFLAGS -Wall" ;;
247 if test "x$enable_ansi" = "xyes"; then
249 *[\ \ ]-ansi[\ \ ]*) ;;
250 *) CFLAGS="$CFLAGS -ansi" ;;
254 *[\ \ ]-pedantic[\ \ ]*) ;;
255 *) CFLAGS="$CFLAGS -pedantic" ;;
261 # Ensure MSVC-compatible struct packing convention is used when
262 # compiling for Win32 with gcc.
263 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
264 # gcc2 uses "-fnative-struct".
265 if test x"$os_win32" = xyes; then
266 if test x"$GCC" = xyes; then
268 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
269 if test -z "$ac_cv_prog_CC"; then
272 our_gcc="$ac_cv_prog_CC"
274 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
276 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
277 msnative_struct='-fnative-struct'
281 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
282 msnative_struct='-mms-bitfields'
286 if test x"$msnative_struct" = x ; then
287 AC_MSG_RESULT([no way])
288 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
290 CFLAGS="$CFLAGS $msnative_struct"
291 AC_MSG_RESULT([${msnative_struct}])
296 # Honor aclocal flags
297 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
299 ## Initial sanity check, done here so that users get told they
300 ## have the wrong dependencies as early in the process as possible.
301 ## Later on we actually use the cflags/libs from separate pkg-config
302 ## calls. Oh, also the later pkg-config calls don't include
303 ## the version requirements since those make the module lists
304 ## annoying to construct
305 PKG_CHECK_MODULES(BASE_DEPENDENCIES, glib-2.0 >= $GLIB_REQUIRED_VERSION atk >= $ATK_REQUIRED_VERSION pango >= $PANGO_REQUIRED_VERSION)
307 if test "$os_win32" != yes; then
308 # libtool option to control which symbols are exported
309 # right now, symbols starting with _ are not exported
310 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
312 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
313 LIBTOOL_EXPORT_OPTIONS=
315 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
317 dnl ******************************************************
318 dnl * See whether to include shared library dependencies *
319 dnl ******************************************************
321 AC_ARG_ENABLE(explicit-deps,
322 [ --enable-explicit-deps=[yes/no/auto] use explicit dependencies in .pc files [default=auto]],
323 enable_explicit_deps="$enableval",
324 enable_explicit_deps=auto)
326 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
327 case $enable_explicit_deps in
329 deplib_check_method=`(./libtool --config; echo eval echo \\$deplib_check_method) | sh`
330 if test "X$deplib_check_method" = Xnone || test "x$enable_static" = xyes ; then
331 enable_explicit_deps=yes
333 enable_explicit_deps=no
338 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
341 AC_MSG_RESULT($enable_explicit_deps)
343 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
345 # define a MAINT-like variable REBUILD which is set if Perl
346 # and awk are found, so autogenerated sources can be rebuilt
348 AC_PATH_PROGS(PERL, perl5 perl)
350 # We would like indent, but don't require it.
351 AC_CHECK_PROG(INDENT, indent, indent)
354 if test "x$enable_rebuilds" = "xyes" && \
356 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
361 AC_CHECK_FUNCS(lstat mkstemp flockfile)
363 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
364 AC_MSG_CHECKING(for sigsetjmp)
365 AC_TRY_LINK([#include <setjmp.h>], [
368 ], gtk_ok=yes, gtk_ok=no)
369 AC_MSG_RESULT($gtk_ok)
370 if test "$gtk_ok" = "yes"; then
371 AC_DEFINE(HAVE_SIGSETJMP)
374 AC_MSG_CHECKING(whether make is GNU Make)
377 if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
378 STRIP_BEGIN='$(strip $(STRIP_DUMMY)'
385 AC_SUBST(STRIP_DUMMY)
386 AC_SUBST(STRIP_BEGIN)
390 ALL_LINGUAS="az be bg ca cs cy da de el en_GB es et eu fa fi fr ga gl he hi hr hu ia id it ja ko lt lv ml mn ms nl nn no pl pt pt_BR ro ru sk sl sp sr sv tr uk vi wa yi zh_TW zh_CN"
392 LIBS="$LIBS $INTLLIBS"
394 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
396 dnl The DU4 header files don't provide library prototypes unless
397 dnl -std1 is given to the native cc.
398 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
402 AC_TRY_RUN([#include <math.h>
403 int main (void) { return (log(1) != log(1.)); }],
404 AC_MSG_RESULT(none needed),
405 gtk_save_CFLAGS="$CFLAGS"
406 CFLAGS="$CFLAGS -std1"
407 AC_TRY_RUN([#include <math.h>
408 int main (void) { return (log(1) != log(1.)); }],
409 AC_MSG_RESULT(-std1),
411 CFLAGS="$gtk_save_CFLAGS"
413 [No ANSI prototypes found in library. (-std1 didn't work.)]),
416 AC_MSG_RESULT(none needed)
420 AC_MSG_CHECKING(for the BeOS)
431 dnl NeXTStep cc seems to need this
432 AC_MSG_CHECKING([for extra flags for POSIX compliance])
433 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
434 AC_MSG_RESULT(none needed),
435 gtk_save_CFLAGS="$CFLAGS"
436 CFLAGS="$CFLAGS -posix"
437 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
438 AC_MSG_RESULT(-posix),
440 CFLAGS="$gtk_save_CFLAGS"
441 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
444 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
447 GLIB_PACKAGES="gobject-2.0 gmodule-2.0"
449 AM_PATH_GLIB_2_0($GLIB_REQUIRED_VERSION, :,
451 *** GLIB $GLIB_REQUIRED_VERSION or better is required. The latest version of
452 *** GLIB is always available from ftp://ftp.gtk.org/.]),
453 gobject gmodule gthread)
456 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
459 LIBS="$LIBS $GLIB_LIBS"
460 AC_CHECK_FUNCS(bind_textdomain_codeset)
463 AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
464 AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
465 AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
467 if test "${with_ie55+set}" = set && test $with_ie55 != no; then
468 AC_MSG_CHECKING([for dimm.h])
469 saved_CFLAGS="$CFLAGS"
470 CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
471 AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
473 #define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
474 #define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
480 #undef IMEMENUITEMINFOA
481 #undef IMEMENUITEMINFOW
487 AC_MSG_CHECKING([for IE55 uuid.lib])
488 if test -f $with_ie55/Lib/uuid.lib ; then
491 AC_DEFINE(HAVE_DIMM_H)
492 IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
493 AC_SUBST(IE55_UUID_LIB)
496 CFLAGS="$saved_CFLAGS"
501 CFLAGS="$saved_CFLAGS"
504 AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
506 if test "${with_wintab+set}" = set && test $with_wintab != no; then
507 AC_MSG_CHECKING([for wintab.h])
508 saved_CFLAGS="$CFLAGS"
509 CFLAGS="$CFLAGS -I$with_wintab/include"
510 AC_TRY_COMPILE([#include <windows.h>
511 #include <wintab.h>],
514 AC_MSG_CHECKING([for wntab32x.lib])
515 if test -f $with_wintab/lib/i386/wntab32x.lib ; then
518 AC_DEFINE(HAVE_WINTAB)
519 WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
523 CFLAGS="$saved_cflags"
528 CFLAGS="$saved_cflags"
531 AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
533 saved_cflags="$CFLAGS"
534 saved_ldflags="$LDFLAGS"
537 # Checks for header files.
540 # Checks for typedefs, structures, and compiler characteristics.
543 # Checks for library functions.
547 AC_CHECK_FUNCS(getresuid)
550 # Check if <sys/select.h> needs to be included for fd_set
551 AC_MSG_CHECKING([for fd_set])
552 AC_TRY_COMPILE([#include <sys/types.h>],
553 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
554 if test $gtk_ok = yes; then
555 AC_MSG_RESULT([yes, found in sys/types.h])
557 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
558 if test $gtk_ok = yes; then
559 AC_DEFINE(HAVE_SYS_SELECT_H)
560 AC_MSG_RESULT([yes, found in sys/select.h])
567 # `widechar' tests for gdki18n.h
568 AC_MSG_CHECKING(for wchar.h)
569 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
570 if test $gdk_wchar_h = yes; then
571 AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
573 AC_MSG_RESULT($gdk_wchar_h)
575 # Check for wctype.h (for iswalnum)
576 AC_MSG_CHECKING(for wctype.h)
577 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
578 if test $gdk_wctype_h = yes; then
579 AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
581 AC_MSG_RESULT($gdk_wctype_h)
583 # in Solaris 2.5, `iswalnum' is in -lw
585 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
588 LIBS="$LIBS $GDK_WLIBS"
589 # The following is necessary for Linux libc-5.4.38
590 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
591 AC_TRY_LINK([#include <stdlib.h>],[
592 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
593 # ifdef HAVE_WCTYPE_H
601 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
603 iswalnum((wchar_t) 0);
604 ], gdk_working_wctype=yes, gdk_working_wctype=no)
607 if test $gdk_working_wctype = no; then
608 AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
611 AC_MSG_RESULT($gdk_working_wctype)
615 ##################################################
616 # Checks for gdk-pixbuf
617 ##################################################
619 dnl ********************************************************
620 dnl * See whether we need to load our modules as .la files *
621 dnl ********************************************************
625 *-aix*) use_la_modules=true
628 if $use_la_modules ; then
629 AC_DEFINE(USE_LA_MODULES, 1, [Whether to load modules via .la files rather than directly])
633 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
635 AC_ARG_ENABLE(modules, [ --disable-modules disable dynamic module loading])
639 if test x$enable_modules = xno; then
643 AC_MSG_CHECKING(whether dynamic modules work)
644 ## for loop is to strip newline
645 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-2.0`
650 dnl Now we check to see if our libtool supports shared lib deps
651 dnl (in a rather ugly way even)
653 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
654 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
655 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
656 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
657 if test "x$pixbuf_deplibs_check" = "xnone" || \
658 test "x$pixbuf_deplibs_check" = "xunknown" || \
659 test "x$pixbuf_deplibs_check" = "x"; then
665 AC_DEFINE(USE_GMODULE)
672 dnl We allow people to disable image loaders explicitely, but if they don't we error
673 dnl out so that people don't accidentally build without them.
675 AC_ARG_WITH(libpng, [ --without-libpng disable PNG loader for gdk-pixbuf])
676 AC_ARG_WITH(libjpeg, [ --without-libjpeg disable JPEG loader for gdk-pixbuf])
677 AC_ARG_WITH(libtiff, [ --without-libtiff disable TIFF loader for gdk-pixbuf])
680 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
681 AC_CHECK_LIB(tiff, TIFFReadScanline,
682 [AC_CHECK_HEADER(tiffio.h,
683 TIFF='tiff'; LIBTIFF='-ltiff',
684 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
685 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
686 [AC_CHECK_HEADER(tiffio.h,
687 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
688 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
689 [AC_CHECK_LIB(tiff34, TIFFFlushData,
690 [AC_CHECK_HEADER(tiffio.h,
691 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
692 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
693 AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
696 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
698 *** Checks for TIFF loader failed. You can build without it by passing
699 *** --without-libtiff to configure but some programs using GTK+ may
700 *** not work properly])
704 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
705 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
708 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
709 if test "$jpeg_ok" = yes; then
710 AC_MSG_CHECKING([for jpeglib.h])
716 #include <jpeglib.h>],
719 AC_MSG_RESULT($jpeg_ok)
720 if test "$jpeg_ok" = yes; then
722 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
723 AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
724 AC_MSG_WARN(JPEG library does not support progressive saving.))
726 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
731 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
733 *** Checks for JPEG loader failed. You can build without it by passing
734 *** --without-libjpeg to configure but some programs using GTK+ may
735 *** not work properly])
739 if test x$with_libpng != xno && test -z "$LIBPNG"; then
740 AC_MSG_CHECKING(for libpng12)
741 if $PKG_CONFIG --exists libpng12 ; then
744 PNG_DEP_CFLAGS_PACKAGES=libpng12
745 LIBPNG=`$PKG_CONFIG --libs libpng12`
748 AC_CHECK_LIB(png, png_read_info,
749 [AC_CHECK_HEADER(png.h,
752 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
753 if test "$png_ok" = yes; then
754 AC_MSG_CHECKING([for png_structp in png.h])
755 AC_TRY_COMPILE([#include <png.h>],
756 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
759 AC_MSG_RESULT($png_ok)
760 if test "$png_ok" = yes; then
761 PNG='png'; LIBPNG='-lpng -lz'
763 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
766 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
771 if test x$with_libpng != xno && test -z "$LIBPNG"; then
773 *** Checks for PNG loader failed. You can build without it by passing
774 *** --without-libpng to configure but many programs using GTK+ will
775 *** not work properly. The PNG loader is also needed if you are compiling
780 if test -z "$LIBPNG"; then
783 AC_SUBST(REBUILD_PNGS)
789 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
792 # Allow building some or all gdk-pixbuf loaders included
794 AC_MSG_CHECKING(pixbuf loaders to build)
796 AC_ARG_WITH(included_loaders, [ --with-included-loaders=LOADER1,LOADER2,... build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
801 ## if the option was specified, leave it; otherwise disable included loaders
802 if test x$with_included_loaders = xno; then
803 with_included_loaders=yes
807 all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga"
809 # If no loaders specified, include all
810 if test "x$with_included_loaders" = xyes ; then
811 included_loaders="$all_loaders"
813 included_loaders="$with_included_loaders"
816 AC_MSG_RESULT($included_loaders)
819 INCLUDED_LOADER_DEFINE=
821 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
822 for loader in $included_loaders; do
823 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
826 AC_MSG_ERROR([the specified loader $loader does not exist])
829 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
830 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
833 AC_SUBST(INCLUDED_LOADER_OBJ)
834 AC_SUBST(INCLUDED_LOADER_DEFINE)
840 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
841 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
842 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
846 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
847 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
849 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
850 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
852 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
853 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
856 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
859 # Checks to see if we should compile in MMX support (there will be
860 # a runtime test when the code is actually run to see if it should
861 # be used - this just checks if we can compile it.)
863 # This code is partially taken from Mesa
865 AC_MSG_CHECKING(for x86 platform)
867 i386|i486|i586|i686|i786|k6|k7)
873 AC_MSG_RESULT($use_x86_asm)
876 if test $use_x86_asm = yes; then
880 AC_MSG_CHECKING(compiler support for MMX)
881 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
882 if AC_TRY_EVAL(ac_compile); then
889 if test $use_mmx_asm = yes; then
897 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
899 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
901 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
903 if test $cross_compiling = yes; then
904 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
905 if test x$GDK_PIXBUF_CSOURCE = xno; then
906 AC_MSG_ERROR(Could not find a gdk-pixbuf-csource in your PATH)
910 GDK_PIXBUF_PACKAGES="gmodule-2.0 gobject-2.0"
911 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
912 GDK_PIXBUF_EXTRA_CFLAGS=
913 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
914 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
916 AC_SUBST(GDK_PIXBUF_PACKAGES)
917 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
918 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
919 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
920 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
923 ########################################
924 # Windowing system checks
925 ########################################
927 GDK_EXTRA_LIBS=$GDK_WLIBS
932 if test "x$gdktarget" = "xlinux-fb" || test "x$gdktarget" = "xx11" ; then
934 # Checks for FreeType
937 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
938 if test "x$FREETYPE_CONFIG" != "xno" ; then
939 FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
940 FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
942 gtk_save_LIBS="$LIBS"
943 LIBS="$FREETYPE_LIBS $LIBS"
944 AC_TRY_LINK_FUNC(FT_New_Face, have_freetype=true,:)
945 LIBS="$gtk_save_LIBS"
947 if $have_freetype ; then
948 gtk_save_cppflags="$CPPFLAGS"
949 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
951 AC_MSG_CHECKING([For sufficiently new FreeType (at least 2.0.1)])
953 #include <freetype/freetype.h>
956 [(void)1;],:,have_freetype=false)
957 if $have_freetype ; then
963 CPPFLAGS="$gtk_save_cppflags"
966 AC_SUBST(FREETYPE_LIBS)
967 AC_SUBST(FREETYPE_CFLAGS)
970 if test "x$gdktarget" = "xx11"; then
971 # We start off with the libraries from Pango
973 if $PKG_CONFIG --exists pangox ; then : ; else
974 AC_MSG_ERROR([pangox Pango backend is required for x11 target])
977 ## be sure we also have Pango built with xft support
978 if $PKG_CONFIG --exists pangoxft ; then
979 PANGO_PACKAGES="pangoxft pangox"
982 if $have_freetype ; then
985 AC_MSG_ERROR([pangoxft Pango backend found but did not find freetype libraries])
988 PANGO_PACKAGES="pangox"
992 AM_CONDITIONAL(HAVE_XFT, $have_xft)
994 if $PKG_CONFIG --exists xft ; then
995 AC_DEFINE(HAVE_XFT2, 1, [Define if we have Xft, version 2])
999 # If Pango included the shared library dependencies from X11 in
1000 # the pkg-config output, then we use that (to avoid duplicates).
1001 # but if they were omitted to avoid binary compatibility problems
1002 # then we need to repeat the checks.
1004 x_libs="`$PKG_CONFIG --libs $PANGO_PACKAGES`"
1006 *-lX11*) pango_omitted_x_deps=no ;;
1007 *) pango_omitted_x_deps=yes ;;
1010 x_cflags="`$PKG_CONFIG --cflags $PANGO_PACKAGES`"
1013 if test $pango_omitted_x_deps = yes ; then
1016 if test x$no_x = xyes ; then
1017 AC_MSG_ERROR([X development libraries not found])
1020 x_libs="$X_LIBS -lX11 $X_EXTRA_LIBS"
1023 # Checks for Xft/XRender
1025 if test $have_xft = true ; then
1028 if pkg-config --exists pangoxft '>=' 1.1.0 ; then
1029 x_libs="`pkg-config --libs xft` -lX11 $FREETYPE_LIBS $X_EXTRA_LIBS"
1032 gtk_save_cppflags="$CPPFLAGS"
1033 CPPFLAGS="$CPPFLAGS $x_cflags"
1035 AC_CHECK_LIB(Xrender, XRenderFindFormat,
1036 [AC_CHECK_LIB(Xft, XftFontOpen,
1037 [AC_CHECK_HEADER(X11/Xft/XftFreetype.h,
1039 :,-lXrender -lXext $x_libs $FREETYPE_LIBS)]
1043 x_libs="$X_LIBS -lXft -lXrender -lXext -lX11 $FREETYPE_LIBS $X_EXTRA_LIBS"
1046 CPPFLAGS="$gtk_save_cppflags"
1052 AC_MSG_ERROR([pangoxft Pango backend found, but Xft not found])
1057 ## Strip the .la files
1059 x_libs_for_checks=""
1060 for I in $x_libs ; do
1063 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1067 # Sanity check for the X11 library
1068 AC_CHECK_LIB(X11, XOpenDisplay, :,
1069 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
1072 if test "x$enable_shm" = "xyes"; then
1073 # Check for the Xext library (needed for XShm extention)
1074 AC_CHECK_LIB(Xext, XShmAttach,
1075 if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
1076 x_extra_libs="-lXext"
1078 # On AIX, it is in XextSam instead, but we still need -lXext
1079 AC_CHECK_LIB(XextSam, XShmAttach,
1080 if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
1081 x_extra_libs="-lXextSam -lXext"
1083 x_extra_libs="-lXextSam"
1084 fi, , $x_libs_for_checks),
1088 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1089 # Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11
1090 GDK_PIXBUF_XLIB_EXTRA_LIBS="$x_extra_libs $x_libs"
1092 # Check for Xinerama extension (Solaris impl or Xfree impl)
1094 gtk_save_cppflags="$CPPFLAGS"
1095 CPPFLAGS="$CPPFLAGS $x_cflags"
1100 use_solaris_xinerama=yes
1101 AC_CHECK_LIB(Xext, XineramaGetInfo,
1102 use_solaris_xinerama=yes, use_solaris_xinerama=no)
1103 if test "x$use_solaris_xinerama" = "xyes"; then
1104 AC_CHECK_HEADER(X11/extensions/xinerama.h,
1105 if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
1106 x_extra_libs="-lXext $x_extra_libs"
1108 AC_DEFINE(HAVE_SOLARIS_XINERAMA)
1109 AC_DEFINE(HAVE_XINERAMA), use_solaris_xinerama=no, -lXext $x_libs_for_checks)
1111 AC_MSG_CHECKING(for Xinerama support on Solaris)
1112 AC_MSG_RESULT($use_solaris_xinerama);
1116 use_xfree_xinerama=yes
1117 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1118 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1119 x_extra_libs="-lXinerama $x_extra_libs"
1120 if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
1121 x_extra_libs="-lXext $x_extra_libs"
1123 AC_DEFINE(HAVE_XFREE_XINERAMA)
1124 AC_DEFINE(HAVE_XINERAMA),
1125 use_xfree_xinerama=no,
1126 [#include <X11/Xlib.h>])],
1127 use_xfree_xinerama=no, -lXext $x_libs_for_checks)
1128 AC_MSG_CHECKING(for Xinerama support on XFree86)
1129 AC_MSG_RESULT($use_xfree_xinerama);
1133 CPPFLAGS="$gtk_save_cppflags"
1135 # Check for shaped window extension
1137 AC_CHECK_LIB(Xext, XShapeCombineMask,
1138 if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
1139 x_extra_libs="-lXext $x_extra_libs"
1141 AC_DEFINE(HAVE_SHAPE_EXT),
1145 # Check for XConvertCase (X11R6 specific)
1147 AC_CHECK_LIB(X11, XConvertCase,
1148 AC_DEFINE(HAVE_XCONVERTCASE),
1152 # Generic X11R6 check needed for XIM support; we could
1153 # probably use this to replace the above, but we'll
1154 # leave the separate XConvertCase check for clarity
1157 AC_CHECK_LIB(X11, XAddConnectionWatch,
1162 if $have_x11r6; then
1163 AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
1165 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1167 # Check for XKB support.
1169 if test "x$enable_xkb" = "xyes"; then
1170 AC_MSG_WARN(XKB support explicitly enabled)
1172 elif test "x$enable_xkb" = "xmaybe"; then
1173 AC_CHECK_LIB(X11, XkbQueryExtension,
1174 AC_DEFINE(HAVE_XKB),
1178 AC_MSG_WARN(XKB support explicitly disabled)
1181 x_cflags="$X_CFLAGS"
1182 x_ldflags="$X_LDFLAGS"
1184 # set up things for XInput
1186 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1187 AC_DEFINE(XINPUT_XFREE)
1188 x_extra_libs="-lXi $x_extra_libs"
1190 AC_DEFINE(XINPUT_NONE)
1193 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1195 # Check for the RANDR extension
1197 AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
1198 [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
1199 # RANDR requires RENDER
1200 if test -z "`echo $x_extra_libs $x_libs | grep "\-lXrender" 2> /dev/null`"; then
1201 x_extra_libs="-lXrender $x_extra_libs"
1203 x_extra_libs="-lXrandr $x_extra_libs"
1204 AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library),
1205 :, [#include <X11/Xlib.h>])], : ,
1206 $X_LIBS -lXrandr -lXrender -lX11 $X_EXTRA_LIBS)
1210 if test "x$enable_shm" = "xyes"; then
1211 # Check for shared memory
1212 AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
1213 AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
1215 # Check for the X shared memory extension header file
1217 AC_MSG_CHECKING(X11/extensions/XShm.h)
1218 if test "x$no_xext_lib" = "xyes"; then
1221 gtk_save_CFLAGS="$CFLAGS"
1222 CFLAGS="$CFLAGS $x_cflags"
1225 #include <sys/types.h>
1226 #include <sys/ipc.h>
1227 #include <sys/shm.h>
1228 #include <X11/Xlib.h>
1229 #include <X11/Xutil.h>
1230 #include <X11/extensions/XShm.h>
1231 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1232 CFLAGS="$gtk_save_CFLAGS"
1234 AC_MSG_RESULT($have_xshm)
1235 if test $have_xshm = yes ; then
1236 AC_DEFINE(HAVE_XSHM_H)
1241 if test $pango_omitted_x_deps = yes ; then
1242 GDK_EXTRA_LIBS="$x_extra_libs $x_libs $GDK_EXTRA_LIBS"
1244 GDK_EXTRA_LIBS="$x_extra_libs $GDK_EXTRA_LIBS"
1247 AM_CONDITIONAL(USE_X11, true)
1249 AM_CONDITIONAL(HAVE_XFT, false)
1250 AM_CONDITIONAL(XINPUT_XFREE, false)
1251 AM_CONDITIONAL(USE_X11, false)
1254 if test "x$gdktarget" = "xwin32"; then
1255 # We start off with the libraries from Pango
1257 ## be sure we also have Pango built with win32 support
1258 PANGO_PACKAGES="pangowin32"
1260 if test x$have_wintab = xyes; then
1261 GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
1262 AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
1265 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -luuid"
1266 AM_CONDITIONAL(USE_WIN32, true)
1268 AM_CONDITIONAL(USE_WIN32, false)
1271 AC_SUBST(xinput_progs)
1273 GDK_PIXBUF_XLIB_PACKAGES=
1274 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1275 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"
1277 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1278 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1279 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1280 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1281 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1283 if test "x$gdktarget" = "xlinux-fb"; then
1284 if $have_freetype ; then
1287 AC_MSG_ERROR([Using linux-fb backend but freetype was not found])
1290 ft2_libs="`$PKG_CONFIG --libs pangoft2`"
1292 *-lfreetype*) pango_omitted_ft2_deps=no ;;
1293 *) pango_omitted_ft2_deps=yes ;;
1296 CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
1298 if test x$enable_shadowfb = xyes ; then
1299 AC_DEFINE(ENABLE_SHADOW_FB)
1302 if test x$enable_fbmanager = xyes ; then
1303 AC_DEFINE(ENABLE_FB_MANAGER)
1304 AM_CONDITIONAL(ENABLE_FB_MANAGER, true)
1306 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1310 if test $pango_omitted_ft2_deps = yes ; then
1311 GDK_EXTRA_LIBS="$FREETYPE_LIBS $GDK_EXTRA_LIBS"
1314 AM_CONDITIONAL(USE_LINUX_FB, true)
1316 AM_CONDITIONAL(USE_LINUX_FB, false)
1317 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1321 # Pick correct Pango packages to use
1324 if test "x$gdktarget" = "xx11"; then
1325 if $have_xft = true ; then
1326 PANGO_PACKAGES="pangoxft pangox"
1328 PANGO_PACKAGES=pangox
1330 elif test "x$gdktarget" = "xwin32"; then
1331 PANGO_PACKAGES=pangowin32
1332 elif test "x$gdktarget" = "xlinux-fb"; then
1333 PANGO_PACKAGES=pangoft2
1335 PANGO_PACKAGES=pango
1338 # Check for Pango flags
1340 AC_MSG_CHECKING(Pango flags)
1341 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1342 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1343 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1345 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1348 *** Pango not found. Pango is required to build GTK+.
1349 *** See http://www.pango.org for Pango information.
1350 *** For the framebuffer target, you will need to build
1351 *** Pango with freetype support.
1355 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1357 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1360 gtk_save_LIBS="$LIBS"
1361 LIBS="$PANGO_LIBS $LIBS"
1362 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1363 *** Can't link to Pango. Pango is required to build
1364 *** GTK+. For more information see http://www.pango.org]))
1365 LIBS="$gtk_save_LIBS"
1368 CFLAGS="$saved_cflags"
1369 LDFLAGS="$saved_ldflags"
1371 GDK_PACKAGES=$PANGO_PACKAGES
1372 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1373 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1376 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1377 # into the pkg-config files
1379 if test $enable_explicit_deps != yes ; then
1383 AC_SUBST(GDK_PACKAGES)
1384 AC_SUBST(GDK_EXTRA_LIBS)
1385 AC_SUBST(GDK_EXTRA_CFLAGS)
1386 AC_SUBST(GDK_DEP_LIBS)
1387 AC_SUBST(GDK_DEP_CFLAGS)
1390 ########################################
1391 # Check for Accessibility Toolkit flags
1392 ########################################
1395 AC_MSG_CHECKING(ATK flags)
1396 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1397 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1398 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1400 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1403 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1408 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1411 gtk_save_LIBS="$LIBS"
1412 LIBS="$ATK_LIBS $LIBS"
1413 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1414 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1415 *** to build GTK+]))
1416 LIBS="$gtk_save_LIBS"
1422 GTK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1423 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"
1425 AC_SUBST(GTK_PACKAGES)
1426 AC_SUBST(GTK_EXTRA_LIBS)
1427 AC_SUBST(GTK_EXTRA_CFLAGS)
1428 AC_SUBST(GTK_DEP_LIBS)
1429 AC_SUBST(GTK_DEP_CFLAGS)
1432 AC_SUBST(GTK_DEBUG_FLAGS)
1433 AC_SUBST(GTK_XIM_FLAGS)
1435 ##################################################
1436 # Checks for gtk-doc and docbook-tools
1437 ##################################################
1439 AC_ARG_WITH(html-dir, [ --with-html-dir=PATH path to installed docs ])
1441 if test "x$with_html_dir" = "x" ; then
1442 HTML_DIR='${datadir}/gtk-doc/html'
1444 HTML_DIR=$with_html_dir
1449 AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
1451 gtk_doc_min_version=0.10
1453 gtk_doc_version=`gtkdoc-mkdb --version`
1454 AC_MSG_CHECKING([gtk-doc version ($gtk_doc_version) >= $gtk_doc_min_version])
1456 IFS="${IFS= }"; gtk_save_IFS="$IFS"; IFS="."
1457 set $gtk_doc_version
1458 for min in $gtk_doc_min_version ; do
1460 if test -z $min ; then break; fi
1461 if test -z $cur ; then GTKDOC=false; break; fi
1462 if test $cur -gt $min ; then break ; fi
1463 if test $cur -lt $min ; then GTKDOC=false; break ; fi
1474 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1475 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1477 dnl Make people enable the gtk-doc stuff explicitely.
1478 AC_ARG_ENABLE(gtk-doc, [ --enable-gtk-doc use gtk-doc to build documentation [default=no]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)
1480 if test x$enable_gtk_doc = xyes ; then
1481 if test x$GTKDOC != xtrue ; then
1486 dnl NOTE: We need to use a separate automake conditional for this
1487 dnl to make this work with the tarballs.
1488 AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
1491 ##################################################
1493 ##################################################
1495 AC_OUTPUT_COMMANDS([
1497 ## Generate `gdk/gdkconfig.h' in two cases
1498 ## 1. `config.status' is run either explicitly, or via configure.
1499 ## Esp. not when it is run in `Makefile' to generate makefiles and
1501 ## 2. CONFIG_OTHER is set explicitly
1503 ## Case 1 is difficult. We know that `automake' sets one of
1504 ## CONFIG_FILES or CONFIG_HEADERS to empty. This heuristic works
1505 ## only when AM_CONFIG_HEADER is set, however.
1507 if test -n "${CONFIG_FILES}" && test -n "${CONFIG_HEADERS}"; then
1508 # Both CONFIG_FILES and CONFIG_HEADERS are non-empty ==> Case 1
1509 CONFIG_OTHER=${CONFIG_OTHER:-gdk/gdkconfig.h}
1511 case "$CONFIG_OTHER" in
1513 echo creating gdk/gdkconfig.h
1514 outfile=gdkconfig.h-tmp
1515 cat > $outfile <<\_______EOF
1518 * This is a generated file. Please modify `configure.in'
1526 #endif /* __cplusplus */
1530 cat >>$outfile <<_______EOF
1535 cat >>$outfile <<_______EOF
1539 #endif /* __cplusplus */
1541 #endif /* GDKCONFIG_H */
1545 if cmp -s $outfile gdk/gdkconfig.h; then
1546 echo gdk/gdkconfig.h is unchanged
1549 mv $outfile gdk/gdkconfig.h
1553 if test "x$gdktarget" = "xx11" ; then
1555 #define GDK_WINDOWING_X11'
1556 elif test "x$gdktarget" = "xwin32" ; then
1558 #define GDK_WINDOWING_WIN32'
1559 elif test "x$gdktarget" = "xlinux-fb" ; then
1561 #define GDK_WINDOWING_FB
1562 #define GDK_NATIVE_WINDOW_POINTER'
1565 if test x$gdk_wchar_h = xyes; then
1567 #define GDK_HAVE_WCHAR_H 1'
1569 if test x$gdk_wctype_h = xyes; then
1571 #define GDK_HAVE_WCTYPE_H 1"
1573 if test x$gdk_working_wctype = xno; then
1575 #define GDK_HAVE_BROKEN_WCTYPE 1"
1581 AC_PATH_PROG(SGML2HTML, sgml2html, no)
1582 AM_CONDITIONAL(HAVE_SGML2HTML, test x$SGML2HTML != xno)
1591 gdk-pixbuf-2.0-uninstalled.pc
1592 gdk-2.0-uninstalled.pc
1593 gtk+-2.0-uninstalled.pc
1597 build/win32/Makefile
1598 build/win32/dirent/Makefile
1600 demos/gtk-demo/Makefile
1601 demos/gtk-demo/geninclude.pl
1604 docs/reference/Makefile
1605 docs/reference/gdk-pixbuf/Makefile
1606 docs/reference/gdk-pixbuf/version.xml
1607 docs/reference/gdk/Makefile
1608 docs/reference/gdk/version.xml
1609 docs/reference/gtk/Makefile
1610 docs/reference/gtk/version.xml
1612 docs/tutorial/Makefile
1614 gdk-pixbuf/gdk_pixbuf.rc
1615 gdk-pixbuf/gdk-pixbuf-features.h
1616 gdk-pixbuf/pixops/Makefile
1620 gdk/win32/rc/Makefile
1622 gdk/linux-fb/Makefile
1627 gtk/stock-icons/Makefile
1628 gtk/theme-bits/Makefile
1630 modules/input/Makefile
1632 contrib/gdk-pixbuf-xlib/Makefile
1633 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc