# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
m4_define([gtk_major_version], [2])
-m4_define([gtk_minor_version], [9])
+m4_define([gtk_minor_version], [11])
m4_define([gtk_micro_version], [0])
m4_define([gtk_version],
[gtk_major_version.gtk_minor_version.gtk_micro_version])
# for GTK+.
#
#GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
-m4_define([gtk_binary_version], [2.4.0])
+m4_define([gtk_binary_version], [2.10.0])
# required versions of other packages
-m4_define([glib_required_version], [2.9.2])
-m4_define([pango_required_version], [1.9.0])
-m4_define([atk_required_version], [1.0.1])
-m4_define([cairo_required_version], [0.9.2])
+m4_define([glib_required_version], [2.13.0])
+m4_define([pango_required_version], [1.15.3])
+m4_define([atk_required_version], [1.9.0])
+m4_define([cairo_required_version], [1.2.0])
AC_INIT([gtk+], [gtk_version],
AC_ARG_WITH(xinput,
[AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
-AC_ARG_WITH(wintab,
- [AC_HELP_STRING([--with-wintab=DIRECTORY],
- [use Wintab API with win32 backend])])
-AC_ARG_WITH(ie55,
- [AC_HELP_STRING([--with-ie55=DIRECTORY],
- [IE5.5 libs and headers (for Active IMM)])])
-
if test "$platform_win32" = yes; then
gdktarget=win32
else
gdktarget=x11
fi
-AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32/quartz]] select non-default GDK target],
+AC_ARG_WITH(gdktarget, [ --with-gdktarget=[[x11/linux-fb/win32/quartz/directfb]] select non-default GDK target],
gdktarget=$with_gdktarget)
AC_SUBST(gdktarget)
case $gdktarget in
- x11|linux-fb|win32|quartz) ;;
- *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb, quartz or win32.]);;
+ x11|linux-fb|win32|quartz|directfb) ;;
+ *) AC_MSG_ERROR([Invalid target for GDK: use x11, linux-fb, quartz, directfb or win32.]);;
esac
gdktargetlib=libgdk-$gdktarget-$GTK_API_VERSION.la
AC_MSG_CHECKING([Whether to write dependencies into .pc files])
case $enable_explicit_deps in
auto)
- deplibs_check_method=`(./libtool --config; echo eval echo \\$deplibs_check_method) | sh`
+ export SED
+ deplibs_check_method=`(./libtool --config; echo 'eval echo $deplibs_check_method') | sh`
if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
enable_explicit_deps=yes
else
fi
AC_SUBST(REBUILD)
-AC_CHECK_FUNCS(lstat mkstemp flockfile)
+AC_CHECK_FUNCS(lstat mkstemp flockfile getc_unlocked)
# _NL_TIME_FIRST_WEEKDAY is an enum and not a define
AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY])
[Define if _NL_TIME_FIRST_WEEKDAY is available])
fi
+# _NL_MEASUREMENT_MEASUREMENT is an enum and not a define
+AC_MSG_CHECKING([for _NL_MEASUREMENT_MEASUREMENT])
+AC_TRY_LINK([#include <langinfo.h>], [
+char c;
+c = *((unsigned char *) nl_langinfo(_NL_MEASUREMENT_MEASUREMENT));
+], gtk_ok=yes, gtk_ok=no)
+AC_MSG_RESULT($gtk_ok)
+if test "$gtk_ok" = "yes"; then
+ AC_DEFINE([HAVE__NL_MEASUREMENT_MEASUREMENT], [1],
+ [Define if _NL_MEASUREMENT_MEASUREMENT is available])
+fi
+
+# _NL_PAPER_HEIGHT is an enum and not a define
+AC_MSG_CHECKING([for _NL_PAPER_HEIGHT])
+AC_TRY_LINK([#include <langinfo.h>], [
+char c;
+c = *((unsigned char *) nl_langinfo(_NL_PAPER_HEIGHT));
+], gtk_ok=yes, gtk_ok=no)
+AC_MSG_RESULT($gtk_ok)
+if test "$gtk_ok" = "yes"; then
+ AC_DEFINE([HAVE__NL_PAPER_HEIGHT], [1],
+ [Define if _NL_PAPER_HEIGHT is available])
+fi
+
+# _NL_PAPER_WIDTH is an enum and not a define
+AC_MSG_CHECKING([for _NL_PAPER_WIDTH])
+AC_TRY_LINK([#include <langinfo.h>], [
+char c;
+c = *((unsigned char *) nl_langinfo(_NL_PAPER_WIDTH));
+], gtk_ok=yes, gtk_ok=no)
+AC_MSG_RESULT($gtk_ok)
+if test "$gtk_ok" = "yes"; then
+ AC_DEFINE([HAVE__NL_PAPER_WIDTH], [1],
+ [Define if _NL_PAPER_WIDTH is available])
+fi
+
# sigsetjmp is a macro on some platforms, so AC_CHECK_FUNCS is not reliable
AC_MSG_CHECKING(for sigsetjmp)
AC_TRY_LINK([#include <setjmp.h>], [
# sure that both po/ and po-properties/ have .po files that correspond
# to your language. If you only add one to po/, the build will break
# in po-properties/.
-ALL_LINGUAS="af am ang ar az az_IR be bg bn br bs ca cs cy da de el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu hy ia id is it ja ko ku 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@Latn sr@ije sv ta te th tk tr tt uk uz uz@Latn vi wa xh yi zh_CN zh_HK zh_TW"
+ALL_LINGUAS="af am ang ar az az_IR be bg bn bn_IN br bs ca cs cy da de dz el en_CA en_GB es et eu fa fi fr ga gl gu he hi hr hu hy ia id is it ja ka ko ku li lt lv mi mk ml mn mr ms nb ne nl nn nso or pa pl pt pt_BR ro ru rw sk sl sq sr sr@Latn sr@ije sv ta te th tk tr tt uk ur uz uz@Latn vi wa xh yi zh_CN zh_HK zh_TW"
AM_GLIB_GNU_GETTEXT
LIBS="$LIBS $INTLLIBS"
AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
*** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
gobject gmodule-no-export gthread)
+# See if it's safe to turn G_DISABLE_DEPRECATED on.
+GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.@<:@^.@:>@*\$//"`
+GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo glib_required_version | sed "s/\.@<:@^.@:>@*\$//"`
+if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
+ CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
+fi
+
+
dnl
dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
dnl
AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
-if test "${with_ie55+set}" = set && test $with_ie55 != no; then
- AC_MSG_CHECKING([for dimm.h])
- saved_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -idirafter $with_ie55/Include"
- AC_TRY_COMPILE([/* The w32api imm.h clashes a bit with the IE5.5 dimm.h */
-#ifdef __GNUC__
-#define IMEMENUITEMINFOA hidden_IMEMENUITEMINFOA
-#define IMEMENUITEMINFOW hidden_IMEMENUITEMINFOW
-#endif
-#include <windows.h>
-#include <objbase.h>
-#include <imm.h>
-#ifdef __GNUC__
-#undef IMEMENUITEMINFOA
-#undef IMEMENUITEMINFOW
-#endif
-#include <dimm.h>
-],
- [],
- [AC_MSG_RESULT(yes)
- AC_MSG_CHECKING([for IE55 uuid.lib])
- if test -f $with_ie55/Lib/uuid.lib ; then
- AC_MSG_RESULT(yes)
- have_ie55=yes
- AC_DEFINE(HAVE_DIMM_H)
- IE55_UUID_LIB="$with_ie55/Lib/uuid.lib"
- AC_SUBST(IE55_UUID_LIB)
- else
- AC_MSG_RESULT(no)
- CFLAGS="$saved_CFLAGS"
- have_ie55=no
- fi
- ],
- [AC_MSG_RESULT(no)
- CFLAGS="$saved_CFLAGS"
- have_ie55=no])
-fi
-AM_CONDITIONAL(HAVE_IE55, test x$have_ie55 = xyes)
-
-if test "${with_wintab+set}" = set && test $with_wintab != no; then
- AC_MSG_CHECKING([for wintab.h])
- saved_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -I$with_wintab/include"
- AC_TRY_COMPILE([#include <windows.h>
-#include <wintab.h>],
- [],
- [AC_MSG_RESULT(yes)
- AC_MSG_CHECKING([for wntab32x.lib])
- if test -f $with_wintab/lib/i386/wntab32x.lib ; then
- AC_MSG_RESULT(yes)
- have_wintab=yes
- AC_DEFINE(HAVE_WINTAB)
- WINTAB_LIB="$with_wintab/lib/i386/wntab32x.lib"
- AC_SUBST(WINTAB_LIB)
- else
- AC_MSG_RESULT(no)
- CFLAGS="$saved_cflags"
- have_wintab=no
- fi
- ],
- [AC_MSG_RESULT(no)
- CFLAGS="$saved_cflags"
- have_wintab=no])
-fi
-AM_CONDITIONAL(HAVE_WINTAB, test x$have_wintab = xyes)
-
saved_cflags="$CFLAGS"
saved_ldflags="$LDFLAGS"
fi
AC_MSG_RESULT($gtk_uxtheme_h)
+# Checks for gdkspawn
+AC_CHECK_HEADERS(crt_externs.h)
+AC_CHECK_FUNCS(_NSGetEnviron)
+
##################################################
# Checks for gdk-pixbuf
dnl due to an autoconf bug, commas in the first arg to
dnl AC_HELP_STRING cause problems.
dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
-dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
+dnl [build the specified loaders into gdk-pixbuf])
AC_ARG_WITH(included_loaders,
[ --with-included-loaders=LOADER1,LOADER2,...
- build the specified loaders into gdk-pixbuf (only
- used if module loading disabled)])
+ build the specified loaders into gdk-pixbuf])
if $dynworks; then
- :
+ :
else
## if the option was specified, leave it; otherwise disable included loaders
if test x$with_included_loaders = xno; then
fi
fi
-all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
+all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,xbm,tga,pcx"
included_loaders=""
# If no loaders specified, include all
if test "x$with_included_loaders" = xyes ; then
AC_MSG_ERROR([the specified loader $loader does not exist])
fi
- INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libpixbufloader-static-$loader.la"
+ INCLUDED_LOADER_OBJ="$INCLUDED_LOADER_OBJ libstatic-pixbufloader-$loader.la"
INCLUDED_LOADER_DEFINE="$INCLUDED_LOADER_DEFINE -DINCLUDE_$loader"
+ eval INCLUDE_$loader=yes
done
IFS="$gtk_save_ifs"
AC_SUBST(INCLUDED_LOADER_OBJ)
AC_SUBST(INCLUDED_LOADER_DEFINE)
+AM_CONDITIONAL(INCLUDE_PNG, [test x"$INCLUDE_png" = xyes])
+AM_CONDITIONAL(INCLUDE_BMP, [test x"$INCLUDE_bmp" = xyes])
+AM_CONDITIONAL(INCLUDE_WBMP, [test x"$INCLUDE_wbmp" = xyes])
+AM_CONDITIONAL(INCLUDE_GIF, [test x"$INCLUDE_gif" = xyes])
+AM_CONDITIONAL(INCLUDE_ICO, [test x"$INCLUDE_ico" = xyes])
+AM_CONDITIONAL(INCLUDE_ANI, [test x"$INCLUDE_ani" = xyes])
+AM_CONDITIONAL(INCLUDE_JPEG, [test x"$INCLUDE_jpeg" = xyes])
+AM_CONDITIONAL(INCLUDE_PNM, [test x"$INCLUDE_pnm" = xyes])
+AM_CONDITIONAL(INCLUDE_RAS, [test x"$INCLUDE_ras" = xyes])
+AM_CONDITIONAL(INCLUDE_TIFF, [test x"$INCLUDE_tiff" = xyes])
+AM_CONDITIONAL(INCLUDE_XPM, [test x"$INCLUDE_xpm" = xyes])
+AM_CONDITIONAL(INCLUDE_XBM, [test x"$INCLUDE_xbm" = xyes])
+AM_CONDITIONAL(INCLUDE_TGA, [test x"$INCLUDE_tga" = xyes])
+AM_CONDITIONAL(INCLUDE_PCX, [test x"$INCLUDE_pcx" = xyes])
+
AC_HEADER_SYS_WAIT
AC_TYPE_SIGNAL
if test $cross_compiling = yes; then
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
- if test x$GDK_PIXBUF_CSOURCE = xno; then
+ AC_PATH_PROG(GTK_UPDATE_ICON_CACHE, gtk-update-icon-cache, no)
+ if test x$GTK_UPDATE_ICON_CACHE = xno; then
REBUILD_PNGS=#
fi
fi
AC_MSG_ERROR([
*** gtkbuiltincache.h is not in the tree, and cannot be built
*** because you don't have libpng, or (when cross-compiling) you
-*** don't have a prebuilt gdk-pixbuf-csource on the host system.])
+*** don't have a prebuilt gtk-update-icon-cache on the build system.])
fi
AC_SUBST(REBUILD_PNGS)
#
# Check for basic X packages; we use pkg-config if available
#
- if $PKG_CONFIG --exists x11 xext; then
+ if $PKG_CONFIG --exists x11 xext xrender; then
have_base_x_pc=true
- X_PACKAGES="$X_PACKAGES x11 xext"
- x_libs="`pkg-config --libs x11 xext`"
- X_CFLAGS="`pkg-config --cflags x11 xext`"
+ X_PACKAGES="$X_PACKAGES x11 xext xrender"
+ x_libs="`$PKG_CONFIG --libs x11 xext xrender`"
+ X_CFLAGS="`$PKG_CONFIG --cflags x11 xext xrender`"
# Strip out any .la files that pkg-config might give us (this happens
# with -uninstalled.pc files)
fi
x_cflags="$X_CFLAGS"
- x_libs_for_checks="$X_LIBS -lXext -lX11 $X_EXTRA_LIBS"
+ x_libs_for_checks="$X_LIBS -lXext -lXrender -lX11 $X_EXTRA_LIBS"
GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $X_EXTRA_LIBS"
- GTK_DEP_LIBS_FOR_X="$X_LIBS -lX11 $X_EXTRA_LIBS"
+ GTK_DEP_LIBS_FOR_X="$X_LIBS -lXrender -lX11 $X_EXTRA_LIBS"
fi
# Extra libraries found during checks (-lXinerama, etc), not from pkg-config.
AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]))
AC_CHECK_FUNC(XextFindDisplay, :,
AC_MSG_ERROR([*** libXext not found. Check 'config.log' for more details.]))
+ AC_CHECK_FUNC(XRenderQueryExtension, :,
+ AC_MSG_ERROR([*** libXrender not found. Check 'config.log' for more details.]))
# Check for xReply
AC_DEFINE(HAVE_SHAPE_EXT))
# X SYNC check
+ gtk_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS $x_cflags"
AC_CHECK_FUNC(XSyncQueryExtension,
[AC_CHECK_HEADER(X11/extensions/sync.h,
AC_DEFINE(HAVE_XSYNC, 1, Have the SYNC extension library),
:, [#include <X11/Xlib.h>])])
+ CFLAGS="$gtk_save_CFLAGS"
+
# Xshm checks
if test "x$enable_shm" = "xyes"; then
AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
[AC_CHECK_HEADER(X11/extensions/Xinerama.h,
[GTK_ADD_LIB(x_extra_libs,Xinerama)
- have_xfree_xinerama=true], :
+ have_xfree_xinerama=true], :,
[#include <X11/Xlib.h>])])
fi
AC_DEFINE(HAVE_XFIXES, 1, Have the XFIXES X extension)
X_PACKAGES="$X_PACKAGES xfixes"
+ GTK_PACKAGES_FOR_X="$GTK_PACKAGES_FOR_X xfixes"
fi
if $have_base_x_pc ; then
fi
if test "x$gdktarget" = "xwin32"; then
- # We start off with the libraries from Pango
-
- if test x$have_wintab = xyes; then
- GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
- AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
- fi
-
GDK_EXTRA_LIBS="$GDK_EXTRA_LIBS -lgdi32 -user32 -limm32 -lshell32 -lole32 -Wl,-luuid"
AM_CONDITIONAL(USE_WIN32, true)
else
AM_CONDITIONAL(ENABLE_FB_MANAGER, false)
fi
+if test "x$gdktarget" = "xdirectfb"; then
+ DIRECTFB_REQUIRED_VERSION=0.9.24
+ AC_MSG_CHECKING(for DirectFB)
+
+ if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
+ AC_MSG_RESULT(found)
+ GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags cairo-directfb` $GDK_EXTRA_CFLAGS"
+ GDK_EXTRA_LIBS="`$PKG_CONFIG --libs cairo-directfb` $GDK_EXTRA_LIBS"
+ else
+ AC_MSG_ERROR([
+*** DirectFB $DIRECTFB_REQUIRED_VERSION or newer and the cairo backend
+*** are required. The latest version of DirectFB is always available
+*** from http://www.directfb.org/.
+ ])
+ fi
+
+ AM_CONDITIONAL(USE_DIRECTFB, true)
+else
+ AM_CONDITIONAL(USE_DIRECTFB, false)
+fi
+
+
# Check for Pango flags
if test "x$gdktarget" = "xwin32"; then
GTK_EXTRA_CFLAGS="$msnative_struct"
fi
+GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`"
+ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`"
+PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`"
+CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
+
AC_SUBST(GTK_PACKAGES)
AC_SUBST(GTK_EXTRA_LIBS)
AC_SUBST(GTK_EXTRA_CFLAGS)
AC_SUBST(GTK_DEP_LIBS)
AC_SUBST(GTK_DEP_CFLAGS)
+AC_SUBST(GLIB_PREFIX)
+AC_SUBST(ATK_PREFIX)
+AC_SUBST(PANGO_PREFIX)
+AC_SUBST(CAIRO_PREFIX)
AC_SUBST(GTK_DEBUG_FLAGS)
AC_SUBST(GTK_XIM_FLAGS)
+################################################################
+# Printing system checks
+################################################################
+
+AC_PATH_PROG(CUPS_CONFIG, cups-config, no)
+if test "x$CUPS_CONFIG" != "xno"; then
+ CUPS_CFLAGS=`cups-config --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'`
+ CUPS_LIBS=`cups-config --libs`
+
+ CUPS_API_VERSION=`cups-config --api-version`
+ CUPS_API_MAJOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $1}'`
+ CUPS_API_MINOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $2}'`
+
+ if test $CUPS_API_MAJOR -gt 1 -o \
+ $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then
+ AC_DEFINE(HAVE_CUPS_API_1_2)
+ fi
+
+ AC_SUBST(CUPS_API_MAJOR)
+ AC_SUBST(CUPS_API_MINOR)
+ AC_SUBST(CUPS_CFLAGS)
+ AC_SUBST(CUPS_LIBS)
+fi
+AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno")
+
+gtk_save_cppflags="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS"
+
+AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
+*** Can't find cairo-pdf.h. You must build Cairo with the pdf
+*** backend enabled.]))
+
+if test "$os_win32" != "yes"; then
+ AC_CHECK_HEADER(cairo-ps.h,,AC_MSG_ERROR([
+*** Can't find cairo-ps.h. You must build Cairo with the
+*** postscript backend enabled.]))
+fi
+
+CPPFLAGS="$gtk_save_cppflags"
+
+
################################################################
# Strip -export-dynamic from the link lines of various libraries
################################################################
#
# We are using gmodule-no-export now, but I'm leaving the stripping
# code in place for now, since pango and atk still require gmodule.
+export SED
export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
if test -n "$export_dynamic"; then
GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"`
elif test "x$gdktarget" = "xquartz" ; then
gdk_windowing='
#define GDK_WINDOWING_QUARTZ'
+elif test "x$gdktarget" = "xdirectfb" ; then
+ gdk_windowing='
+#define GDK_WINDOWING_DIRECTFB'
fi
if test x$gdk_wchar_h = xyes; then
gdk-pixbuf-2.0.pc
gdk-2.0.pc
gtk+-2.0.pc
+gtk+-unix-print-2.0.pc
gdk-pixbuf-2.0-uninstalled.pc
gdk-2.0-uninstalled.pc
gtk+-2.0-uninstalled.pc
gdk/win32/rc/gdk.rc
gdk/linux-fb/Makefile
gdk/quartz/Makefile
+gdk/directfb/Makefile
gtk/Makefile
gtk/makefile.msc
gtk/gtkversion.h
modules/engines/ms-windows/Makefile
modules/engines/ms-windows/Theme/Makefile
modules/engines/ms-windows/Theme/gtk-2.0/Makefile
+modules/printbackends/Makefile
+modules/printbackends/cups/Makefile
+modules/printbackends/lpr/Makefile
+modules/printbackends/file/Makefile
perf/Makefile
contrib/Makefile
contrib/gdk-pixbuf-xlib/Makefile