]> Pileus Git - ~andy/gtk/blob - configure.in
84989a4a7f9af14663484f95d5c73058615a4b5c
[~andy/gtk] / configure.in
1 # Process this file with autoconf to produce a configure script.
2 # require autoconf 2.54
3 AC_PREREQ(2.54)
4
5 # Making releases:
6 #   GTK_MICRO_VERSION += 1;
7 #   GTK_INTERFACE_AGE += 1;
8 #   GTK_BINARY_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.
12
13 m4_define([gtk_major_version], [2])
14 m4_define([gtk_minor_version], [17])
15 m4_define([gtk_micro_version], [11])
16 m4_define([gtk_interface_age], [0])
17 m4_define([gtk_binary_age],
18           [m4_eval(100 * gtk_minor_version + gtk_micro_version)])
19 m4_define([gtk_version],
20           [gtk_major_version.gtk_minor_version.gtk_micro_version])
21 # This is the X.Y used in -lgtk-FOO-X.Y
22 m4_define([gtk_api_version], [2.0])
23
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
28 # for GTK+.
29 #
30 #GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
31 m4_define([gtk_binary_version], [2.10.0])
32
33 # required versions of other packages
34 m4_define([glib_required_version], [2.21.3])
35 m4_define([pango_required_version], [1.20])
36 m4_define([atk_required_version], [1.13.0])
37 m4_define([cairo_required_version], [1.6])
38
39
40 AC_INIT([gtk+], [gtk_version],
41         [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
42         [gtk+])
43
44 AC_CONFIG_SRCDIR([gdk/gdktypes.h])
45
46 # Save this value here, since automake will set cflags later
47 cflags_set=${CFLAGS+set}
48
49 AM_INIT_AUTOMAKE(no-define)
50 AM_CONFIG_HEADER(config.h)
51
52 # Support silent build rules, requires at least automake-1.11. Enable
53 # by either passing --enable-silent-rules to configure or passing V=0
54 # to make
55 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([no])])
56
57 #
58 # For each of the libraries we build, we define the following
59  
60 # substituted variables:
61 #
62 # foo_PACKAGES:     pkg-config packages this library requires
63 # foo_EXTRA_LIBS:   Libraries this module requires not pulled in by pkg-config
64 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
65 # foo_DEP_LIBS:     All libraries this module requires
66 # foo_DEP_CFLAGS:   All cflags this module requires
67
68
69 GTK_MAJOR_VERSION=gtk_major_version
70 GTK_MINOR_VERSION=gtk_minor_version
71 GTK_MICRO_VERSION=gtk_micro_version
72 GTK_INTERFACE_AGE=gtk_interface_age
73 GTK_BINARY_AGE=gtk_binary_age
74 GTK_VERSION=gtk_version
75 GTK_API_VERSION=gtk_api_version
76 GTK_BINARY_VERSION=gtk_binary_version
77 AC_SUBST(GTK_MAJOR_VERSION)
78 AC_SUBST(GTK_MINOR_VERSION)
79 AC_SUBST(GTK_MICRO_VERSION)
80 AC_SUBST(GTK_INTERFACE_AGE)
81 AC_SUBST(GTK_BINARY_AGE)
82 AC_SUBST(GTK_API_VERSION)
83 AC_SUBST(GTK_VERSION)
84 AC_SUBST(GTK_BINARY_VERSION)
85
86 # libtool versioning
87 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
88 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
89 #LT_REVISION=$GTK_INTERFACE_AGE
90 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
91 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
92
93 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
94 m4_define([lt_revision], [gtk_interface_age])
95 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
96 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
97 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
98 AC_SUBST(LT_VERSION_INFO)
99 AC_SUBST(LT_CURRENT_MINUS_AGE)
100
101 m4_define([gail_lt_current],[18])
102 m4_define([gail_lt_revision],[1])
103 m4_define([gail_lt_age],[0])
104 m4_define([gail_lt_version_info],[gail_lt_current:gail_lt_revision:gail_lt_age])
105 m4_define([gail_lt_current_minus_age],[m4_eval(gail_lt_current - gail_lt_age)])
106 AC_SUBST([GAIL_LT_VERSION_INFO],[gail_lt_version_info])
107 AC_SUBST([GAIL_LT_CURRENT_MINUS_AGE],[gail_lt_current_minus_age])
108
109 #
110 # gdk-pixbuf gets versioned separately, and for now, using standard
111 # libtool versioning, not GTK+-style versioning
112 #
113 GDK_PIXBUF_MAJOR=gtk_major_version
114 GDK_PIXBUF_MINOR=gtk_minor_version
115 GDK_PIXBUF_MICRO=gtk_micro_version
116 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
117 AC_SUBST(GDK_PIXBUF_MAJOR)
118 AC_SUBST(GDK_PIXBUF_MINOR)
119 AC_SUBST(GDK_PIXBUF_MICRO)
120 AC_SUBST(GDK_PIXBUF_VERSION)
121
122 GETTEXT_PACKAGE=gtk20
123 AC_SUBST(GETTEXT_PACKAGE)
124 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE",
125                    [The prefix for our gettext translation domains.])
126
127 AC_CANONICAL_HOST
128
129 MATH_LIB=-lm
130 AC_MSG_CHECKING([for native Win32])
131 LIB_EXE_MACHINE_FLAG=X86
132 case "$host" in
133   *-*-mingw*)
134     os_win32=yes
135     gio_can_sniff=no
136     MATH_LIB=
137     case "$host" in
138     x86_64-*-*)
139       LIB_EXE_MACHINE_FLAG=X64
140       ;;
141     esac
142     ;;
143   *)
144     os_win32=no
145     ;;
146 esac
147 AC_MSG_RESULT([$os_win32])
148
149 AC_SUBST(LIB_EXE_MACHINE_FLAG)
150
151 case $host in
152   *-*-linux*)
153     os_linux=yes
154     ;;
155 esac
156
157 dnl Initialize libtool
158 AC_PROG_CC
159 AM_DISABLE_STATIC
160
161 dnl 
162 dnl Check for a working C++ compiler, but do not bail out, if none is found.
163 dnl We use this for an automated test for C++ header correctness.
164 dnl 
165 AC_CHECK_TOOLS(CXX, [$CCC c++ g++ gcc CC cxx cc++ cl], gcc)
166 AC_LANG_SAVE
167 AC_LANG_CPLUSPLUS
168
169 AC_TRY_COMPILE(,[class a { int b; } c;], ,CXX=)
170 AM_CONDITIONAL(HAVE_CXX, test "$CXX" != "")
171
172 gtk_save_cxxflags="$CXXFLAGS"
173 CXXFLAGS="$CXXFLAGS -x objective-c++"
174 AC_TRY_COMPILE([@interface Foo @end],,OBJC=yes,OBJC=no)
175 AM_CONDITIONAL(HAVE_OBJC, test "$OBJC" = "yes")
176 CXXFLAGS="$gtk_save_cxxflags"
177 AC_LANG_RESTORE
178
179 if test "$os_win32" = "yes"; then
180   if test x$enable_static = xyes -o x$enable_static = x; then
181     AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
182     enable_static=no
183   fi
184   if test x$enable_shared = xno; then
185     AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
186   fi
187   enable_shared=yes
188 fi
189
190 AC_LIBTOOL_WIN32_DLL
191 AM_PROG_LIBTOOL
192 dnl when using libtool 2.x create libtool early, because it's used in configure
193 m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
194
195
196 # Make sure we use 64-bit versions of various file stuff.
197 AC_SYS_LARGEFILE
198
199 AM_PROG_AS
200 AC_PATH_PROG(NM, nm, nm)
201
202 dnl Initialize maintainer mode
203 AM_MAINTAINER_MODE
204
205 AC_MSG_CHECKING([for some Win32 platform])
206 case "$host" in
207   *-*-mingw*|*-*-cygwin*)
208     platform_win32=yes
209     ;;
210   *)
211     platform_win32=no
212     ;;
213 esac
214 AC_MSG_RESULT([$platform_win32])
215 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
216
217 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
218 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
219 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
220
221 if test "$os_win32" = "yes"; then
222   AC_CHECK_TOOL(WINDRES, windres, no)
223   if test "$WINDRES" = no; then
224     AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
225   fi
226   AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
227 fi
228 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
229
230 m4_define([debug_default],
231           m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
232
233 dnl declare --enable-* args and collect ac_help strings
234 AC_ARG_ENABLE(debug,
235               AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
236                              [turn on debugging @<:@default=debug_default@:>@]),,
237               enable_debug=debug_default)
238 AC_ARG_ENABLE(shm,
239               [AC_HELP_STRING([--enable-shm],
240                               [support shared memory if available [default=yes]])],,
241               [enable_shm="yes"])
242 AC_ARG_ENABLE(xkb,
243               [AC_HELP_STRING([--enable-xkb],
244                               [support XKB [default=maybe]])],,
245               [enable_xkb="maybe"])
246 AC_ARG_ENABLE(xinerama,
247               [AC_HELP_STRING([--enable-xinerama],
248                               [support xinerama extension if available [default=yes]])],,
249               [enable_xinerama="yes"])
250 AC_ARG_ENABLE(rebuilds,
251               [AC_HELP_STRING([--disable-rebuilds],
252                               [disable all source autogeneration rules])],,
253               [enable_rebuilds=yes])
254 AC_ARG_ENABLE(visibility,
255               [AC_HELP_STRING([--disable-visibility],
256                               [don't use ELF visibility attributes])],,
257               [enable_visibility=yes])
258
259 AC_ARG_WITH(xinput,
260             [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
261
262 if test "$platform_win32" = yes; then
263   gdktarget=win32
264 else
265   gdktarget=x11
266 fi
267
268 AC_ARG_WITH(gdktarget, [  --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
269         gdktarget=$with_gdktarget)
270
271 AC_SUBST(gdktarget)
272 case $gdktarget in
273   x11|win32|quartz|directfb) ;;
274   *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
275 esac
276
277 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
278 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
279
280 AC_SUBST(gdktargetlib)
281 AC_SUBST(gtktargetlib)
282
283 if test "x$enable_debug" = "xyes"; then
284   test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
285   GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG -DG_ERRORCHECK_MUTEXES" 
286 else
287   if test "x$enable_debug" = "xno"; then
288     GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
289   else
290     GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
291   fi
292 fi
293
294
295 if test "x$enable_visibility" = "xno"; then
296   GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
297 fi
298
299
300 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}",
301                    [Define if debugging is enabled])
302
303                         
304 # Build time sanity check...
305 AM_SANITY_CHECK
306
307 # Checks for programs.
308 AC_ISC_POSIX
309 AM_PROG_CC_STDC
310 AC_PROG_INSTALL
311 AC_PROG_MAKE_SET
312
313 changequote(,)dnl
314 if test "x$GCC" = "xyes"; then
315   case " $CFLAGS " in
316   *[\ \ ]-Wall[\ \      ]*) ;;
317   *) CFLAGS="$CFLAGS -Wall" ;;
318   esac
319
320   if test "x$enable_ansi" = "xyes"; then
321     case " $CFLAGS " in
322     *[\ \       ]-ansi[\ \      ]*) ;;
323     *) CFLAGS="$CFLAGS -ansi" ;;
324     esac
325
326     case " $CFLAGS " in
327     *[\ \       ]-pedantic[\ \  ]*) ;;
328     *) CFLAGS="$CFLAGS -pedantic" ;;
329     esac
330   fi
331 fi
332 changequote([,])dnl
333
334 CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
335
336 # Ensure MSVC-compatible struct packing convention is used when
337 # compiling for Win32 with gcc.
338 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
339 # gcc2 uses "-fnative-struct".
340 if test x"$os_win32" = xyes; then
341   if test x"$GCC" = xyes; then
342     msnative_struct=''
343     AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
344     if test -z "$ac_cv_prog_CC"; then
345       our_gcc="$CC"
346     else
347       our_gcc="$ac_cv_prog_CC"
348     fi
349     case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
350       2.)
351         if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
352           msnative_struct='-fnative-struct'
353         fi
354         ;;
355       *)
356         if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
357           msnative_struct='-mms-bitfields'
358         fi
359         ;;
360     esac
361     if test x"$msnative_struct" = x ; then
362       AC_MSG_RESULT([no way])
363       AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
364     else
365       CFLAGS="$CFLAGS $msnative_struct"
366       AC_MSG_RESULT([${msnative_struct}])
367     fi
368   fi
369 fi
370
371 # Honor aclocal flags
372 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
373
374 ## Initial sanity check, done here so that users get told they 
375 ## have the wrong dependencies as early in the process as possible.
376 ## Later on we actually use the cflags/libs from separate pkg-config
377 ## calls. Oh, also the later pkg-config calls don't include 
378 ## the version requirements since those make the module lists 
379 ## annoying to construct
380 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
381   [glib-2.0 >= glib_required_version dnl
382    atk >= atk_required_version dnl
383    pango >= pango_required_version dnl
384    cairo >= cairo_required_version])
385
386 ## In addition to checking that cairo is present, we also need to
387 ## check that the correct cairo backend is there. E.g. if the GDK
388 ## target is win32 we need the cairo-win32 backend and so on.
389 cairo_backend=$gdktarget
390
391 # GDK calls the xlib backend "x11," cairo calls it "xlib." Other
392 # backend names are identical.
393 if test "x$cairo_backend" = "xx11"; then
394    cairo_backend=xlib
395 fi
396 PKG_CHECK_MODULES(CAIRO_BACKEND,
397   [cairo-$cairo_backend >= cairo_required_version])
398
399 if test "$os_win32" != yes; then
400     # libtool option to control which symbols are exported
401     # right now, symbols starting with _ are not exported
402     LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
403 else
404     # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
405     LIBTOOL_EXPORT_OPTIONS=
406 fi
407 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
408
409 dnl ******************************************************
410 dnl * See whether to include shared library dependencies *
411 dnl ******************************************************
412
413 AC_ARG_ENABLE(explicit-deps, 
414               [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
415                               [use explicit dependencies in .pc files [default=auto]])],,
416               [enable_explicit_deps=auto])
417
418 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
419 case $enable_explicit_deps in
420   auto)
421     export SED
422     deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
423     if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
424       enable_explicit_deps=yes  
425     else
426       enable_explicit_deps=no  
427     fi
428   ;;
429   yes|no) 
430   ;;
431   *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
432   ;;
433 esac
434 AC_MSG_RESULT($enable_explicit_deps)
435
436 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
437
438 # define a MAINT-like variable REBUILD which is set if Perl
439 # and awk are found, so autogenerated sources can be rebuilt
440
441 AC_PATH_PROGS(PERL, perl5 perl)
442
443 # We would like indent, but don't require it.
444 AC_CHECK_PROG(INDENT, indent, indent)
445
446 REBUILD=\#
447 if test "x$enable_rebuilds" = "xyes" && \
448      test -n "$PERL" && \
449      $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
450   REBUILD=
451 fi
452 AC_SUBST(REBUILD)
453
454 AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
455 AC_CHECK_FUNCS(localtime_r)
456
457 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
458 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
459 AC_TRY_LINK([#include <langinfo.h>], [
460 char c;
461 c = *((unsigned char *)  nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
462 ], gtk_ok=yes, gtk_ok=no)
463 AC_MSG_RESULT($gtk_ok)
464 if test "$gtk_ok" = "yes"; then
465   AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
466             [Define if _NL_TIME_FIRST_WEEKDAY is available])
467 fi
468
469 # _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
470 AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
471 AC_TRY_LINK([#include <langinfo.h>], [
472 char c;
473 c = *((unsigned char *)  nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
474 ], gtk_ok=yes, gtk_ok=no)
475 AC_MSG_RESULT($gtk_ok)
476 if test "$gtk_ok" = "yes"; then
477   AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
478             [Define if _NL_MEASUREMENT_MEASUREMENT is available])
479 fi
480
481 # _NL_PAPER_HEIGHT is an enum and not a define
482 AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
483 AC_TRY_LINK([#include <langinfo.h>], [
484 char c;
485 c = *((unsigned char *)  nl_langinfo(_NL_PAPER_HEIGHT));
486 ], gtk_ok=yes, gtk_ok=no)
487 AC_MSG_RESULT($gtk_ok)
488 if test "$gtk_ok" = "yes"; then
489   AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
490             [Define if _NL_PAPER_HEIGHT is available])
491 fi
492
493 # _NL_PAPER_WIDTH is an enum and not a define
494 AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
495 AC_TRY_LINK([#include <langinfo.h>], [
496 char c;
497 c = *((unsigned char *)  nl_langinfo(_NL_PAPER_WIDTH));
498 ], gtk_ok=yes, gtk_ok=no)
499 AC_MSG_RESULT($gtk_ok)
500 if test "$gtk_ok" = "yes"; then
501   AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
502             [Define if _NL_PAPER_WIDTH is available])
503 fi
504         
505 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
506 AC_MSG_CHECKING(for sigsetjmp)
507 AC_TRY_LINK([#include <setjmp.h>], [
508 sigjmp_buf env;
509 sigsetjmp(env, 0);
510 ], gtk_ok=yes, gtk_ok=no)
511 AC_MSG_RESULT($gtk_ok)
512 if test "$gtk_ok" = "yes"; then
513   AC_DEFINE(HAVE_SIGSETJMP, 1,
514             [Define to 1 if sigsetjmp is available])
515 fi
516
517 # i18n stuff
518 ALL_LINGUAS="`grep -v '^#' "$srcdir/po/LINGUAS" | tr '\n' ' '`"
519 AM_GLIB_GNU_GETTEXT
520 LIBS="$LIBS $INTLLIBS"
521 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
522         sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
523       esac])
524
525 dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
526 dnl po-properties/POTFILES during configure; see GNOME #573515.
527 dnl
528 dnl Generate list of files to be processed by xgettext which will
529 dnl be included in po-properties/Makefile.
530 test -d po-properties || mkdir po-properties
531 if test "x$srcdir" != "x."; then
532   if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
533     popropsrcprefix="$srcdir/"
534   else
535     popropsrcprefix="../$srcdir/"
536   fi
537 else
538   popropsrcprefix="../"
539 fi
540 rm -f po-properties/POTFILES
541 sed -e "/^#/d" -e "/^\$/d" -e "s,.*,    $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
542 < $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
543 dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
544
545 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
546
547 dnl The DU4 header files don't provide library prototypes unless 
548 dnl -std1 is given to the native cc.
549 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
550
551 gtk_save_LIBS=$LIBS
552 LIBS="$LIBS -lm"
553 AC_TRY_RUN([#include <math.h>
554              int main (void) { return (log(1) != log(1.)); }],
555      AC_MSG_RESULT(none needed),
556      gtk_save_CFLAGS="$CFLAGS"
557      CFLAGS="$CFLAGS -std1"
558      AC_TRY_RUN([#include <math.h>
559                  int main (void) { return (log(1) != log(1.)); }],
560          AC_MSG_RESULT(-std1),
561          AC_MSG_RESULT()
562          CFLAGS="$gtk_save_CFLAGS"
563          AC_MSG_WARN(
564                 [No ANSI prototypes found in library. (-std1 didn't work.)]),
565          true
566      ),
567      AC_MSG_RESULT(none needed)
568 )
569 LIBS=$gtk_save_LIBS
570
571 AC_MSG_CHECKING(for the BeOS)
572 case $host in
573   *-*-beos*)
574     AC_MSG_RESULT(yes)
575     MATH_LIB=
576   ;;
577   *)
578     AC_MSG_RESULT(no)
579   ;;
580 esac
581
582 #
583 # see bug 162979
584 #
585 AC_MSG_CHECKING(for HP-UX)
586 case $host_os in
587   hpux9* | hpux10* | hpux11*)
588     AC_MSG_RESULT(yes)
589     CFLAGS="$CFLAGS -DHPPEX -DSHMLINK"
590   ;;
591   *)
592     AC_MSG_RESULT(no)
593   ;;
594 esac
595
596 dnl NeXTStep cc seems to need this
597 AC_MSG_CHECKING([for extra flags for POSIX compliance])
598 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
599   AC_MSG_RESULT(none needed),
600   gtk_save_CFLAGS="$CFLAGS"
601   CFLAGS="$CFLAGS -posix"
602   AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
603     AC_MSG_RESULT(-posix),
604     AC_MSG_RESULT()
605     CFLAGS="$gtk_save_CFLAGS"
606     AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
607
608 #
609 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
610
611
612 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
613
614 AM_PATH_GLIB_2_0(glib_required_version, :,
615   AC_MSG_ERROR([
616 *** GLIB glib_required_version or better is required. The latest version of 
617 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
618   gobject gmodule-no-export gthread)
619
620 # See if it's safe to turn G_DISABLE_DEPRECATED on.
621 GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
622 GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
623 if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
624   CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
625 fi
626
627 CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
628
629
630 dnl
631 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
632 dnl
633 gtk_save_LIBS=$LIBS
634 LIBS="$LIBS $GLIB_LIBS"
635 AC_CHECK_FUNCS(bind_textdomain_codeset)
636 LIBS=$gtk_save_LIBS
637
638 AC_CHECK_HEADERS(pwd.h,
639                  AC_DEFINE(HAVE_PWD_H, 1,
640                            [Define to 1 if pwd.h is available]))
641 AC_CHECK_HEADERS(sys/time.h,
642                  AC_DEFINE(HAVE_SYS_TIME_H, 1,
643                            [Define to 1 if time.h is available]))
644 AC_CHECK_HEADERS(unistd.h,
645                  AC_DEFINE(HAVE_UNISTD_H, 1,
646                            [Define to 1 if unistd.h is available]))
647 AC_CHECK_HEADERS(ftw.h,
648                  AC_DEFINE(HAVE_FTW_H, 1,
649                            [Define to 1 if ftw.h is available]))
650
651 AC_MSG_CHECKING([for GNU ftw extensions])
652 AC_TRY_COMPILE([#define _XOPEN_SOURCE 500
653 #define _GNU_SOURCE
654 #include <ftw.h>], [int flags = FTW_ACTIONRETVAL;], gtk_ok=yes, gtk_ok=no)
655 if test $gtk_ok = yes; then
656     AC_MSG_RESULT([yes])
657     AC_DEFINE(HAVE_GNU_FTW, 1, [Have GNU ftw])
658 else
659     AC_MSG_RESULT([no])
660 fi
661
662 saved_cflags="$CFLAGS"
663 saved_ldflags="$LDFLAGS"
664
665
666 # Checks for header files.
667 AC_HEADER_STDC
668
669 # Checks for typedefs, structures, and compiler characteristics.
670 AC_C_CONST
671
672 # Checks for library functions.
673 AC_TYPE_SIGNAL
674 AC_FUNC_MMAP
675
676 AC_CHECK_FUNCS(mallinfo)
677 AC_CHECK_FUNCS(getresuid)
678 AC_TYPE_UID_T
679
680 # Check if <sys/select.h> needs to be included for fd_set
681 AC_MSG_CHECKING([for fd_set])
682 AC_TRY_COMPILE([#include <sys/types.h>],
683         [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
684 if test $gtk_ok = yes; then
685     AC_MSG_RESULT([yes, found in sys/types.h])
686 else
687     AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
688     if test $gtk_ok = yes; then
689         AC_DEFINE(HAVE_SYS_SELECT_H, 1,
690                   [Define to 1 if sys/select.h is available])
691         AC_MSG_RESULT([yes, found in sys/select.h])
692     else
693         AC_DEFINE(NO_FD_SET, 1,
694                   [Define to 1 if fd_set is not available])
695         AC_MSG_RESULT(no)
696     fi
697 fi
698
699 # `widechar' tests for gdki18n.h
700 AC_MSG_CHECKING(for wchar.h)
701 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
702 if test $gdk_wchar_h = yes; then
703    AC_DEFINE(HAVE_WCHAR_H, 1, [Have wchar.h include file])
704 fi
705 AC_MSG_RESULT($gdk_wchar_h)
706
707 # Check for wctype.h (for iswalnum)
708 AC_MSG_CHECKING(for wctype.h)
709 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
710 if test $gdk_wctype_h = yes; then
711    AC_DEFINE(HAVE_WCTYPE_H, 1, [Have wctype.h include file])
712 fi
713 AC_MSG_RESULT($gdk_wctype_h)
714
715 # in Solaris 2.5, `iswalnum' is in -lw
716 GDK_WLIBS=
717 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
718
719 oLIBS="$LIBS"
720 LIBS="$LIBS $GDK_WLIBS"
721 # The following is necessary for Linux libc-5.4.38
722 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
723 AC_TRY_LINK([#include <stdlib.h>],[
724 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
725 #  ifdef HAVE_WCTYPE_H
726 #    include <wctype.h>
727 #  else
728 #    ifdef HAVE_WCHAR_H
729 #      include <wchar.h>
730 #    endif
731 #  endif
732 #else
733 #  define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
734 #endif
735 iswalnum((wchar_t) 0);
736 ], gdk_working_wctype=yes, gdk_working_wctype=no)
737 LIBS="$oLIBS"
738
739 if test $gdk_working_wctype = no; then
740    AC_DEFINE(HAVE_BROKEN_WCTYPE, 1, [Is the wctype implementation broken])
741    GDK_WLIBS=
742 fi
743 AC_MSG_RESULT($gdk_working_wctype)
744 AC_SUBST(GDK_WLIBS)
745
746 # Check for uxtheme.h (for MS-Windows Engine)
747 AC_MSG_CHECKING(for uxtheme.h)
748 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
749 if test $gtk_uxtheme_h = yes; then
750    AC_DEFINE(HAVE_UXTHEME_H, 1, [Have uxtheme.h include file])
751 fi
752 AC_MSG_RESULT($gtk_uxtheme_h)
753
754 # Checks for gdkspawn
755 AC_CHECK_HEADERS(crt_externs.h)
756 AC_CHECK_FUNCS(_NSGetEnviron)
757
758
759 ##################################################
760 # Checks for gdk-pixbuf
761 ##################################################
762
763 dnl ********************************************************
764 dnl * See whether we need to load our modules as .la files *
765 dnl ********************************************************
766
767 use_la_modules=false
768 case $host in
769   *-aix*) use_la_modules=true
770 esac
771
772 if $use_la_modules ; then
773    AC_DEFINE(USE_LA_MODULES, 1,
774              [Whether to load modules via .la files rather than directly])
775 fi
776
777
778 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
779
780 AC_ARG_ENABLE(modules,
781               [AC_HELP_STRING([--disable-modules],
782                               [disable dynamic module loading])])
783
784 dynworks=false
785 deps=
786 if test x$enable_modules = xno; then
787     AC_MSG_RESULT(no)
788 else
789     AC_MSG_RESULT(yes)
790     AC_MSG_CHECKING(whether dynamic modules work)
791     ## for loop is to strip newline 
792     tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
793     for I in $tmp; do
794         dynworks=$I
795     done
796
797     dnl Now we check to see if our libtool supports shared lib deps
798     dnl (in a rather ugly way even)
799     if $dynworks; then
800         pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
801         pixbuf_deplibs_check=`$pixbuf_libtool_config | \
802             grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
803             sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
804         if test "x$pixbuf_deplibs_check" = "xnone" || \
805            test "x$pixbuf_deplibs_check" = "xunknown" || \
806            test "x$pixbuf_deplibs_check" = "x"; then
807             dynworks=false
808         fi
809     fi
810
811     if $dynworks; then
812         AC_DEFINE(USE_GMODULE, 1,
813                   [Define to 1 if gmodule works and should be used])
814         AC_MSG_RESULT(yes)
815     else
816         AC_MSG_RESULT(no)
817     fi
818 fi
819
820 dnl We allow people to disable image loaders explicitely, but if they don't we error
821 dnl out so that people don't accidentally build without them.
822
823 AC_ARG_WITH(libpng,
824             [AC_HELP_STRING([--without-libpng],
825                             [disable PNG loader for gdk-pixbuf])])
826 AC_ARG_WITH(libjpeg,
827             [AC_HELP_STRING([--without-libjpeg],
828                             [disable JPEG loader for gdk-pixbuf])])
829 AC_ARG_WITH(libtiff,
830             [AC_HELP_STRING([--without-libtiff],
831                             [disable TIFF loader for gdk-pixbuf])])
832 AC_ARG_WITH(libjasper,
833             [AC_HELP_STRING([--with-libjasper],
834                             [enable JPEG2000 loader for gdk-pixbuf])])
835
836 AC_ARG_ENABLE(gdiplus,
837             [AC_HELP_STRING([--enable-gdiplus],
838                             [enble GDI+ loaders for gdk-pixbuf (currently known to be broken)])],,
839             [enable_gdiplus=no])
840
841 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
842
843 dnl Test for libtiff
844 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
845   if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
846     AC_CHECK_LIB(tiff, TIFFReadRGBAImageOriented,
847       [AC_CHECK_HEADER(tiffio.h,
848         TIFF='tiff'; LIBTIFF='-ltiff',
849         AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
850       [AC_CHECK_LIB(tiff, TIFFWriteScanline,
851         [AC_CHECK_HEADER(tiffio.h,
852           TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
853           AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
854         [AC_CHECK_LIB(tiff34, TIFFFlushData,
855           [AC_CHECK_HEADER(tiffio.h,
856             TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
857             AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
858         AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
859   fi
860
861   if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
862      AC_MSG_ERROR([
863 *** Checks for TIFF loader failed. You can build without it by passing 
864 *** --without-libtiff to configure but some programs using GTK+ may
865 *** not work properly])
866   fi
867 fi
868
869 dnl Test for libjpeg
870 if test x$os_win32 = xno || test x$enable_gdiplus = xno; then
871   if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
872     AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
873       jpeg_ok=yes,
874       jpeg_ok=no
875       AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
876     if test "$jpeg_ok" = yes; then
877       AC_MSG_CHECKING([for jpeglib.h])
878       AC_TRY_CPP(
879 [#include <stdio.h>
880 #undef PACKAGE
881 #undef VERSION
882 #undef HAVE_STDLIB_H
883 #include <jpeglib.h>],
884         jpeg_ok=yes,
885         jpeg_ok=no)
886       AC_MSG_RESULT($jpeg_ok)
887       if test "$jpeg_ok" = yes; then
888         LIBJPEG='-ljpeg'
889         AC_CHECK_LIB(jpeg, jpeg_simple_progression,     
890           AC_DEFINE(HAVE_PROGRESSIVE_JPEG, 1,
891                     [Define to 1 is libjpeg supports progressive JPEG]),
892           AC_MSG_WARN(JPEG library does not support progressive saving.))
893       else
894           AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
895       fi
896     fi
897   fi
898
899   if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
900      AC_MSG_ERROR([
901 *** Checks for JPEG loader failed. You can build without it by passing 
902 *** --without-libjpeg to configure but some programs using GTK+ may
903 *** not work properly])
904   fi
905 fi
906
907 dnl Test for libpng
908   if test x$with_libpng != xno && test -z "$LIBPNG"; then
909     AC_MSG_CHECKING(for libpng12)
910     if $PKG_CONFIG --exists libpng12 ; then
911         AC_MSG_RESULT(yes)
912         PNG='png'
913         PNG_DEP_CFLAGS_PACKAGES=libpng12
914         LIBPNG=`$PKG_CONFIG --libs libpng12`
915     else
916       AC_MSG_RESULT(no)
917       AC_CHECK_LIB(png, png_read_info,
918         [AC_CHECK_HEADER(png.h,
919           png_ok=yes,
920           png_ok=no)],
921         AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
922       if test "$png_ok" = yes; then
923         AC_MSG_CHECKING([for png_structp in png.h])
924         AC_TRY_COMPILE([#include <png.h>],
925           [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
926           png_ok=yes,
927           png_ok=no)
928         AC_MSG_RESULT($png_ok)
929         if test "$png_ok" = yes; then
930           PNG='png'; LIBPNG='-lpng -lz'
931         else
932           AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
933         fi
934       else
935        AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
936       fi
937     fi
938   fi
939
940   if test x$with_libpng != xno && test -z "$LIBPNG"; then
941      AC_MSG_ERROR([
942 *** Checks for PNG loader failed. You can build without it by passing 
943 *** --without-libpng to configure but many programs using GTK+ will
944 *** not work properly. The PNG loader is also needed if you are compiling
945 *** from CVS.])
946   fi
947
948 dnl Test for libjasper
949   if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
950     AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
951   fi
952
953   if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
954      AC_MSG_ERROR([
955 *** Checks for JPEG2000 loader failed. You can build without it by passing 
956 *** --without-libjasper to configure])
957   fi
958
959 AC_SUBST(LIBTIFF)
960 AC_SUBST(LIBJPEG)
961 AC_SUBST(LIBPNG)
962 AC_SUBST(LIBJASPER)
963
964 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
965
966 #
967 # Allow building some or all gdk-pixbuf loaders included
968 #
969 AC_MSG_CHECKING(pixbuf loaders to build)
970
971 dnl due to an autoconf bug, commas in the first arg to
972 dnl AC_HELP_STRING cause problems.
973 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
974 dnl                [build the specified loaders into gdk-pixbuf])
975 AC_ARG_WITH(included_loaders,
976 [  --with-included-loaders=LOADER1,LOADER2,...
977                           build the specified loaders into gdk-pixbuf])
978
979 if $dynworks; then 
980    :
981 else
982    ## if the option was specified, leave it; otherwise disable included loaders
983    if test x$with_included_loaders = xno; then
984            with_included_loaders=yes
985    fi
986 fi
987
988 # Use the traditional png loader instead of the GDI+ one on Windows,
989 # because some important apps like GIMP need to read and write
990 # arbitrary tEXt chunks which doesn't seem to be possible through GDI+
991
992 all_loaders="ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm"
993 if test x$with_libjasper != xno; then
994   all_loaders="$all_loaders,jasper"
995 fi
996 if test x$os_win32 = xyes && test x$enable_gdiplus != xno; then
997   # Skip PNG, see comment above
998   gdip_formats="bmp emf gif ico jpeg tiff wmf"
999   for f in $gdip_formats; do
1000     all_loaders="$all_loaders,gdip-$f"
1001   done
1002 else
1003   all_loaders="$all_loaders,bmp,gif,ico,jpeg,tiff"
1004 fi
1005 included_loaders=""
1006 # If no loaders specified, include all
1007 if test "x$with_included_loaders" = xyes ; then
1008   included_loaders="$all_loaders"
1009 else
1010   included_loaders="$with_included_loaders"
1011 fi
1012
1013 AC_MSG_RESULT($included_loaders)
1014
1015 INCLUDED_LOADER_OBJ=
1016 INCLUDED_LOADER_DEFINE=
1017
1018 IFS="${IFS=     }"; gtk_save_ifs="$IFS"; IFS=","
1019 for loader in $included_loaders; do
1020  if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
1021    :
1022  else
1023    AC_MSG_ERROR([the specified loader $loader does not exist])
1024  fi
1025
1026  loader_underscores=`echo $loader | sed -e 's/-/_/g'`
1027  INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
1028
1029  # Don't bother defining separate -DINCLUDE_gdip_foo for each gdip-foo loader
1030  case $loader in
1031    gdip-*) ;;
1032    *) INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader_underscores";;
1033  esac
1034  eval INCLUDE_$loader_underscores=yes
1035 done
1036
1037 # Just define one -DINCLUDE_gdiplus for all the gdip-foo loaders
1038 # (except gdip-png, which isn't built at all)
1039 if test x"$INCLUDE_gdip_ico" = xyes; then
1040   INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_gdiplus"
1041 fi
1042
1043 IFS="$gtk_save_ifs"
1044 AC_SUBST(INCLUDED_LOADER_OBJ)
1045 AC_SUBST(INCLUDED_LOADER_DEFINE)
1046
1047 AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
1048 AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
1049 AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
1050 AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
1051 AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
1052 AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
1053 AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
1054 AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
1055 AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
1056 AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
1057 AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
1058 AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
1059 AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
1060 AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
1061 AM_CONDITIONAL(INCLUDE_ICNS, [test x"$INCLUDE_icns" = xyes])
1062 AM_CONDITIONAL(INCLUDE_JASPER, [test x"$INCLUDE_jasper" = xyes])
1063 # As all GDI+ loaders are either built-in or not, arbitrarily just
1064 # check one of the variables here
1065 AM_CONDITIONAL(INCLUDE_GDIPLUS, [test x"$INCLUDE_gdip_ico" = xyes])
1066
1067 if test x$gio_can_sniff = x; then
1068   AC_MSG_CHECKING([if gio can sniff png])
1069   gtk_save_LIBS="$LIBS"
1070   gtk_save_CFLAGS="$CFLAGS"
1071   LIBS="`$PKG_CONFIG --libs gio-2.0`"
1072   CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
1073   AC_RUN_IFELSE([AC_LANG_SOURCE([[
1074   #include <gio/gio.h>
1075   static const gsize data_size = 159;
1076   static const guint8 data[] = 
1077   {
1078     0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 
1079     0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 
1080     0x08, 0x02, 0x00, 0x00, 0x00, 0x90, 0x77, 0x53, 0xde, 0x00, 0x00, 0x00, 
1081     0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00, 
1082     0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00, 
1083     0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74, 
1084     0x49, 0x4d, 0x45, 0x07, 0xd8, 0x07, 0x0f, 0x10, 0x08, 0x15, 0x61, 0xd8, 
1085     0x35, 0x37, 0x00, 0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 
1086     0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 
1087     0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4d, 0x50, 0x57, 
1088     0x81, 0x0e, 0x17, 0x00, 0x00, 0x00, 0x0c, 0x49, 0x44, 0x41, 0x54, 0x08, 
1089     0xd7, 0x63, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x05, 0xfe, 0x02, 0xfe, 0xdc, 
1090     0xcc, 0x59, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 
1091     0x42, 0x60, 0x82
1092   };
1093   int
1094   main (int argc, char **argv)
1095   {
1096     char *content_type;
1097     char *image_png;
1098     content_type = g_content_type_guess (NULL, data, data_size, NULL);  
1099     image_png = g_content_type_from_mime_type ("image/png");
1100     return !!strcmp (content_type, image_png);
1101   }]])],
1102     [gio_can_sniff=yes
1103      AC_DEFINE(GDK_PIXBUF_USE_GIO_MIME, 1, [Define if gio can sniff image data])],
1104     [gio_can_sniff=no])
1105   AC_MSG_RESULT($gio_can_sniff)
1106   LIBS="$gtk_save_LIBS"
1107   CFLAGS="$gtk_save_CFLAGS"
1108 fi
1109
1110 #
1111 # Allow building some or all immodules included
1112 #
1113 AC_MSG_CHECKING(immodules to build)
1114
1115 dnl due to an autoconf bug, commas in the first arg to
1116 dnl AC_HELP_STRING cause problems.
1117 dnl AC_HELP_STRING([--with-included-immodules=MODULE1 MODULE2 ...],
1118 dnl                [build the specified input method modules into gtk])
1119 AC_ARG_WITH(included_immodules,
1120 [  --with-included-immodules=MODULE1,MODULE2,...
1121                           build the specified input methods into gtk])
1122
1123 if $dynworks; then 
1124    :
1125 else
1126    ## if the option was specified, leave it; otherwise disable included immodules
1127    if test x$with_included_immodules = xno; then
1128            with_included_immodules=yes
1129    fi
1130 fi
1131
1132 all_immodules="am-et,cedilla,cyrillic-translit"
1133 if test "$gdktarget" = "win32"; then
1134    all_immodules="${all_immodules},ime"
1135 fi
1136 all_immodules="${all_immodules},inuktitut,ipa,multipress,thai,ti-er,ti-et,viqr"
1137 if test "$gdktarget" = "x11"; then
1138    all_immodules="${all_immodules},xim"
1139 fi
1140
1141 included_immodules=""
1142 # If the switch specified without listing any specific ones, include all
1143 if test "x$with_included_immodules" = xyes ; then
1144   included_immodules="$all_immodules"
1145 else
1146   included_immodules="$with_included_immodules"
1147 fi
1148
1149 AC_MSG_RESULT($included_immodules)
1150 AM_CONDITIONAL(HAVE_INCLUDED_IMMMODULES, test "x$included_immodules" != x)
1151
1152 INCLUDED_IMMODULE_OBJ=
1153 INCLUDED_IMMODULE_DEFINE=
1154
1155 IFS="${IFS=     }"; gtk_save_ifs="$IFS"; IFS=","
1156 for immodule in $included_immodules; do
1157  immodule_underscores=`echo $immodule | sed -e 's/-/_/g'`
1158  if echo "$all_immodules" | egrep "(^|,)$immodule(\$|,)" > /dev/null; then
1159    :
1160  else
1161    AC_MSG_ERROR([the specified input method $immodule does not exist])
1162  fi
1163
1164  INCLUDED_IMMODULE_OBJ="$INCLUDED_IMMODULE_OBJ ../modules/input/libstatic-im-$immodule.la"
1165  INCLUDED_IMMODULE_DEFINE="$INCLUDED_IMMODULE_DEFINE -DINCLUDE_IM_$immodule_underscores"
1166  eval INCLUDE_$immodule_underscores=yes
1167 done
1168 IFS="$gtk_save_ifs"
1169 AC_SUBST(INCLUDED_IMMODULE_OBJ)
1170 AC_SUBST(INCLUDED_IMMODULE_DEFINE)
1171
1172 AM_CONDITIONAL(INCLUDE_IM_AM_ET, [test x"$INCLUDE_am_et" = xyes])
1173 AM_CONDITIONAL(INCLUDE_IM_CEDILLA, [test x"$INCLUDE_cedilla" = xyes])
1174 AM_CONDITIONAL(INCLUDE_IM_CYRILLIC_TRANSLIT, [test x"$INCLUDE_cyrillic_translit" = xyes])
1175 AM_CONDITIONAL(INCLUDE_IM_IME, [test x"$INCLUDE_ime" = xyes])
1176 AM_CONDITIONAL(INCLUDE_IM_INUKTITUT, [test x"$INCLUDE_inuktitut" = xyes])
1177 AM_CONDITIONAL(INCLUDE_IM_IPA, [test x"$INCLUDE_ipa" = xyes])
1178 AM_CONDITIONAL(INCLUDE_IM_MULTIPRESS, [test x"$INCLUDE_multipress" = xyes])
1179 AM_CONDITIONAL(INCLUDE_IM_THAI, [test x"$INCLUDE_thai" = xyes])
1180 AM_CONDITIONAL(INCLUDE_IM_TI_ER, [test x"$INCLUDE_ti_er" = xyes])
1181 AM_CONDITIONAL(INCLUDE_IM_TI_ET, [test x"$INCLUDE_ti_et" = xyes])
1182 AM_CONDITIONAL(INCLUDE_IM_VIQR, [test x"$INCLUDE_viqr" = xyes])
1183 AM_CONDITIONAL(INCLUDE_IM_XIM, [test x"$INCLUDE_xim" = xyes])
1184
1185 AC_HEADER_SYS_WAIT
1186
1187 AC_TYPE_SIGNAL
1188
1189 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
1190 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
1191 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
1192 AM_CONDITIONAL(HAVE_JASPER, test "x$LIBJASPER" != x)
1193
1194 if $dynworks ; then
1195   STATIC_LIB_DEPS=
1196   if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
1197     STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
1198   fi
1199   if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
1200     STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
1201   fi
1202   if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
1203     STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
1204   fi
1205   if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
1206     STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
1207   fi
1208 else
1209   STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
1210 fi
1211
1212 # Checks to see whether we should include mediaLib
1213 # support.
1214 #
1215 AC_CHECK_HEADER(sys/systeminfo.h,
1216                 AC_DEFINE(HAVE_SYS_SYSTEMINFO_H, 1, 
1217                           [Define to 1 if sys/systeminfo.h is available]))
1218 AC_CHECK_HEADER(sys/sysinfo.h,
1219                 AC_DEFINE(HAVE_SYS_SYSINFO_H, 1,
1220                           [Define to 1 if sys/sysinfo.h is available]))
1221
1222 AC_MSG_CHECKING(for mediaLib 2.3)
1223 use_mlib25=no
1224 # Check for a mediaLib 2.3 function since that is what the GTK+ mediaLib
1225 # patch requires.
1226 AC_CHECK_LIB(mlib, mlib_ImageSetStruct, use_mlib=yes, use_mlib=no)
1227 if test $use_mlib = yes; then
1228     AC_DEFINE(USE_MEDIALIB, 1,
1229               [Define to 1 if medialib is available and should be used])
1230     MEDIA_LIB=-lmlib
1231
1232     AC_MSG_CHECKING(for mediaLib 2.5)
1233     # Check for a mediaLib 2.5 function since that is what is needed for
1234     # gdk_rgb_convert integration.
1235     AC_CHECK_LIB(mlib, mlib_VideoColorRGBint_to_BGRAint, use_mlib25=yes, use_mlib25=no)
1236     if test $use_mlib25 = yes; then
1237         AC_DEFINE(USE_MEDIALIB25, 1,
1238                   [Define to 1 if medialib 2.5 is available])
1239     fi
1240 fi
1241 AM_CONDITIONAL(USE_MEDIALIB, test $use_mlib = yes)
1242 AM_CONDITIONAL(USE_MEDIALIB25, test $use_mlib25 = yes)
1243
1244 # Checks to see if we should compile in MMX support (there will be
1245 # a runtime test when the code is actually run to see if it should
1246 # be used - this just checks if we can compile it.)
1247 #
1248 # This code is partially taken from Mesa
1249 #
1250 AC_MSG_CHECKING(for x86 platform)
1251 case $host_cpu in
1252   i386|i486|i586|i686|i786|k6|k7)
1253         use_x86_asm=yes
1254         ;;
1255    *)
1256         use_x86_asm=no
1257 esac
1258 AC_MSG_RESULT($use_x86_asm)
1259
1260 use_mmx_asm=no
1261 if test $use_x86_asm = yes; then
1262     save_ac_ext=$ac_ext
1263     ac_ext=S
1264     
1265     AC_MSG_CHECKING(compiler support for MMX)
1266     cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
1267     if AC_TRY_EVAL(ac_compile); then
1268         use_mmx_asm=yes
1269     fi
1270
1271     rm -rf conftest*
1272
1273     ac_ext=$save_ac_ext
1274     if test $use_mmx_asm = yes; then
1275       AC_DEFINE(USE_MMX, 1,
1276                 [Define to 1 if XXM is available and should be used])
1277       AC_MSG_RESULT(yes)
1278     else
1279       AC_MSG_RESULT(no)
1280     fi
1281 fi
1282
1283 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
1284
1285 REBUILD_PNGS=
1286 if test -z "$LIBPNG" && test x"$os_win32" = xno -o x$enable_gdiplus = xno; then
1287   REBUILD_PNGS=#
1288 fi
1289
1290 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
1291
1292 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
1293
1294 if test $cross_compiling = yes; then
1295   AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
1296   AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
1297   if test x$GTK_UPDATE_ICON_CACHE = xno; then
1298     REBUILD_PNGS=#
1299   fi
1300 fi
1301
1302 if test ! -f $srcdir/gtk/gtkbuiltincache.h && 
1303    test "x$REBUILD_PNGS" = "x#" ; then
1304      AC_MSG_ERROR([
1305 *** gtkbuiltincache.h is not in the tree, and cannot be built
1306 *** because you don't have libpng, or (when cross-compiling) you 
1307 *** don't have a prebuilt gtk-update-icon-cache on the build system.])
1308 fi
1309
1310 AC_SUBST(REBUILD_PNGS)
1311
1312 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
1313 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
1314 GDK_PIXBUF_EXTRA_CFLAGS= 
1315 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1316 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags  gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
1317
1318 ########################################
1319 # Windowing system checks
1320 ########################################
1321
1322 GDK_PIXBUF_XLIB_PACKAGES=
1323 GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
1324 GDK_PIXBUF_XLIB_EXTRA_LIBS=
1325         
1326 GDK_EXTRA_LIBS="$GDK_WLIBS"
1327 GDK_EXTRA_CFLAGS=
1328         
1329 # GTK+ uses some X calls, so needs to link against X directly
1330 GTK_DEP_PACKAGES_FOR_X=
1331 GTK_DEP_LIBS_FOR_X=
1332
1333 if test "x$gdktarget" = "xx11"; then
1334   X_PACKAGES=fontconfig
1335
1336   #
1337   # We use fontconfig very peripherally when decoding the default
1338   # settings.
1339   #
1340   if $PKG_CONFIG --exists fontconfig; then : ; else
1341     AC_MSG_ERROR([
1342 *** fontconfig (http://www.fontconfig.org) is required by the X11 backend.])
1343   fi
1344
1345   #
1346   # Check for basic X packages; we use pkg-config if available
1347   #
1348   if $PKG_CONFIG --exists x11 xext xrender; then
1349     have_base_x_pc=true
1350     X_PACKAGES="$X_PACKAGES x11 xext xrender"
1351     x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
1352     X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
1353     
1354     # Strip out any .la files that pkg-config might give us (this happens
1355     # with -uninstalled.pc files)
1356     x_libs_for_checks=
1357     for I in $x_libs ; do
1358       case $I in 
1359         *.la) ;;
1360         *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1361       esac
1362     done
1363     
1364     GDK_PIXBUF_XLIB_PACKAGES="x11"
1365     GTK_PACKAGES_FOR_X="x11"
1366   else
1367     have_base_x_pc=false
1368     AC_PATH_XTRA
1369     if test x$no_x = xyes ; then
1370       AC_MSG_ERROR([X development libraries not found])
1371     fi
1372     
1373     x_cflags="$X_CFLAGS"
1374     x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
1375
1376     GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1377     GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
1378     GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
1379   fi
1380
1381   # Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
1382   x_extra_libs=
1383
1384   gtk_save_cppflags="$CPPFLAGS"
1385   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1386
1387   gtk_save_LIBS=$LIBS
1388   LIBS="$x_libs_for_checks $LIBS"
1389   
1390   # Sanity check for the X11 and Xext libraries. While everything we need from
1391   # Xext is optional, the chances a system has *none* of these things is so
1392   # small that we just unconditionally require it.
1393   AC_CHECK_FUNC(XOpenDisplay, :,
1394                 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
1395   AC_CHECK_FUNC(XextFindDisplay, :,
1396                 AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
1397   AC_CHECK_FUNC(XRenderQueryExtension, :,
1398                 AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
1399
1400   # Check for xReply
1401
1402   AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1403   AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1404       [xReply *rep;],
1405       [AC_MSG_RESULT([no])],
1406       [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1407 #include <X11/Xlibint.h>],
1408            [xReply *rep;],
1409            [AC_MSG_RESULT([yes])
1410             AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1411                       [Define if <X11/extensions/XIproto.h> needed for xReply])],
1412            [AC_MSG_RESULT([unknown])
1413             AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1414
1415   # Check for XConvertCase, XInternAtoms (X11R6 specific)
1416
1417   AC_CHECK_FUNCS(XConvertCase XInternAtoms)
1418
1419   # Generic X11R6 check needed for XIM support; we could
1420   # probably use this to replace the above, but we'll
1421   # leave the separate checks for XConvertCase and XInternAtoms 
1422   # for clarity
1423   
1424   have_x11r6=false
1425   AC_CHECK_FUNC(XAddConnectionWatch,
1426       have_x11r6=true)
1427
1428   if $have_x11r6; then
1429     AC_DEFINE(HAVE_X11R6, 1, [Define if we have X11R6])
1430   fi
1431   AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1432
1433   # Check for XKB support.
1434
1435   if test "x$enable_xkb" = "xyes"; then
1436         AC_MSG_WARN(XKB support explicitly enabled)
1437         AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension])
1438   elif test "x$enable_xkb" = "xmaybe"; then
1439         AC_CHECK_FUNC(XkbQueryExtension,
1440                       AC_DEFINE(HAVE_XKB, 1, [Define to use XKB extension]))
1441   else
1442         AC_MSG_WARN(XKB support explicitly disabled)
1443   fi
1444
1445   # Check for shaped window extension
1446
1447   AC_CHECK_FUNC(XShapeCombineMask, :,
1448      [AC_MSG_ERROR([Shape extension not found, check your development headers])])
1449
1450   # X SYNC check
1451   gtk_save_CFLAGS="$CFLAGS"
1452   CFLAGS="$CFLAGS $x_cflags"
1453   
1454   AC_CHECK_FUNC(XSyncQueryExtension,
1455       [AC_CHECK_HEADER(X11/extensions/sync.h,
1456           AC_DEFINE(HAVE_XSYNC, 1, [Have the SYNC extension library]),
1457           :, [#include <X11/Xlib.h>])])
1458
1459   CFLAGS="$gtk_save_CFLAGS"
1460
1461   # Xshm checks
1462
1463   if test "x$enable_shm" = "xyes"; then
1464      # Check for the XShm extension, normally in Xext
1465      AC_CHECK_FUNC(XShmAttach,
1466         :,
1467         # On AIX, it is in XextSam instead
1468         [AC_CHECK_LIB(XextSam, XShmAttach, 
1469             [GTK_ADD_LIB(x_extra_libs,XextSam)])])
1470   fi    
1471
1472   if test "x$enable_shm" = "xyes"; then
1473     # Check for shared memory
1474     AC_CHECK_HEADER(sys/ipc.h,
1475                     AC_DEFINE(HAVE_IPC_H, 1,
1476                               [Define to 1 if ipc.h is available]),
1477                     no_sys_ipc=yes)
1478     AC_CHECK_HEADER(sys/shm.h,
1479                     AC_DEFINE(HAVE_SHM_H, 1,
1480                               [Define to 1 if shm.h is available]),
1481                     no_sys_shm=yes)
1482
1483     # Check for the X shared memory extension header file
1484     have_xshm=no 
1485     AC_MSG_CHECKING(X11/extensions/XShm.h)
1486     if test "x$no_xext_lib" = "xyes"; then
1487       :
1488     else
1489       gtk_save_CFLAGS="$CFLAGS"
1490       CFLAGS="$CFLAGS $x_cflags"
1491       AC_TRY_COMPILE([
1492 #include <stdlib.h>
1493 #include <sys/types.h>
1494 #include <sys/ipc.h>
1495 #include <sys/shm.h>
1496 #include <X11/Xlib.h>
1497 #include <X11/Xutil.h>
1498 #include <X11/extensions/XShm.h>
1499 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1500       CFLAGS="$gtk_save_CFLAGS"
1501     fi
1502     AC_MSG_RESULT($have_xshm)
1503     if test $have_xshm = yes ; then
1504       AC_DEFINE(HAVE_XSHM_H, 1,
1505                 [Define to 1 if xshm.h is available])
1506     fi
1507   fi
1508
1509   if test "x$enable_xinerama" = "xyes"; then
1510     # Check for Xinerama extension (Solaris impl or Xfree impl)
1511     gtk_save_cppflags="$CPPFLAGS"
1512     CPPFLAGS="$CPPFLAGS $x_cflags"
1513   
1514     # Check for XFree
1515     AC_MSG_CHECKING(for Xinerama support on XFree86)
1516           
1517     have_xfree_xinerama=false
1518     if $PKG_CONFIG --exists xinerama ; then
1519        have_xfree_xinerama=true
1520        X_PACKAGES="$X_PACKAGES xinerama"
1521     else    
1522        AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1523            [AC_CHECK_HEADER(X11/extensions/Xinerama.h, 
1524            [GTK_ADD_LIB(x_extra_libs,Xinerama)
1525            have_xfree_xinerama=true], :,
1526            [#include <X11/Xlib.h>])])
1527     fi
1528
1529     if $have_xfree_xinerama ; then
1530       AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
1531                 [Define to 1 if XFree Xinerama is available])
1532       AC_DEFINE(HAVE_XINERAMA, 1,
1533                 [Define to 1 is Xinerama is available])
1534       AC_MSG_RESULT(yes)
1535     else
1536       AC_MSG_RESULT(no)
1537
1538       case "$host" in
1539         *-*-solaris*)
1540             # Check for solaris
1541             AC_MSG_CHECKING(for Xinerama support on Solaris)
1542           
1543             have_solaris_xinerama=false
1544             AC_CHECK_FUNC(XineramaGetInfo,
1545                 [AC_CHECK_HEADER(X11/extensions/xinerama.h,
1546                     [have_solaris_xinerama=true], :,
1547                     [#include <X11/Xlib.h>])])
1548                 
1549             if $have_solaris_xinerama ; then
1550               AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
1551                         [Define to 1 if solaris xinerama is available])
1552               AC_DEFINE(HAVE_XINERAMA, 1,
1553                         [Define to 1 if xinerama is available])
1554               AC_MSG_RESULT(yes)
1555             else
1556               AC_MSG_RESULT(no)
1557             fi
1558             ;;
1559         *)
1560             ;;
1561       esac
1562     fi
1563   fi
1564   
1565   # set up things for XInput
1566
1567   if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1568     AC_DEFINE(XINPUT_XFREE, 1,
1569               [Define to 1 if XFree XInput should be used])
1570     
1571     if $PKG_CONFIG --exists xi ; then
1572       X_PACKAGES="$X_PACKAGES xi"
1573     else
1574       GTK_ADD_LIB(x_extra_libs, Xi)
1575     fi
1576   else
1577     AC_DEFINE(XINPUT_NONE, 1,
1578               [Define to 1 if no XInput should be used])
1579   fi
1580
1581   AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1582
1583   # Check for the RANDR extension
1584   if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
1585      AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
1586
1587      X_PACKAGES="$X_PACKAGES xrandr"
1588   fi
1589        
1590   # Checks for Xcursor library
1591   
1592   if $PKG_CONFIG --exists xcursor ; then
1593     AC_DEFINE(HAVE_XCURSOR, 1, [Have the Xcursor library])
1594     
1595     X_PACKAGES="$X_PACKAGES xcursor"
1596   fi
1597
1598   # Checks for XFixes extension
1599   
1600   if $PKG_CONFIG --exists xfixes ; then
1601     AC_DEFINE(HAVE_XFIXES, 1, [Have the XFIXES X extension])
1602     
1603     X_PACKAGES="$X_PACKAGES xfixes"
1604     GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
1605   fi
1606
1607   # Checks for Xcomposite extension
1608
1609   if $PKG_CONFIG --exists xcomposite ; then
1610     AC_DEFINE(HAVE_XCOMPOSITE, 1, [Have the XCOMPOSITE X extension])
1611
1612     X_PACKAGES="$X_PACKAGES xcomposite"
1613     GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xcomposite"
1614   fi
1615
1616   # Checks for Xdamage extension
1617
1618   if $PKG_CONFIG --exists xdamage ; then
1619     AC_DEFINE(HAVE_XDAMAGE, 1, [Have the XDAMAGE X extension])
1620
1621     X_PACKAGES="$X_PACKAGES xdamage"
1622     GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xdamage"
1623   fi
1624
1625   if $have_base_x_pc ; then
1626     GDK_EXTRA_LIBS="$x_extra_libs"
1627   else
1628     GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs -lXext -lX11 $GDK_EXTRA_LIBS"
1629   fi
1630
1631   CPPFLAGS="$gtk_save_cppflags"
1632   LIBS="$gtk_save_libs"
1633
1634   AM_CONDITIONAL(USE_X11, true)
1635 else
1636   XPACKAGES=
1637
1638   AM_CONDITIONAL(XINPUT_XFREE, false)
1639   AM_CONDITIONAL(USE_X11, false)
1640   AM_CONDITIONAL(HAVE_X11R6, false)
1641 fi
1642
1643 if test "x$gdktarget" = "xwin32"; then
1644   GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid"
1645   AM_CONDITIONAL(USE_WIN32, true)
1646 else
1647   AM_CONDITIONAL(USE_WIN32, false)
1648 fi
1649
1650 if test "x$gdktarget" = "xquartz"; then
1651   GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -framework Cocoa"
1652   AM_CONDITIONAL(USE_QUARTZ, true)
1653 else
1654   AM_CONDITIONAL(USE_QUARTZ, false)
1655 fi
1656
1657 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1658 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"
1659
1660 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1661 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1662 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1663 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1664 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1665
1666 if test "x$gdktarget" = "xdirectfb"; then
1667   DIRECTFB_REQUIRED_VERSION=1.0.0
1668   AC_MSG_CHECKING(for DirectFB)
1669
1670   PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
1671   AM_CONDITIONAL(USE_DIRECTFB, true)
1672 else
1673   AM_CONDITIONAL(USE_DIRECTFB, false)
1674 fi
1675
1676
1677 # Check for Pango flags
1678
1679 if test "x$gdktarget" = "xwin32"; then
1680         PANGO_PACKAGES="pangowin32 pangocairo"
1681 else
1682         PANGO_PACKAGES="pango pangocairo"
1683 fi
1684
1685 AC_MSG_CHECKING(Pango flags)
1686 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1687         PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1688         PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1689
1690         AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1691 else
1692         AC_MSG_ERROR([
1693 *** Pango not found. Pango built with Cairo support is required
1694 *** to build GTK+. See http://www.pango.org for Pango information.
1695 ])
1696 fi
1697
1698 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1699
1700 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1701         :
1702 else
1703         gtk_save_LIBS="$LIBS"
1704         LIBS="$PANGO_LIBS $LIBS"
1705         AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1706 *** Can't link to Pango. Pango is required to build
1707 *** GTK+. For more information see http://www.pango.org]))
1708         LIBS="$gtk_save_LIBS"
1709 fi
1710
1711 CFLAGS="$saved_cflags"
1712 LDFLAGS="$saved_ldflags"
1713
1714 GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 $X_PACKAGES cairo-$cairo_backend"
1715 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1716 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags  gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1717 #
1718 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1719 # into the pkg-config files
1720 #
1721 if test $enable_explicit_deps != yes ; then
1722   GDK_PACKAGES="$PANGO_PACKAGES"
1723   GDK_EXTRA_LIBS=
1724 fi
1725
1726 AC_SUBST(GDK_PACKAGES)
1727 AC_SUBST(GDK_EXTRA_LIBS)
1728 AC_SUBST(GDK_EXTRA_CFLAGS)
1729 AC_SUBST(GDK_DEP_LIBS)
1730 AC_SUBST(GDK_DEP_CFLAGS)
1731
1732
1733 ########################################
1734 # Check for Accessibility Toolkit flags
1735 ########################################
1736
1737 ATK_PACKAGES=atk
1738 AC_MSG_CHECKING(ATK flags)
1739 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1740         ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1741         ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1742
1743         AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1744 else
1745         AC_MSG_ERROR([
1746 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1747 *** to build GTK+.
1748 ])
1749 fi
1750
1751 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1752         :
1753 else
1754         gtk_save_LIBS="$LIBS"
1755         LIBS="$ATK_LIBS $LIBS"
1756         AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1757                 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1758                 *** to build GTK+]))
1759         LIBS="$gtk_save_LIBS"
1760 fi
1761
1762 GTK_PACKAGES="atk cairo gio-2.0"
1763 if test "x$gdktarget" = "xx11"; then
1764   GTK_PACKAGES="$GTK_PACKAGES pangoft2"
1765 fi
1766 GTK_EXTRA_LIBS=
1767 GTK_EXTRA_CFLAGS= 
1768 GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $PANGO_PACKAGES $GTK_PACKAGES_FOR_X $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1769 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"
1770
1771 if test x"$os_win32" = xyes; then
1772   GTK_EXTRA_CFLAGS="$msnative_struct"
1773 fi
1774
1775 GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
1776 ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
1777 PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
1778 CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
1779
1780 if test $enable_explicit_deps != yes ; then
1781   GDK_PIXBUF_EXTRA_LIBS=
1782 fi
1783
1784 AC_SUBST(GDK_PIXBUF_PACKAGES)
1785 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
1786 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
1787 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
1788 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
1789
1790 AC_SUBST(GTK_PACKAGES)
1791 AC_SUBST(GTK_EXTRA_LIBS)
1792 AC_SUBST(GTK_EXTRA_CFLAGS)
1793 AC_SUBST(GTK_DEP_LIBS)
1794 AC_SUBST(GTK_DEP_CFLAGS)
1795
1796 AC_SUBST(GLIB_PREFIX)
1797 AC_SUBST(ATK_PREFIX)
1798 AC_SUBST(PANGO_PREFIX)
1799 AC_SUBST(CAIRO_PREFIX)
1800
1801 AC_SUBST(GTK_DEBUG_FLAGS)
1802 AC_SUBST(GTK_XIM_FLAGS)
1803
1804 ########################
1805 # Checks needed for gail
1806 ########################
1807
1808 old_LIBS="$LIBS"
1809 dnl Checks for inet libraries:
1810 AC_SEARCH_LIBS(gethostent, nsl)
1811 AC_SEARCH_LIBS(setsockopt, socket)
1812 AC_SEARCH_LIBS(connect, inet)
1813
1814 dnl check for the sockaddr_un.sun_len member
1815 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
1816                 [struct_sockaddr_un_sun_len=true],
1817                 [struct_sockaddr_un_suin_len=false],
1818                 [#include <sys/types.h>
1819                  #include <sys/un.h>]
1820                 )
1821 case $struct_sockaddr_un_sun_len in 
1822         true)
1823                 AC_DEFINE_UNQUOTED(HAVE_SOCKADDR_UN_SUN_LEN, 1,
1824                                    [Have the sockaddr_un.sun_len member])
1825                 ;;
1826         *)
1827                 ;;
1828 esac
1829
1830 GAIL_INET_LIBS="$LIBS"
1831 AC_SUBST([GAIL_INET_LIBS])
1832
1833 LIBS="$old_LIBS"
1834
1835 ################################################################
1836 # Printing system checks
1837 ################################################################
1838
1839 AC_ARG_ENABLE(cups,
1840               [AC_HELP_STRING([--disable-cups]
1841                               [disable cups print backend])],,
1842               [enable_cups=auto])
1843
1844 if test "x$enable_cups" = "xno"; then
1845   AM_CONDITIONAL(HAVE_CUPS, false)
1846 else
1847   AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
1848   if test "x$CUPS_CONFIG" = "xno"; then
1849     if test "x$enable_cups" = "xauto"; then
1850       AM_CONDITIONAL(HAVE_CUPS, false)
1851     else
1852       AC_MSG_ERROR([
1853 *** cups not found.
1854 ])
1855     fi
1856   else
1857     CUPS_CFLAGS=`$CUPS_CONFIG --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
1858     CUPS_LIBS=`$CUPS_CONFIG --libs`
1859
1860     CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
1861     CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $1}'`
1862     CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | awk -F. '{print $2}'`
1863
1864     if test $CUPS_API_MAJOR -gt 1 -o \
1865             $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
1866       AC_DEFINE(HAVE_CUPS_API_1_2, 1, 
1867                 [Define to 1 if CUPS 1.2 API is available])
1868     fi
1869
1870     AC_SUBST(CUPS_API_MAJOR)
1871     AC_SUBST(CUPS_API_MINOR)
1872     AC_SUBST(CUPS_CFLAGS)
1873     AC_SUBST(CUPS_LIBS)
1874
1875     AC_CHECK_HEADER(cups/cups.h,,AC_MSG_ERROR([[*** Sorry, cups-config present but cups/cups.h missing.]]))
1876
1877     AM_CONDITIONAL(HAVE_CUPS, true)
1878
1879     gtk_save_cflags="$CFLAGS"
1880     CFLAGS="$CUPS_CFLAGS"
1881     AC_TRY_COMPILE([#include <cups/http.h>],
1882                    [http_t http; char *s = http.authstring;],
1883                    [AC_DEFINE(HAVE_HTTP_AUTHSTRING, [],
1884                               [Define if cups http_t authstring field is accessible])],)
1885     CFLAGS="$gtk_save_cflags"
1886
1887     AC_SUBST(HAVE_HTTP_AUTHSTRING)
1888
1889     gtk_save_libs="$LIBS"
1890     LIBS="$CUPS_LIBS"
1891     AC_CHECK_FUNCS(httpGetAuthString)
1892     LIBS="$gtk_save_libs"
1893   fi
1894 fi
1895
1896 # Checks to see if we should compile with PAPI backend for GTK+
1897 #
1898
1899 AC_ARG_ENABLE(papi,
1900               [AC_HELP_STRING([--disable-papi]
1901                               [disable papi print backend])],,
1902              [enable_papi=auto])
1903
1904 if test "x$enable_papi" = "xno"; then
1905   AM_CONDITIONAL(HAVE_PAPI, false)
1906 else
1907   AC_MSG_CHECKING(libpapi)
1908   AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
1909   if test $have_papi = yes; then
1910     AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
1911   fi
1912   AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
1913   if test "x$enable_papi" = "xyes" -a "x$have_papi" = "xno"; then
1914     AC_MSG_ERROR([
1915 *** papi not found.
1916 ])
1917   fi
1918 fi
1919
1920 AM_CONDITIONAL(HAVE_PAPI_CUPS, test "x$have_papi" = "xyes" -a "x$CUPS_CONFIG" != "xno")
1921
1922 gtk_save_cppflags="$CPPFLAGS"
1923 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
1924
1925 AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
1926 *** Can't find cairo-pdf.h. You must build Cairo with the pdf
1927 *** backend enabled.]))
1928
1929 if test "$os_win32" != "yes"; then
1930   AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
1931 *** Can't find cairo-ps.h. You must build Cairo with the 
1932 *** postscript backend enabled.]))
1933 fi   
1934
1935 CPPFLAGS="$gtk_save_cppflags"
1936      
1937                                 
1938 AC_ARG_ENABLE(test-print-backend,
1939               [AC_HELP_STRING([--enable-test-print-backend],
1940                               [build test print backend])],,
1941               [enable_test_print_backend=no])
1942 AM_CONDITIONAL(TEST_PRINT_BACKEND, test "x$enable_test_print_backend" != "xno")
1943
1944
1945 ################################################################
1946 # Strip -export-dynamic from the link lines of various libraries
1947 ################################################################
1948
1949 #
1950 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1951 #  but this flag is only meaningful for executables. For libraries
1952 #  the effect is undefined; what it causes on Linux is that the
1953 #  export list from -export-symbols-regex is ignored and everything
1954 #  is exported
1955 #
1956 # We are using gmodule-no-export now, but I'm leaving the stripping
1957 # code in place for now, since pango and atk still require gmodule.
1958 export SED
1959 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1960 if test -n "$export_dynamic"; then
1961   GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1962   GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1963   GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1964   GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1965 fi
1966
1967
1968 ##################################################
1969 # Checks for gtk-doc and docbook-tools
1970 ##################################################
1971
1972 GTK_DOC_CHECK([1.11])
1973
1974 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1975 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1976
1977 AC_ARG_ENABLE(man,
1978               [AC_HELP_STRING([--enable-man],
1979                               [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1980               enable_man=no)
1981
1982 if test "${enable_man}" != no; then
1983   dnl
1984   dnl Check for xsltproc
1985   dnl
1986   AC_PATH_PROG([XSLTPROC], [xsltproc])
1987   if test -z "$XSLTPROC"; then
1988     enable_man=no
1989   fi
1990
1991   dnl check for DocBook DTD and stylesheets in the local catalog.
1992   JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1993      [DocBook XML DTD V4.1.2],,enable_man=no)
1994   JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1995      [DocBook XSL Stylesheets],,enable_man=no)
1996 fi
1997
1998 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1999
2000
2001 ##################################################
2002 # Output commands
2003 ##################################################
2004
2005 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
2006         outfile=gdkconfig.h-tmp
2007         cat > $outfile <<\_______EOF
2008 /* gdkconfig.h
2009  *
2010  * This is a generated file.  Please modify `configure.in'
2011  */
2012
2013 #ifndef GDKCONFIG_H
2014 #define GDKCONFIG_H
2015
2016 #ifdef __cplusplus
2017 extern "C" {
2018 #endif /* __cplusplus */
2019
2020 #ifndef GSEAL
2021 /* introduce GSEAL() here for all of Gdk and Gtk+ without the need to modify GLib */
2022 #  ifdef GSEAL_ENABLE
2023 #    define GSEAL(ident)      _g_sealed__ ## ident
2024 #  else
2025 #    define GSEAL(ident)      ident
2026 #  endif
2027 #endif /* !GSEAL */
2028
2029 _______EOF
2030
2031         cat >>$outfile <<_______EOF
2032 $gdk_windowing
2033 $gdk_wc
2034 _______EOF
2035
2036         cat >>$outfile <<_______EOF
2037
2038 #ifdef __cplusplus
2039 }
2040 #endif /* __cplusplus */
2041
2042 #endif /* GDKCONFIG_H */
2043 _______EOF
2044
2045
2046         if cmp -s $outfile gdk/gdkconfig.h; then
2047           AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
2048           rm -f $outfile
2049         else
2050           mv $outfile gdk/gdkconfig.h
2051         fi
2052 ],[
2053 if test "x$gdktarget" = "xx11" ; then
2054   gdk_windowing='
2055 #define GDK_WINDOWING_X11'
2056 elif test "x$gdktarget" = "xwin32" ; then
2057   gdk_windowing='
2058 #define GDK_NATIVE_WINDOW_POINTER
2059
2060 #define GDK_WINDOWING_WIN32'
2061 elif test "x$gdktarget" = "xquartz" ; then
2062   gdk_windowing='
2063 #define GDK_WINDOWING_QUARTZ'
2064 elif test "x$gdktarget" = "xdirectfb" ; then
2065   gdk_windowing='
2066 #define GDK_WINDOWING_DIRECTFB'
2067 fi
2068
2069 if test x$gdk_wchar_h = xyes; then
2070   gdk_wc='
2071 #define GDK_HAVE_WCHAR_H 1'
2072 fi
2073 if test x$gdk_wctype_h = xyes; then
2074   gdk_wc="\$gdk_wc
2075 #define GDK_HAVE_WCTYPE_H 1"
2076 fi
2077 if test x$gdk_working_wctype = xno; then
2078   gdk_wc="\$gdk_wc
2079 #define GDK_HAVE_BROKEN_WCTYPE 1"
2080 fi
2081
2082
2083 ])
2084
2085 AC_CONFIG_FILES([
2086 config.h.win32
2087 gtk-zip.sh
2088 Makefile
2089 gdk-pixbuf-2.0.pc
2090 gdk-2.0.pc
2091 gtk+-2.0.pc
2092 gtk+-unix-print-2.0.pc
2093 gail.pc
2094 gdk-pixbuf-2.0-uninstalled.pc
2095 gdk-2.0-uninstalled.pc
2096 gtk+-2.0-uninstalled.pc
2097 gail-uninstalled.pc
2098 m4macros/Makefile
2099 po/Makefile.in
2100 po-properties/Makefile.in
2101 demos/Makefile
2102 demos/gtk-demo/Makefile
2103 demos/gtk-demo/geninclude.pl
2104 tests/Makefile
2105 docs/Makefile
2106 docs/reference/Makefile
2107 docs/reference/gdk-pixbuf/Makefile
2108 docs/reference/gdk-pixbuf/version.xml
2109 docs/reference/gdk/Makefile
2110 docs/reference/gdk/version.xml
2111 docs/reference/gtk/Makefile
2112 docs/reference/gtk/version.xml
2113 docs/reference/libgail-util/Makefile
2114 docs/faq/Makefile
2115 docs/tools/Makefile
2116 docs/tutorial/Makefile
2117 gdk-pixbuf/Makefile
2118 gdk-pixbuf/gdk_pixbuf.rc
2119 gdk-pixbuf/gdk-pixbuf-features.h
2120 gdk-pixbuf/pixops/Makefile
2121 gdk/Makefile
2122 gdk/x11/Makefile
2123 gdk/win32/Makefile
2124 gdk/win32/rc/Makefile
2125 gdk/win32/rc/gdk.rc
2126 gdk/quartz/Makefile
2127 gdk/directfb/Makefile
2128 gdk/tests/Makefile
2129 gtk/Makefile
2130 gtk/makefile.msc
2131 gtk/gtkversion.h
2132 gtk/gtk-win32.rc
2133 gtk/theme-bits/Makefile
2134 gtk/tests/Makefile
2135 modules/Makefile
2136 modules/other/Makefile
2137 modules/other/gail/Makefile
2138 modules/other/gail/libgail-util/Makefile
2139 modules/other/gail/tests/Makefile
2140 modules/engines/Makefile
2141 modules/engines/pixbuf/Makefile
2142 modules/engines/ms-windows/Makefile
2143 modules/engines/ms-windows/Theme/Makefile
2144 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
2145 modules/input/Makefile
2146 modules/printbackends/Makefile
2147 modules/printbackends/cups/Makefile
2148 modules/printbackends/lpr/Makefile
2149 modules/printbackends/file/Makefile
2150 modules/printbackends/papi/Makefile
2151 modules/printbackends/test/Makefile
2152 perf/Makefile
2153 contrib/Makefile
2154 contrib/gdk-pixbuf-xlib/Makefile
2155 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
2156 ])
2157
2158 AC_OUTPUT
2159
2160 echo "configuration:
2161         target: $gdktarget"