]> Pileus Git - ~andy/gtk/blobdiff - configure.in
Updated Thai translation.
[~andy/gtk] / configure.in
index 2acde5e95f5a99a89f78873e88cc4895776bbf35..45625579f0ea9f65ce1c9762cafc87c359f16468 100644 (file)
@@ -11,7 +11,7 @@ AC_PREREQ(2.54)
 # set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
 
 m4_define([gtk_major_version], [2])
-m4_define([gtk_minor_version], [13])
+m4_define([gtk_minor_version], [17])
 m4_define([gtk_micro_version], [6])
 m4_define([gtk_interface_age], [0])
 m4_define([gtk_binary_age],
@@ -31,7 +31,7 @@ m4_define([gtk_api_version], [2.0])
 m4_define([gtk_binary_version], [2.10.0])
 
 # required versions of other packages
-m4_define([glib_required_version], [2.17.5])
+m4_define([glib_required_version], [2.21.3])
 m4_define([pango_required_version], [1.20])
 m4_define([atk_required_version], [1.13.0])
 m4_define([cairo_required_version], [1.6])
@@ -184,6 +184,9 @@ fi
 
 AC_LIBTOOL_WIN32_DLL
 AM_PROG_LIBTOOL
+dnl when using libtool 2.x create libtool early, because it's used in configure
+m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
+
 
 # Make sure we use 64-bit versions of various file stuff.
 AC_SYS_LARGEFILE
@@ -323,7 +326,7 @@ if test "x$GCC" = "xyes"; then
 fi
 changequote([,])dnl
 
-CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DPANGO_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
+CPPFLAGS="$CPPFLAGS -DG_DISABLE_SINGLE_INCLUDES -DATK_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES"
 
 # Ensure MSVC-compatible struct packing convention is used when
 # compiling for Win32 with gcc.
@@ -375,6 +378,19 @@ PKG_CHECK_MODULES(BASE_DEPENDENCIES,
    pango >= pango_required_version dnl
    cairo >= cairo_required_version])
 
+## In addition to checking that cairo is present, we also need to
+## check that the correct cairo backend is there. E.g. if the GDK
+## target is win32 we need the cairo-win32 backend and so on.
+cairo_backend=$gdktarget
+
+# GDK calls the xlib backend "x11," cairo calls it "xlib." Other
+# backend names are identical.
+if test "x$cairo_backend" = "xx11"; then
+   cairo_backend=xlib
+fi
+PKG_CHECK_MODULES(CAIRO_BACKEND,
+  [cairo-$cairo_backend >= cairo_required_version])
+
 if test "$os_win32" != yes; then
     # libtool option to control which symbols are exported
     # right now, symbols starting with _ are not exported
@@ -398,7 +414,7 @@ AC_MSG_CHECKING([Whether to write dependencies into .pc files])
 case $enable_explicit_deps in
   auto)
     export SED
-    deplibs_check_method=`(./libtool --config; echo 'eval echo $deplibs_check_method') | sh`
+    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
@@ -501,6 +517,26 @@ AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
         sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
       esac])
 
+dnl Snippet below is copied from AM_GLIB_GNU_GETTEXT to generate a first
+dnl po-properties/POTFILES during configure; see GNOME #573515.
+dnl
+dnl Generate list of files to be processed by xgettext which will
+dnl be included in po-properties/Makefile.
+test -d po-properties || mkdir po-properties
+if test "x$srcdir" != "x."; then
+  if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
+    popropsrcprefix="$srcdir/"
+  else
+    popropsrcprefix="../$srcdir/"
+  fi
+else
+  popropsrcprefix="../"
+fi
+rm -f po-properties/POTFILES
+sed -e "/^#/d" -e "/^\$/d" -e "s,.*,   $popropsrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
+< $srcdir/po-properties/POTFILES.in > po-properties/POTFILES
+dnl (End of adapted AM_GLIB_GNU_GETTEXT snippet.)
+
 AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
 
 dnl The DU4 header files don't provide library prototypes unless 
@@ -583,6 +619,8 @@ if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; th
   CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
 fi
 
+CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
+
 
 dnl
 dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in.
@@ -787,12 +825,13 @@ AC_ARG_WITH(libtiff,
             [AC_HELP_STRING([--without-libtiff],
                             [disable TIFF loader for gdk-pixbuf])])
 AC_ARG_WITH(libjasper,
-            [AC_HELP_STRING([--without-libjasper],
-                            [disable JPEG2000 loader for gdk-pixbuf])])
+            [AC_HELP_STRING([--with-libjasper],
+                            [enable JPEG2000 loader for gdk-pixbuf])])
 
 AC_ARG_ENABLE(gdiplus,
-            [AC_HELP_STRING([--disable-gdiplus-loaders],
-                            [disable GDI+ loaders for gdk-pixbuf])])
+            [AC_HELP_STRING([--enable-gdiplus],
+                            [enble GDI+ loaders for gdk-pixbuf (currently known to be broken)])],,
+           [enable_gdiplus=no])
 
 AM_CONDITIONAL(BUILD_GDIPLUS_LOADERS, [ test x$os_win32 = xyes && test x$enable_gdiplus != xno ])
 
@@ -902,11 +941,11 @@ dnl Test for libpng
   fi
 
 dnl Test for libjasper
-  if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
+  if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
     AC_CHECK_LIB(jasper, jas_init, LIBJASPER=-ljasper, [], -ljpeg)
   fi
 
-  if test x$with_libjasper != xno && test -z "$LIBJASPER"; then
+  if test x$with_libjasper = xyes && test -z "$LIBJASPER"; then
      AC_MSG_ERROR([
 *** Checks for JPEG2000 loader failed. You can build without it by passing 
 *** --without-libjasper to configure])
@@ -1052,7 +1091,7 @@ if test x$gio_can_sniff = x; then
     char *content_type;
     char *image_png;
     content_type = g_content_type_guess (NULL, data, data_size, NULL);  
-    image_png = g_content_type_for_mime_type ("image/png");
+    image_png = g_content_type_from_mime_type ("image/png");
     return !!strcmp (content_type, image_png);
   }]])],
     [gio_can_sniff=yes
@@ -1158,8 +1197,11 @@ if $dynworks ; then
   if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
     STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
   fi
+  if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
+    STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
+  fi
 else
-  STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
+  STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
 fi
 
 # Checks to see whether we should include mediaLib
@@ -1396,9 +1438,8 @@ if test "x$gdktarget" = "xx11"; then
 
   # Check for shaped window extension
 
-  AC_CHECK_FUNC(XShapeCombineMask,
-      AC_DEFINE(HAVE_SHAPE_EXT, 1,
-                [Define to 1 if the XShape extension is available]))
+  AC_CHECK_FUNC(XShapeCombineMask, :,
+     [AC_MSG_ERROR([Shape extension not found, check your development headers])])
 
   # X SYNC check
   gtk_save_CFLAGS="$CFLAGS"
@@ -1464,54 +1505,55 @@ if test "x$gdktarget" = "xx11"; then
     gtk_save_cppflags="$CPPFLAGS"
     CPPFLAGS="$CPPFLAGS $x_cflags"
   
-    case "$host" in
-      *-*-solaris*)
-          # Check for solaris
-         AC_MSG_CHECKING(for Xinerama support on Solaris)
+    # Check for XFree
+    AC_MSG_CHECKING(for Xinerama support on XFree86)
          
-         have_solaris_xinerama=false
-         AC_CHECK_FUNC(XineramaGetInfo,
-             [AC_CHECK_HEADER(X11/extensions/xinerama.h,
-                 [have_solaris_xinerama=true], :,
-                 [#include <X11/Xlib.h>])])
-               
-          if $have_solaris_xinerama ; then
-            AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
-                      [Define to 1 if solaris xinerama is available])
-           AC_DEFINE(HAVE_XINERAMA, 1,
-                      [Define to 1 if xinerama is available])
-            AC_MSG_RESULT(yes)
-          else
-            AC_MSG_RESULT(no)
-          fi
-          ;;
-      *)
-         # Check for XFree
-          AC_MSG_CHECKING(for Xinerama support on XFree86)
+    have_xfree_xinerama=false
+    if $PKG_CONFIG --exists xinerama ; then
+       have_xfree_xinerama=true
+       X_PACKAGES="$X_PACKAGES xinerama"
+    else    
+       AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
+          [AC_CHECK_HEADER(X11/extensions/Xinerama.h, 
+          [GTK_ADD_LIB(x_extra_libs,Xinerama)
+          have_xfree_xinerama=true], :,
+           [#include <X11/Xlib.h>])])
+    fi
+
+    if $have_xfree_xinerama ; then
+      AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
+                [Define to 1 if XFree Xinerama is available])
+      AC_DEFINE(HAVE_XINERAMA, 1,
+                [Define to 1 is Xinerama is available])
+      AC_MSG_RESULT(yes)
+    else
+      AC_MSG_RESULT(no)
+
+      case "$host" in
+        *-*-solaris*)
+            # Check for solaris
+           AC_MSG_CHECKING(for Xinerama support on Solaris)
          
-          have_xfree_xinerama=false
-          if $PKG_CONFIG --exists xinerama ; then
-             have_xfree_xinerama=true
-             X_PACKAGES="$X_PACKAGES xinerama"
-          else    
-             AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
-                 [AC_CHECK_HEADER(X11/extensions/Xinerama.h, 
-                     [GTK_ADD_LIB(x_extra_libs,Xinerama)
-                     have_xfree_xinerama=true], :,
-                      [#include <X11/Xlib.h>])])
-          fi
-
-          if $have_xfree_xinerama ; then
-            AC_DEFINE(HAVE_XFREE_XINERAMA, 1,
-                      [Define to 1 if XFree Xinerama is available])
-           AC_DEFINE(HAVE_XINERAMA, 1,
-                      [Define to 1 is Xinerama is available])
-            AC_MSG_RESULT(yes)
-         else
-            AC_MSG_RESULT(no)
-         fi
-         ;;
-    esac
+           have_solaris_xinerama=false
+           AC_CHECK_FUNC(XineramaGetInfo,
+               [AC_CHECK_HEADER(X11/extensions/xinerama.h,
+                   [have_solaris_xinerama=true], :,
+                   [#include <X11/Xlib.h>])])
+               
+            if $have_solaris_xinerama ; then
+              AC_DEFINE(HAVE_SOLARIS_XINERAMA, 1,
+                        [Define to 1 if solaris xinerama is available])
+             AC_DEFINE(HAVE_XINERAMA, 1,
+                        [Define to 1 if xinerama is available])
+              AC_MSG_RESULT(yes)
+            else
+              AC_MSG_RESULT(no)
+            fi
+            ;;
+        *)
+            ;;
+      esac
+    fi
   fi
   
   # set up things for XInput
@@ -1533,7 +1575,7 @@ if test "x$gdktarget" = "xx11"; then
   AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree || test x$with_xinput = xyes)
 
   # Check for the RANDR extension
-  if $PKG_CONFIG --exists "xrandr >= 1.2" ; then
+  if $PKG_CONFIG --exists "xrandr >= 1.2.99" ; then
      AC_DEFINE(HAVE_RANDR, 1, [Have the Xrandr extension library])
 
      X_PACKAGES="$X_PACKAGES xrandr"
@@ -1614,21 +1656,10 @@ AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
 AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
 
 if test "x$gdktarget" = "xdirectfb"; then
-  DIRECTFB_REQUIRED_VERSION=0.9.24
+  DIRECTFB_REQUIRED_VERSION=1.0.0
   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
-
+  PKG_CHECK_MODULES(DIRECTFB, [directfb >= $DIRECTFB_REQUIRED_VERSION])
   AM_CONDITIONAL(USE_DIRECTFB, true)
 else
   AM_CONDITIONAL(USE_DIRECTFB, false)
@@ -1672,13 +1703,9 @@ fi
 CFLAGS="$saved_cflags"
 LDFLAGS="$saved_ldflags"
 
-GDK_PACKAGES="$PANGO_PACKAGES gio-2.0"
-if test "x$gdktarget" = "xx11"; then
-  GDK_PACKAGES="$GDK_PACKAGES $X_PACKAGES"
-fi
+GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 $X_PACKAGES cairo-$cairo_backend"
 GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
 GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags  gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
-
 #
 # If we aren't writing explicit dependencies, then don't put the extra libraries we need
 # into the pkg-config files
@@ -1851,6 +1878,28 @@ else
   AM_CONDITIONAL(HAVE_CUPS, false)
 fi
 
+# Checks to see if we should compile with PAPI backend for GTK+
+#
+
+AC_ARG_ENABLE(papi,
+              [AC_HELP_STRING([--disable-papi]
+                              [disable papi print backend])],,
+             [enable_papi=auto])
+
+if test "x$enable_papi" = "xauto"
+then
+  AC_MSG_CHECKING(libpapi)
+  AC_CHECK_LIB(papi, papiServiceCreate, have_papi=yes, have_papi=no)
+  if test $have_papi = yes; then
+    AC_DEFINE([HAVE_PAPI], [], [Define to 1 if libpapi available])
+  fi
+  AM_CONDITIONAL(HAVE_PAPI, test $have_papi = yes)
+else
+  AM_CONDITIONAL(HAVE_PAPI, false)
+fi
+
+AM_CONDITIONAL(HAVE_PAPI_CUPS, test $have_papi = yes && test "x$CUPS_CONFIG" != "xno")
+
 gtk_save_cppflags="$CPPFLAGS"
 CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS"
                          
@@ -1901,7 +1950,7 @@ fi
 # Checks for gtk-doc and docbook-tools
 ##################################################
 
-GTK_DOC_CHECK([1.8])
+GTK_DOC_CHECK([1.11])
 
 AC_CHECK_PROG(DB2HTML, db2html, true, false)
 AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
@@ -1987,9 +2036,7 @@ if test "x$gdktarget" = "xx11" ; then
 #define GDK_WINDOWING_X11'
 elif test "x$gdktarget" = "xwin32" ; then
   gdk_windowing='
-#ifdef _WIN64
-#  define GDK_NATIVE_WINDOW_POINTER
-#endif
+#define GDK_NATIVE_WINDOW_POINTER
 
 #define GDK_WINDOWING_WIN32'
 elif test "x$gdktarget" = "xquartz" ; then
@@ -2081,6 +2128,7 @@ modules/printbackends/Makefile
 modules/printbackends/cups/Makefile
 modules/printbackends/lpr/Makefile
 modules/printbackends/file/Makefile
+modules/printbackends/papi/Makefile
 modules/printbackends/test/Makefile
 perf/Makefile
 contrib/Makefile