1 # Process this file with autoconf to produce a configure script.
2 # require autoconf 2.54
6 # GTK_MICRO_VERSION += 1;
7 # GTK_INTERFACE_AGE += 1;
9 # if any functions have been added, set GTK_INTERFACE_AGE to 0.
10 # if backwards compatibility has been broken,
11 # set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
13 m4_define([gtk_major_version], [2])
14 m4_define([gtk_minor_version], [7])
15 m4_define([gtk_micro_version], [1])
16 m4_define([gtk_version],
17 [gtk_major_version.gtk_minor_version.gtk_micro_version])
18 m4_define([gtk_interface_age], [0])
19 m4_define([gtk_binary_age],
20 [m4_eval(100 * gtk_minor_version + gtk_micro_version)])
21 # This is the X.Y used in -lgtk-FOO-X.Y
22 m4_define([gtk_api_version], [2.0])
24 # Define a string for the earliest version that this release has
25 # backwards binary compatibility with for all interfaces a module
26 # might. Unless we add module-only API with lower stability
27 # guarantees, this should be unchanged until we break binary compat
30 #GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
31 m4_define([gtk_binary_version], [2.4.0])
33 # required versions of other packages
34 m4_define([glib_required_version], [2.7.0])
35 m4_define([pango_required_version], [1.9.0])
36 m4_define([atk_required_version], [1.0.1])
39 AC_INIT([gtk+], [gtk_version],
40 [http://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B],
43 AC_CONFIG_SRCDIR([gdk/gdktypes.h])
45 # Save this value here, since automake will set cflags later
46 cflags_set=${CFLAGS+set}
48 AM_INIT_AUTOMAKE(no-define)
49 AM_CONFIG_HEADER(config.h)
52 # For each of the libraries we build, we define the following
54 # substituted variables:
56 # foo_PACKAGES: pkg-config packages this library requires
57 # foo_EXTRA_LIBS: Libraries this module requires not pulled in by pkg-config
58 # foo_EXTRA_CFLAGS: cflags this module requires not pulled in by pkg-config
59 # foo_DEP_LIBS: All libraries this module requires
60 # foo_DEP_CFLAGS: All cflags this module requires
63 GTK_MAJOR_VERSION=gtk_major_version
64 GTK_MINOR_VERSION=gtk_minor_version
65 GTK_MICRO_VERSION=gtk_micro_version
66 GTK_INTERFACE_AGE=gtk_interface_age
67 GTK_BINARY_AGE=gtk_binary_age
68 GTK_VERSION=gtk_version
69 GTK_API_VERSION=gtk_api_version
70 GTK_BINARY_VERSION=gtk_binary_version
71 AC_SUBST(GTK_MAJOR_VERSION)
72 AC_SUBST(GTK_MINOR_VERSION)
73 AC_SUBST(GTK_MICRO_VERSION)
74 AC_SUBST(GTK_INTERFACE_AGE)
75 AC_SUBST(GTK_BINARY_AGE)
76 AC_SUBST(GTK_API_VERSION)
78 AC_SUBST(GTK_BINARY_VERSION)
81 #LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
82 #LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
83 #LT_REVISION=$GTK_INTERFACE_AGE
84 #LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
85 #LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
87 m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
88 m4_define([lt_revision], [gtk_interface_age])
89 m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
90 LT_VERSION_INFO="lt_current:lt_revision:lt_age"
91 LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
92 AC_SUBST(LT_VERSION_INFO)
93 AC_SUBST(LT_CURRENT_MINUS_AGE)
97 # gdk-pixbuf gets versioned separately, and for now, using standard
98 # libtool versioning, not GTK+-style versioning
100 GDK_PIXBUF_MAJOR=gtk_major_version
101 GDK_PIXBUF_MINOR=gtk_minor_version
102 GDK_PIXBUF_MICRO=gtk_micro_version
103 GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
104 AC_SUBST(GDK_PIXBUF_MAJOR)
105 AC_SUBST(GDK_PIXBUF_MINOR)
106 AC_SUBST(GDK_PIXBUF_MICRO)
107 AC_SUBST(GDK_PIXBUF_VERSION)
109 GETTEXT_PACKAGE=gtk20
110 AC_SUBST(GETTEXT_PACKAGE)
111 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
116 AC_MSG_CHECKING([for native Win32])
126 AC_MSG_RESULT([$os_win32])
133 dnl Initialize libtool
137 if test "$os_win32" = "yes"; then
138 if test x$enable_static = xyes -o x$enable_static = x; then
139 AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.])
142 if test x$enable_shared = xno; then
143 AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.])
151 # Make sure we use 64-bit versions of various file stuff.
155 AC_PATH_PROG(NM, nm, nm)
157 dnl Initialize maintainer mode
160 AC_MSG_CHECKING([for some Win32 platform])
162 *-*-mingw*|*-*-cygwin*)
169 AC_MSG_RESULT([$platform_win32])
170 AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes")
172 AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
173 AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
174 AM_CONDITIONAL(OS_LINUX, test "$os_linux" = "yes")
176 if test "$os_win32" = "yes"; then
177 AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
179 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
181 m4_define([debug_default],
182 m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
184 dnl declare --enable-* args and collect ac_help strings
186 AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
187 [turn on debugging @<:@default=debug_default@:>@]),,
188 enable_debug=debug_default)
190 [AC_HELP_STRING([--enable-shm],
191 [support shared memory if available [default=yes]])],,
194 [AC_HELP_STRING([--enable-xkb],
195 [support XKB [default=maybe]])],,
196 [enable_xkb="maybe"])
197 AC_ARG_ENABLE(rebuilds,
198 [AC_HELP_STRING([--disable-rebuilds],
199 [disable all source autogeneration rules])],,
200 [enable_rebuilds=yes])
201 AC_ARG_ENABLE(visibility,
202 [AC_HELP_STRING([--disable-visibility],
203 [don't use ELF visibility attributes])],,
204 [enable_visibility=yes])
207 [AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
210 [AC_HELP_STRING([--with-wintab=DIRECTORY],
211 [use Wintab API with win32 backend])])
213 [AC_HELP_STRING([--with-ie55=DIRECTORY],
214 [IE5.5 libs and headers (for Active IMM)])])
216 if test "$platform_win32" = yes; then
222 AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32]] select non-default GDK target],
223 gdktarget=$with_gdktarget)
227 x11|linux-fb|win32) ;;
228 *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb or win32.]);;
231 gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
232 gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
234 AC_SUBST(gdktargetlib)
235 AC_SUBST(gtktargetlib)
237 AC_ARG_ENABLE(shadowfb,
238 [AC_HELP_STRING([--disable-shadowfb],
239 [disable shadowfb support for linux-fb])],,
240 [enable_shadowfb=yes])
242 AC_ARG_ENABLE(fbmanager,
243 [AC_HELP_STRING([--enable-fbmanager],
244 [enable framebuffer manager support (GtkFB)])],,
247 if test "x$enable_debug" = "xyes"; then
248 test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
249 GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
251 if test "x$enable_debug" = "xno"; then
252 GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
254 GTK_DEBUG_FLAGS="-DG_DISABLE_CAST_CHECKS"
258 if test "x$enable_visibility" = "xno"; then
259 GTK_DEBUG_FLAGS="$GTK_DEBUG_FLAGS -DDISABLE_VISIBILITY"
263 AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
266 # Build time sanity check...
269 # Checks for programs.
276 if test "x$GCC" = "xyes"; then
278 *[\ \ ]-Wall[\ \ ]*) ;;
279 *) CFLAGS="$CFLAGS -Wall" ;;
282 if test "x$enable_ansi" = "xyes"; then
284 *[\ \ ]-ansi[\ \ ]*) ;;
285 *) CFLAGS="$CFLAGS -ansi" ;;
289 *[\ \ ]-pedantic[\ \ ]*) ;;
290 *) CFLAGS="$CFLAGS -pedantic" ;;
296 # Ensure MSVC-compatible struct packing convention is used when
297 # compiling for Win32 with gcc.
298 # What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
299 # gcc2 uses "-fnative-struct".
300 if test x"$os_win32" = xyes; then
301 if test x"$GCC" = xyes; then
303 AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
304 if test -z "$ac_cv_prog_CC"; then
307 our_gcc="$ac_cv_prog_CC"
309 case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in
311 if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then
312 msnative_struct='-fnative-struct'
316 if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then
317 msnative_struct='-mms-bitfields'
321 if test x"$msnative_struct" = x ; then
322 AC_MSG_RESULT([no way])
323 AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code])
325 CFLAGS="$CFLAGS $msnative_struct"
326 AC_MSG_RESULT([${msnative_struct}])
331 # Honor aclocal flags
332 ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
334 ## Initial sanity check, done here so that users get told they
335 ## have the wrong dependencies as early in the process as possible.
336 ## Later on we actually use the cflags/libs from separate pkg-config
337 ## calls. Oh, also the later pkg-config calls don't include
338 ## the version requirements since those make the module lists
339 ## annoying to construct
340 PKG_CHECK_MODULES(BASE_DEPENDENCIES,
341 [glib-2.0 >= glib_required_version dnl
342 atk >= atk_required_version dnl
343 pango >= pango_required_version])
345 if test "$os_win32" != yes; then
346 # libtool option to control which symbols are exported
347 # right now, symbols starting with _ are not exported
348 LIBTOOL_EXPORT_OPTIONS='-export-symbols-regex "^[[^_]].*"'
350 # We currently use .def files on Windows (for gdk-pixbuf, gdk and gtk)
351 LIBTOOL_EXPORT_OPTIONS=
353 AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
355 dnl ******************************************************
356 dnl * See whether to include shared library dependencies *
357 dnl ******************************************************
359 AC_ARG_ENABLE(explicit-deps,
360 [AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
361 [use explicit dependencies in .pc files [default=auto]])],,
362 [enable_explicit_deps=auto])
364 AC_MSG_CHECKING([Whether to write dependencies into .pc files])
365 case $enable_explicit_deps in
367 deplib_check_method=`(./libtool --config; echo eval echo \\$deplib_check_method) | sh`
368 if test "X$deplib_check_method" = Xnone || test "x$enable_static" = xyes ; then
369 enable_explicit_deps=yes
371 enable_explicit_deps=no
376 *) AC_MSG_ERROR([Value given to --enable-explicit-deps must be one of yes, no or auto])
379 AC_MSG_RESULT($enable_explicit_deps)
381 AM_CONDITIONAL(DISABLE_EXPLICIT_DEPS, test $enable_explicit_deps = no)
383 # define a MAINT-like variable REBUILD which is set if Perl
384 # and awk are found, so autogenerated sources can be rebuilt
386 AC_PATH_PROGS(PERL, perl5 perl)
388 # We would like indent, but don't require it.
389 AC_CHECK_PROG(INDENT, indent, indent)
392 if test "x$enable_rebuilds" = "xyes" && \
394 $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
399 AC_CHECK_FUNCS(lstat mkstemp flockfile)
401 # _NL_TIME_FIRST_WEEKDAY is an enum and not a define
402 AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
403 AC_TRY_LINK([#include <langinfo.h>], [
405 c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY));
406 ], gtk_ok=yes, gtk_ok=no)
407 AC_MSG_RESULT($gtk_ok)
408 if test "$gtk_ok" = "yes"; then
409 AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1],
410 [Define if _NL_TIME_FIRST_WEEKDAY is available])
413 # sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
414 AC_MSG_CHECKING(for sigsetjmp)
415 AC_TRY_LINK([#include <setjmp.h>], [
418 ], gtk_ok=yes, gtk_ok=no)
419 AC_MSG_RESULT($gtk_ok)
420 if test "$gtk_ok" = "yes"; then
421 AC_DEFINE(HAVE_SIGSETJMP)
425 # TRANSLATORS: Please note that gtk+ has both po/ and po-properties/
426 # directories. If you add a new language to ALL_LINGUAS, please make
427 # sure that both po/ and po-properties/ have .po files that correspond
428 # to your language. If you only add one to po/, the build will break
430 ALL_LINGUAS="af am ar az az_IR be bg bn br bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu ia id is it ja ko li lt lv mi mk ml mn mr ms nb ne nl nn no nso pa pl pt pt_BR ro ru rw sk sl sq sr sr@ije sr@Latn sv ta th tk tr uk uz uz@Latn vi wa xh yi zh_CN zh_TW"
432 LIBS="$LIBS $INTLLIBS"
433 AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
434 sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
437 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
439 dnl The DU4 header files don't provide library prototypes unless
440 dnl -std1 is given to the native cc.
441 AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
445 AC_TRY_RUN([#include <math.h>
446 int main (void) { return (log(1) != log(1.)); }],
447 AC_MSG_RESULT(none needed),
448 gtk_save_CFLAGS="$CFLAGS"
449 CFLAGS="$CFLAGS -std1"
450 AC_TRY_RUN([#include <math.h>
451 int main (void) { return (log(1) != log(1.)); }],
452 AC_MSG_RESULT(-std1),
454 CFLAGS="$gtk_save_CFLAGS"
456 [No ANSI prototypes found in library. (-std1 didn't work.)]),
459 AC_MSG_RESULT(none needed)
463 AC_MSG_CHECKING(for the BeOS)
474 dnl NeXTStep cc seems to need this
475 AC_MSG_CHECKING([for extra flags for POSIX compliance])
476 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
477 AC_MSG_RESULT(none needed),
478 gtk_save_CFLAGS="$CFLAGS"
479 CFLAGS="$CFLAGS -posix"
480 AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
481 AC_MSG_RESULT(-posix),
483 CFLAGS="$gtk_save_CFLAGS"
484 AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
487 # Run AM_PATH_GLIB_2_0 to make sure that GLib is installed and working
490 GLIB_PACKAGES="gobject-2.0 gmodule-no-export-2.0"
492 AM_PATH_GLIB_2_0(glib_required_version, :,
494 *** GLIB glib_required_version or better is required. The latest version of
495 *** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
496 gobject gmodule-no-export gthread)
499 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
502 LIBS="$LIBS $GLIB_LIBS"
503 AC_CHECK_FUNCS(bind_textdomain_codeset)
506 AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
507 AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
508 AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
510 if test "${with_ie55+set}" = set && test $with_ie55 != no; then
511 AC_MSG_CHECKING([for dimm.h])
512 saved_CFLAGS="$CFLAGS"
513 CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
514 AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
516 #define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
517 #define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
523 #undef IMEMENUITEMINFOA
524 #undef IMEMENUITEMINFOW
530 AC_MSG_CHECKING([for IE55 uuid.lib])
531 if test -f $with_ie55/Lib/uuid.lib ; then
534 AC_DEFINE(HAVE_DIMM_H)
535 IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
536 AC_SUBST(IE55_UUID_LIB)
539 CFLAGS="$saved_CFLAGS"
544 CFLAGS="$saved_CFLAGS"
547 AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
549 if test "${with_wintab+set}" = set && test $with_wintab != no; then
550 AC_MSG_CHECKING([for wintab.h])
551 saved_CFLAGS="$CFLAGS"
552 CFLAGS="$CFLAGS -I$with_wintab/include"
553 AC_TRY_COMPILE([#include <windows.h>
554 #include <wintab.h>],
557 AC_MSG_CHECKING([for wntab32x.lib])
558 if test -f $with_wintab/lib/i386/wntab32x.lib ; then
561 AC_DEFINE(HAVE_WINTAB)
562 WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
566 CFLAGS="$saved_cflags"
571 CFLAGS="$saved_cflags"
574 AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
576 saved_cflags="$CFLAGS"
577 saved_ldflags="$LDFLAGS"
580 # Checks for header files.
583 # Checks for typedefs, structures, and compiler characteristics.
586 # Checks for library functions.
590 AC_CHECK_FUNCS(mallinfo)
591 AC_CHECK_FUNCS(getresuid)
594 # Check if <sys/select.h> needs to be included for fd_set
595 AC_MSG_CHECKING([for fd_set])
596 AC_TRY_COMPILE([#include <sys/types.h>],
597 [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
598 if test $gtk_ok = yes; then
599 AC_MSG_RESULT([yes, found in sys/types.h])
601 AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
602 if test $gtk_ok = yes; then
603 AC_DEFINE(HAVE_SYS_SELECT_H)
604 AC_MSG_RESULT([yes, found in sys/select.h])
611 # `widechar' tests for gdki18n.h
612 AC_MSG_CHECKING(for wchar.h)
613 AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
614 if test $gdk_wchar_h = yes; then
615 AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
617 AC_MSG_RESULT($gdk_wchar_h)
619 # Check for wctype.h (for iswalnum)
620 AC_MSG_CHECKING(for wctype.h)
621 AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
622 if test $gdk_wctype_h = yes; then
623 AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
625 AC_MSG_RESULT($gdk_wctype_h)
627 # in Solaris 2.5, `iswalnum' is in -lw
629 AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
632 LIBS="$LIBS $GDK_WLIBS"
633 # The following is necessary for Linux libc-5.4.38
634 AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
635 AC_TRY_LINK([#include <stdlib.h>],[
636 #if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
637 # ifdef HAVE_WCTYPE_H
645 # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
647 iswalnum((wchar_t) 0);
648 ], gdk_working_wctype=yes, gdk_working_wctype=no)
651 if test $gdk_working_wctype = no; then
652 AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
655 AC_MSG_RESULT($gdk_working_wctype)
658 # Check for uxtheme.h (for MS-Windows Engine)
659 AC_MSG_CHECKING(for uxtheme.h)
660 AC_TRY_CPP([#include <uxtheme.h>], gtk_uxtheme_h=yes, gtk_uxtheme_h=no)
661 if test $gtk_uxtheme_h = yes; then
662 AC_DEFINE(HAVE_UXTHEME_H,1,[Have uxtheme.h include file])
664 AC_MSG_RESULT($gtk_uxtheme_h)
667 ##################################################
668 # Checks for gdk-pixbuf
669 ##################################################
671 dnl ********************************************************
672 dnl * See whether we need to load our modules as .la files *
673 dnl ********************************************************
677 *-aix*) use_la_modules=true
680 if $use_la_modules ; then
681 AC_DEFINE(USE_LA_MODULES, 1, [Whether to load modules via .la files rather than directly])
685 AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
687 AC_ARG_ENABLE(modules,
688 [AC_HELP_STRING([--disable-modules],
689 [disable dynamic module loading])])
693 if test x$enable_modules = xno; then
697 AC_MSG_CHECKING(whether dynamic modules work)
698 ## for loop is to strip newline
699 tmp=`$PKG_CONFIG --variable=gmodule_supported gmodule-no-export-2.0`
704 dnl Now we check to see if our libtool supports shared lib deps
705 dnl (in a rather ugly way even)
707 pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
708 pixbuf_deplibs_check=`$pixbuf_libtool_config | \
709 grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
710 sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
711 if test "x$pixbuf_deplibs_check" = "xnone" || \
712 test "x$pixbuf_deplibs_check" = "xunknown" || \
713 test "x$pixbuf_deplibs_check" = "x"; then
719 AC_DEFINE(USE_GMODULE)
726 dnl We allow people to disable image loaders explicitely, but if they don't we error
727 dnl out so that people don't accidentally build without them.
730 [AC_HELP_STRING([--without-libpng],
731 [disable PNG loader for gdk-pixbuf])])
733 [AC_HELP_STRING([--without-libjpeg],
734 [disable JPEG loader for gdk-pixbuf])])
736 [AC_HELP_STRING([--without-libtiff],
737 [disable TIFF loader for gdk-pixbuf])])
740 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
741 AC_CHECK_LIB(tiff, TIFFReadScanline,
742 [AC_CHECK_HEADER(tiffio.h,
743 TIFF='tiff'; LIBTIFF='-ltiff',
744 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
745 [AC_CHECK_LIB(tiff, TIFFWriteScanline,
746 [AC_CHECK_HEADER(tiffio.h,
747 TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
748 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
749 [AC_CHECK_LIB(tiff34, TIFFFlushData,
750 [AC_CHECK_HEADER(tiffio.h,
751 TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
752 AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***))],
753 AC_MSG_WARN(*** TIFF loader will not be built (TIFF library not found) ***), -ljpeg -lz -lm)], -ljpeg -lz -lm)], -lm)
756 if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
758 *** Checks for TIFF loader failed. You can build without it by passing
759 *** --without-libtiff to configure but some programs using GTK+ may
760 *** not work properly])
764 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
765 AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
768 AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
769 if test "$jpeg_ok" = yes; then
770 AC_MSG_CHECKING([for jpeglib.h])
776 #include <jpeglib.h>],
779 AC_MSG_RESULT($jpeg_ok)
780 if test "$jpeg_ok" = yes; then
782 AC_CHECK_LIB(jpeg, jpeg_simple_progression,
783 AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
784 AC_MSG_WARN(JPEG library does not support progressive saving.))
786 AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
791 if test x$with_libjpeg != xno && test -z "$LIBJPEG"; then
793 *** Checks for JPEG loader failed. You can build without it by passing
794 *** --without-libjpeg to configure but some programs using GTK+ may
795 *** not work properly])
799 if test x$with_libpng != xno && test -z "$LIBPNG"; then
800 AC_MSG_CHECKING(for libpng12)
801 if $PKG_CONFIG --exists libpng12 ; then
804 PNG_DEP_CFLAGS_PACKAGES=libpng12
805 LIBPNG=`$PKG_CONFIG --libs libpng12`
808 AC_CHECK_LIB(png, png_read_info,
809 [AC_CHECK_HEADER(png.h,
812 AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
813 if test "$png_ok" = yes; then
814 AC_MSG_CHECKING([for png_structp in png.h])
815 AC_TRY_COMPILE([#include <png.h>],
816 [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
819 AC_MSG_RESULT($png_ok)
820 if test "$png_ok" = yes; then
821 PNG='png'; LIBPNG='-lpng -lz'
823 AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
826 AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
831 if test x$with_libpng != xno && test -z "$LIBPNG"; then
833 *** Checks for PNG loader failed. You can build without it by passing
834 *** --without-libpng to configure but many programs using GTK+ will
835 *** not work properly. The PNG loader is also needed if you are compiling
843 AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
846 # Allow building some or all gdk-pixbuf loaders included
848 AC_MSG_CHECKING(pixbuf loaders to build)
850 dnl due to an autoconf bug, commas in the first arg to
851 dnl AC_HELP_STRING cause problems.
852 dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
853 dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
854 AC_ARG_WITH(included_loaders,
855 [ --with-included-loaders=LOADER1,LOADER2,...
856 build the specified loaders into gdk-pixbuf (only
857 used if module loading disabled)])
862 ## if the option was specified, leave it; otherwise disable included loaders
863 if test x$with_included_loaders = xno; then
864 with_included_loaders=yes
868 all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
870 # If no loaders specified, include all
871 if test "x$with_included_loaders" = xyes ; then
872 included_loaders="$all_loaders"
874 included_loaders="$with_included_loaders"
877 AC_MSG_RESULT($included_loaders)
880 INCLUDED_LOADER_DEFINE=
882 IFS="${IFS= }"; gtk_save_ifs="$IFS"; IFS=","
883 for loader in $included_loaders; do
884 if echo "$all_loaders" | egrep "(^|,)$loader(\$|,)" > /dev/null; then
887 AC_MSG_ERROR([the specified loader $loader does not exist])
890 INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
891 INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
894 AC_SUBST(INCLUDED_LOADER_OBJ)
895 AC_SUBST(INCLUDED_LOADER_DEFINE)
901 AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
902 AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
903 AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
907 if echo "$included_loaders" | egrep '(^|,)tiff($|,)' > /dev/null; then
908 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
910 if echo "$included_loaders" | egrep '(^|,)jpeg($|,)' > /dev/null; then
911 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJPEG"
913 if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
914 STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
917 STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
920 # Checks to see if we should compile in MMX support (there will be
921 # a runtime test when the code is actually run to see if it should
922 # be used - this just checks if we can compile it.)
924 # This code is partially taken from Mesa
926 AC_MSG_CHECKING(for x86 platform)
928 i386|i486|i586|i686|i786|k6|k7)
934 AC_MSG_RESULT($use_x86_asm)
937 if test $use_x86_asm = yes; then
941 AC_MSG_CHECKING(compiler support for MMX)
942 cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
943 if AC_TRY_EVAL(ac_compile); then
950 if test $use_mmx_asm = yes; then
958 AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
961 if test -z "$LIBPNG"; then
965 dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
967 AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
969 if test $cross_compiling = yes; then
970 AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
971 if test x$GDK_PIXBUF_CSOURCE = xno; then
976 if test ! -f $srcdir/gtk/stock-icons/gtkstockpixbufs.h &&
977 test "x$REBUILD_PNGS" = "x#" ; then
979 *** gtkstockpixbufs.h is not in the tree, and cannot be built
980 *** because you don't have libpng, or (when cross-compiling) you
981 *** don't have a prebuilt gdk-pixbuf-csource on the host system.])
984 AC_SUBST(REBUILD_PNGS)
986 GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0"
987 GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
988 GDK_PIXBUF_EXTRA_CFLAGS=
989 GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
990 GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
992 AC_SUBST(GDK_PIXBUF_PACKAGES)
993 AC_SUBST(GDK_PIXBUF_EXTRA_LIBS)
994 AC_SUBST(GDK_PIXBUF_EXTRA_CFLAGS)
995 AC_SUBST(GDK_PIXBUF_DEP_LIBS)
996 AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
999 ########################################
1000 # Windowing system checks
1001 ########################################
1003 GDK_EXTRA_LIBS=$GDK_WLIBS
1009 if test "x$gdktarget" = "xlinux-fb" || test "x$gdktarget" = "xx11" ; then
1011 # Checks for FreeType
1014 AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
1015 if test "x$FREETYPE_CONFIG" != "xno" ; then
1016 FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
1017 FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
1019 gtk_save_LIBS="$LIBS"
1020 LIBS="$FREETYPE_LIBS $LIBS"
1021 AC_TRY_LINK_FUNC(FT_New_Face, have_freetype=true,:)
1022 LIBS="$gtk_save_LIBS"
1024 if $have_freetype ; then
1025 gtk_save_cppflags="$CPPFLAGS"
1026 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
1028 AC_MSG_CHECKING([For sufficiently new FreeType (at least 2.0.1)])
1030 #include <ft2build.h>
1031 #include FT_FREETYPE_H
1032 #include FT_ERRORS_H
1034 [(void)1;],:,have_freetype=false)
1035 if $have_freetype ; then
1041 CPPFLAGS="$gtk_save_cppflags"
1044 AC_SUBST(FREETYPE_LIBS)
1045 AC_SUBST(FREETYPE_CFLAGS)
1048 if test "x$gdktarget" = "xx11"; then
1049 # We start off with the libraries from Pango
1051 ## be sure we also have Pango built with Xft2 support
1052 if $PKG_CONFIG --exists 'pangoxft >= 1.2.0' ; then
1053 if $have_freetype ; then
1056 AC_MSG_ERROR([Xft Pango backend found but did not find freetype libraries])
1059 AC_MSG_ERROR([Xft Pango backend is required for x11 target])
1062 if $PKG_CONFIG --exists xft ; then : ; else
1063 AC_MSG_ERROR([Xft version 2 is required for x11 target])
1067 # If Pango included the shared library dependencies from X11 in
1068 # the pkg-config output, then we use that (to avoid duplicates).
1069 # but if they were omitted to avoid binary compatibility problems,
1070 # then we need to repeat the checks.
1072 x_libs="`$PKG_CONFIG --libs pangoxft`"
1074 *-lX11*) pango_omitted_x_deps=no ;;
1075 *) pango_omitted_x_deps=yes ;;
1078 x_cflags="`$PKG_CONFIG --cflags pangoxft`"
1082 if test x$no_x = xyes ; then
1083 AC_MSG_ERROR([X development libraries not found])
1086 if test $pango_omitted_x_deps = yes ; then
1087 # Old versions of Xft didn't necessarily include -lX11 in the output
1088 x_libs="`$PKG_CONFIG --libs xft` -lX11 $X_EXTRA_LIBS"
1091 ## Strip the .la files
1093 x_libs_for_checks=""
1094 for I in $x_libs ; do
1097 *) x_libs_for_checks="$x_libs_for_checks $I" ;;
1101 # Sanity check for the X11 library
1102 AC_CHECK_LIB(X11, XOpenDisplay, :,
1103 AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
1106 if test "x$enable_shm" = "xyes"; then
1107 # Check for the Xext library (needed for XShm extention)
1108 AC_CHECK_LIB(Xext, XShmAttach,
1109 [GTK_ADD_LIB(x_extra_libs,Xext)],
1110 # On AIX, it is in XextSam instead, but we still need -lXext
1111 [AC_CHECK_LIB(XextSam, XShmAttach,
1112 [GTK_ADD_LIB(x_extra_libs,Xext)
1113 GTK_ADD_LIB(x_extra_libs,XextSam)
1114 ], , -lXext $x_libs_for_checks)],
1118 GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
1119 # Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11
1120 GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $x_extra_libs $X_EXTRA_LIBS"
1122 # GTK+ uses some X calls, so needs to link against X directly
1123 if test $enable_explicit_deps != yes ; then
1124 GTK_DEP_LIBS_FOR_X="$X_LIBS -lX11 $X_EXTRA_LIBS"
1127 # Check for Xinerama extension (Solaris impl or Xfree impl)
1129 gtk_save_cppflags="$CPPFLAGS"
1130 CPPFLAGS="$CPPFLAGS $x_cflags"
1135 use_solaris_xinerama=yes
1136 AC_CHECK_LIB(Xext, XineramaGetInfo,
1137 use_solaris_xinerama=yes,
1138 use_solaris_xinerama=no,
1139 -lXext $x_libs_for_checks)
1140 if test "x$use_solaris_xinerama" = "xyes"; then
1141 AC_CHECK_HEADER(X11/extensions/xinerama.h,
1142 [GTK_ADD_LIB(x_extra_libs,Xext)
1143 AC_DEFINE(HAVE_SOLARIS_XINERAMA)
1144 AC_DEFINE(HAVE_XINERAMA)],
1145 use_solaris_xinerama=no,[#include <X11/Xlib.h>])
1147 AC_MSG_CHECKING(for Xinerama support on Solaris)
1148 AC_MSG_RESULT($use_solaris_xinerama);
1152 use_xfree_xinerama=yes
1153 AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
1154 [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
1155 [GTK_ADD_LIB(x_extra_libs,Xext)
1156 GTK_ADD_LIB(x_extra_libs,Xinerama)
1157 AC_DEFINE(HAVE_XFREE_XINERAMA)
1158 AC_DEFINE(HAVE_XINERAMA)],
1159 use_xfree_xinerama=no,
1160 [#include <X11/Xlib.h>])],
1161 use_xfree_xinerama=no, -lXext $x_libs_for_checks)
1162 AC_MSG_CHECKING(for Xinerama support on XFree86)
1163 AC_MSG_RESULT($use_xfree_xinerama);
1167 CPPFLAGS="$gtk_save_cppflags"
1171 gtk_save_cppflags="$CPPFLAGS"
1172 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
1174 AC_MSG_CHECKING([if <X11/extensions/XIproto.h> is needed for xReply])
1175 AC_TRY_COMPILE([#include <X11/Xlibint.h>],
1177 [AC_MSG_RESULT([no])],
1178 [AC_TRY_COMPILE([#include <X11/extensions/XIproto.h>
1179 #include <X11/Xlibint.h>],
1181 [AC_MSG_RESULT([yes])
1182 AC_DEFINE([NEED_XIPROTO_H_FOR_XREPLY], 1,
1183 [Define if <X11/extensions/XIproto.h> needed for xReply])],
1184 [AC_MSG_RESULT([unknown])
1185 AC_MSG_ERROR([xReply type unavailable. X11 is too old])])])
1187 CPPFLAGS="$gtk_save_cppflags"
1189 # Check for shaped window extension
1191 AC_CHECK_LIB(Xext, XShapeCombineMask,
1192 [GTK_ADD_LIB(x_extra_libs,Xext)
1193 AC_DEFINE(HAVE_SHAPE_EXT)],
1197 # Check for XConvertCase (X11R6 specific)
1199 AC_CHECK_LIB(X11, XConvertCase,
1200 AC_DEFINE(HAVE_XCONVERTCASE),
1204 # Check for XInternAtoms (X11R6 specific)
1206 AC_CHECK_LIB(X11, XInternAtoms,
1207 AC_DEFINE([HAVE_XINTERNATOMS], 1,
1208 [Define to 1 if you have the `XInternAtoms' function.]),
1212 # Generic X11R6 check needed for XIM support; we could
1213 # probably use this to replace the above, but we'll
1214 # leave the separate checks for XConvertCase and XInternAtoms
1217 AC_CHECK_LIB(X11, XAddConnectionWatch,
1222 if $have_x11r6; then
1223 AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
1225 AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
1227 # Check for XKB support.
1229 if test "x$enable_xkb" = "xyes"; then
1230 AC_MSG_WARN(XKB support explicitly enabled)
1232 elif test "x$enable_xkb" = "xmaybe"; then
1233 AC_CHECK_LIB(X11, XkbQueryExtension,
1234 AC_DEFINE(HAVE_XKB),
1238 AC_MSG_WARN(XKB support explicitly disabled)
1241 x_cflags="$X_CFLAGS"
1242 x_ldflags="$X_LDFLAGS"
1244 # set up things for XInput
1246 if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
1247 AC_DEFINE(XINPUT_XFREE)
1248 GTK_ADD_LIB(x_extra_libs, Xi)
1250 AC_DEFINE(XINPUT_NONE)
1253 AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
1255 # Check for the RANDR extension
1257 AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
1258 [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
1259 # RANDR requires RENDER
1260 [GTK_ADD_LIB(x_extra_libs, Xrender)
1261 GTK_ADD_LIB(x_extra_libs, Xrandr)
1262 AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library)],
1263 :, [#include <X11/Xlib.h>])], : ,
1264 $X_LIBS -lXrandr -lXrender -lX11 $X_EXTRA_LIBS)
1266 # Checks for Xcursor library
1269 PKG_CHECK_MODULES(XCURSOR, xcursor, have_xcursor=true, :)
1271 if $have_xcursor ; then
1272 AC_DEFINE(HAVE_XCURSOR, 1, Have the Xcursor library)
1273 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xcursor` $GDK_EXTRA_CFLAGS"
1274 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xcursor` $GDK_EXTRA_LIBS"
1278 AC_CHECK_LIB(Xext, XSyncQueryExtension,
1279 [AC_CHECK_HEADER(X11/extensions/sync.h,
1280 [GTK_ADD_LIB(x_extra_libs, Xext)
1281 AC_DEFINE(HAVE_XSYNC, 1, Have the SYNC extension library)],
1282 :, [#include <X11/Xlib.h>])], : ,
1283 $X_LIBS -lXext -lX11 $X_EXTRA_LIBS)
1285 # Checks for XFixes extension
1288 PKG_CHECK_MODULES(XFIXES, xfixes, have_xfixes=true, :)
1290 if $have_xfixes ; then
1291 AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
1292 GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags xfixes` $GDK_EXTRA_CFLAGS"
1293 GDK_EXTRA_LIBS="`$PKG_CONFIG --libs xfixes` $GDK_EXTRA_LIBS"
1298 if test "x$enable_shm" = "xyes"; then
1299 # Check for shared memory
1300 AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
1301 AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
1303 # Check for the X shared memory extension header file
1305 AC_MSG_CHECKING(X11/extensions/XShm.h)
1306 if test "x$no_xext_lib" = "xyes"; then
1309 gtk_save_CFLAGS="$CFLAGS"
1310 CFLAGS="$CFLAGS $x_cflags"
1313 #include <sys/types.h>
1314 #include <sys/ipc.h>
1315 #include <sys/shm.h>
1316 #include <X11/Xlib.h>
1317 #include <X11/Xutil.h>
1318 #include <X11/extensions/XShm.h>
1319 ], [XShmSegmentInfo *x_shm_info;], have_xshm=yes)
1320 CFLAGS="$gtk_save_CFLAGS"
1322 AC_MSG_RESULT($have_xshm)
1323 if test $have_xshm = yes ; then
1324 AC_DEFINE(HAVE_XSHM_H)
1328 if test $pango_omitted_x_deps = yes ; then
1329 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $x_libs $GDK_EXTRA_LIBS"
1331 GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $GDK_EXTRA_LIBS"
1334 AM_CONDITIONAL(USE_X11, true)
1336 AM_CONDITIONAL(XINPUT_XFREE, false)
1337 AM_CONDITIONAL(USE_X11, false)
1338 AM_CONDITIONAL(HAVE_X11R6, false)
1341 if test "x$gdktarget" = "xwin32"; then
1342 # We start off with the libraries from Pango
1344 if test x$have_wintab = xyes; then
1345 GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
1346 AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
1349 GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -luuid"
1350 AM_CONDITIONAL(USE_WIN32, true)
1352 AM_CONDITIONAL(USE_WIN32, false)
1355 GDK_PIXBUF_XLIB_PACKAGES=
1356 GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1357 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"
1359 AC_SUBST(GDK_PIXBUF_XLIB_PACKAGES)
1360 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_LIBS)
1361 AC_SUBST(GDK_PIXBUF_XLIB_EXTRA_CFLAGS)
1362 AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
1363 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
1365 if test "x$gdktarget" = "xlinux-fb"; then
1366 if $have_freetype ; then
1369 AC_MSG_ERROR([Using linux-fb backend but freetype was not found])
1372 ft2_libs="`$PKG_CONFIG --libs pangoft2`"
1374 *-lfreetype*) pango_omitted_ft2_deps=no ;;
1375 *) pango_omitted_ft2_deps=yes ;;
1378 CFLAGS="$CFLAGS $FREETYPE_CFLAGS"
1380 if test x$enable_shadowfb = xyes ; then
1381 AC_DEFINE(ENABLE_SHADOW_FB)
1384 if test x$enable_fbmanager = xyes ; then
1385 AC_DEFINE(ENABLE_FB_MANAGER)
1386 AM_CONDITIONAL(ENABLE_FB_MANAGER, true)
1388 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1391 if test $pango_omitted_ft2_deps = yes ; then
1392 GDK_EXTRA_LIBS="$FREETYPE_LIBS $GDK_EXTRA_LIBS"
1395 AM_CONDITIONAL(USE_LINUX_FB, true)
1397 AM_CONDITIONAL(USE_LINUX_FB, false)
1398 AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
1402 # Pick correct Pango packages to use
1405 if test "x$gdktarget" = "xx11"; then
1406 PANGO_PACKAGES="pangoxft pangocairo"
1408 # We no longer use pangox, but if we find it, we link to it
1409 # for binary compatibility.
1410 if $PKG_CONFIG --exists pangox ; then
1411 PANGO_PACKAGES="$PANGO_PACKAGES pangox"
1413 elif test "x$gdktarget" = "xwin32"; then
1414 PANGO_PACKAGES="pangowin32 pangocairo"
1415 elif test "x$gdktarget" = "xlinux-fb"; then
1416 PANGO_PACKAGES="pangoft2 pangocairo"
1418 PANGO_PACKAGES="pango pangocairo"
1421 # Check for Pango flags
1423 AC_MSG_CHECKING(Pango flags)
1424 if $PKG_CONFIG --exists $PANGO_PACKAGES ; then
1425 PANGO_CFLAGS=`$PKG_CONFIG --cflags $PANGO_PACKAGES`
1426 PANGO_LIBS=`$PKG_CONFIG --libs $PANGO_PACKAGES`
1428 AC_MSG_RESULT($PANGO_CFLAGS $PANGO_LIBS)
1431 *** Pango not found. Pango built with Cairo support is required
1432 *** to build GTK+. See http://www.pango.org for Pango information.
1436 CFLAGS="$CFLAGS $PANGO_CFLAGS"
1438 if $PKG_CONFIG --uninstalled $PANGO_PACKAGES; then
1441 gtk_save_LIBS="$LIBS"
1442 LIBS="$PANGO_LIBS $LIBS"
1443 AC_TRY_LINK_FUNC(pango_context_new, :, AC_MSG_ERROR([
1444 *** Can't link to Pango. Pango is required to build
1445 *** GTK+. For more information see http://www.pango.org]))
1446 LIBS="$gtk_save_LIBS"
1449 CFLAGS="$saved_cflags"
1450 LDFLAGS="$saved_ldflags"
1452 GDK_PACKAGES="$PANGO_PACKAGES"
1453 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
1454 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
1457 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
1458 # into the pkg-config files
1460 if test $enable_explicit_deps != yes ; then
1464 AC_SUBST(GDK_PACKAGES)
1465 AC_SUBST(GDK_EXTRA_LIBS)
1466 AC_SUBST(GDK_EXTRA_CFLAGS)
1467 AC_SUBST(GDK_DEP_LIBS)
1468 AC_SUBST(GDK_DEP_CFLAGS)
1471 ########################################
1472 # Check for Accessibility Toolkit flags
1473 ########################################
1476 AC_MSG_CHECKING(ATK flags)
1477 if $PKG_CONFIG --exists $ATK_PACKAGES ; then
1478 ATK_CFLAGS=`$PKG_CONFIG --cflags $ATK_PACKAGES`
1479 ATK_LIBS=`$PKG_CONFIG --libs $ATK_PACKAGES`
1481 AC_MSG_RESULT($ATK_CFLAGS $ATK_LIBS)
1484 *** Accessibility Toolkit not found. Accessibility Toolkit is required
1489 if $PKG_CONFIG --uninstalled $ATK_PACKAGES; then
1492 gtk_save_LIBS="$LIBS"
1493 LIBS="$ATK_LIBS $LIBS"
1494 AC_TRY_LINK_FUNC(atk_object_get_type, : , AC_MSG_ERROR([
1495 *** Cannot link to Accessibility Toolkit. Accessibility Toolkit is required
1496 *** to build GTK+]))
1497 LIBS="$gtk_save_LIBS"
1500 GTK_PACKAGES="atk cairo"
1503 GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
1504 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"
1506 if test x"$os_win32" = xyes; then
1507 GTK_EXTRA_CFLAGS="$msnative_struct"
1510 AC_SUBST(GTK_PACKAGES)
1511 AC_SUBST(GTK_EXTRA_LIBS)
1512 AC_SUBST(GTK_EXTRA_CFLAGS)
1513 AC_SUBST(GTK_DEP_LIBS)
1514 AC_SUBST(GTK_DEP_CFLAGS)
1517 AC_SUBST(GTK_DEBUG_FLAGS)
1518 AC_SUBST(GTK_XIM_FLAGS)
1520 ################################################################
1521 # Strip -export-dynamic from the link lines of various libraries
1522 ################################################################
1525 # pkg-config --libs gmodule includes the "export_dynamic" flag,
1526 # but this flag is only meaningful for executables. For libraries
1527 # the effect is undefined; what it causes on Linux is that the
1528 # export list from -export-symbols-regex is ignored and everything
1531 # We are using gmodule-no-export now, but I'm leaving the stripping
1532 # code in place for now, since pango and atk still require gmodule.
1533 export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
1534 if test -n "$export_dynamic"; then
1535 GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
1536 GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"`
1537 GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1538 GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
1542 ##################################################
1543 # Checks for gtk-doc and docbook-tools
1544 ##################################################
1546 GTK_DOC_CHECK([1.4])
1548 AC_CHECK_PROG(DB2HTML, db2html, true, false)
1549 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
1552 [AC_HELP_STRING([--enable-man],
1553 [regenerate man pages from Docbook [default=no]])],enable_man=yes,
1556 if test "${enable_man}" != no; then
1558 dnl Check for xsltproc
1560 AC_PATH_PROG([XSLTPROC], [xsltproc])
1561 if test -z "$XSLTPROC"; then
1565 dnl check for DocBook DTD and stylesheets in the local catalog.
1566 JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
1567 [DocBook XML DTD V4.1.2],,enable_man=no)
1568 JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
1569 [DocBook XSL Stylesheets],,enable_man=no)
1572 AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
1575 ##################################################
1577 ##################################################
1579 AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
1580 outfile=gdkconfig.h-tmp
1581 cat > $outfile <<\_______EOF
1584 * This is a generated file. Please modify `configure.in'
1592 #endif /* __cplusplus */
1596 cat >>$outfile <<_______EOF
1601 cat >>$outfile <<_______EOF
1605 #endif /* __cplusplus */
1607 #endif /* GDKCONFIG_H */
1611 if cmp -s $outfile gdk/gdkconfig.h; then
1612 AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
1615 mv $outfile gdk/gdkconfig.h
1618 if test "x$gdktarget" = "xx11" ; then
1620 #define GDK_WINDOWING_X11'
1621 elif test "x$gdktarget" = "xwin32" ; then
1623 #define GDK_WINDOWING_WIN32'
1624 elif test "x$gdktarget" = "xlinux-fb" ; then
1626 #define GDK_WINDOWING_FB
1627 #define GDK_NATIVE_WINDOW_POINTER'
1630 if test x$gdk_wchar_h = xyes; then
1632 #define GDK_HAVE_WCHAR_H 1'
1634 if test x$gdk_wctype_h = xyes; then
1636 #define GDK_HAVE_WCTYPE_H 1"
1638 if test x$gdk_working_wctype = xno; then
1640 #define GDK_HAVE_BROKEN_WCTYPE 1"
1653 gdk-pixbuf-2.0-uninstalled.pc
1654 gdk-2.0-uninstalled.pc
1655 gtk+-2.0-uninstalled.pc
1658 po-properties/Makefile.in
1660 build/win32/Makefile
1661 build/win32/dirent/Makefile
1663 demos/gtk-demo/Makefile
1664 demos/gtk-demo/geninclude.pl
1667 docs/reference/Makefile
1668 docs/reference/gdk-pixbuf/Makefile
1669 docs/reference/gdk-pixbuf/version.xml
1670 docs/reference/gdk/Makefile
1671 docs/reference/gdk/version.xml
1672 docs/reference/gtk/Makefile
1673 docs/reference/gtk/version.xml
1676 docs/tutorial/Makefile
1678 gdk-pixbuf/gdk_pixbuf.rc
1679 gdk-pixbuf/gdk-pixbuf-features.h
1680 gdk-pixbuf/pixops/Makefile
1684 gdk/win32/rc/Makefile
1686 gdk/linux-fb/Makefile
1691 gtk/stock-icons/Makefile
1692 gtk/theme-bits/Makefile
1693 gtk/xdgmime/Makefile
1695 modules/input/Makefile
1696 modules/engines/Makefile
1697 modules/engines/pixbuf/Makefile
1698 modules/engines/ms-windows/Makefile
1699 modules/engines/ms-windows/Theme/Makefile
1700 modules/engines/ms-windows/Theme/gtk-2.0/Makefile
1702 contrib/gdk-pixbuf-xlib/Makefile
1703 contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
1708 echo "configuration:
1711 if test "x$gdktarget" = "xlinux-fb"; then
1712 echo "Warning: The linux-fb GDK target is unmaintained"
1713 echo " and may not work or even compile"