Fix rsvg version in configure.ac
[xboard.git] / configure.ac
index 67679e9..2cd59b5 100644 (file)
@@ -1,21 +1,21 @@
 dnl| configure.in
 dnl|
-dnl| Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, 2007, 
-dnl| 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+dnl| Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, 2007,
+dnl| 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 dnl|
 dnl| GNU XBoard is free software: you can redistribute it and/or modify
 dnl| it under the terms of the GNU General Public License as published by
 dnl| the Free Software Foundation, either version 3 of the License, or (at
 dnl| your option) any later version.
-dnl| 
+dnl|
 dnl| GNU XBoard is distributed in the hope that it will be useful, but
 dnl| WITHOUT ANY WARRANTY; without even the implied warranty of
 dnl| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 dnl| General Public License for more details.
-dnl| 
+dnl|
 dnl| You should have received a copy of the GNU General Public License
-dnl| along with this program. If not, see http://www.gnu.org/licenses/.  
-dnl| 
+dnl| along with this program. If not, see http://www.gnu.org/licenses/.
+dnl|
 dnl| --------------------------------------------------------------------
 dnl|
 dnl| You can process this file with autoconf to produce a configure script.
@@ -23,12 +23,12 @@ dnl| However, normally the supplied configure script will work fine.
 dnl|
 dnl| If you do need to change the configure script, instead of editing
 dnl| it directly, try to edit configure.in (in a way that will keep
-dnl| it portable to sites and systems other than your own), and run autoconf 
+dnl| it portable to sites and systems other than your own), and run autoconf
 dnl| to regenerate configure.  Then submit your changes to be folded into
 dnl| the standard version of xboard.
 
 dnl| define second argument as VERSION.PATCHLEVEL. e.g. 4.4.0j
-AC_INIT([xboard],[master-20110411],[bug-xboard@gnu.org])
+AC_INIT([xboard],[master-20120930],[bug-xboard@gnu.org])
 
 dnl| need this to be able to compile some files in a subdir (filebrowser)
 AM_INIT_AUTOMAKE([subdir-objects])
@@ -69,14 +69,14 @@ fi
 AC_PROG_CC
 
 dnl| need this to be able to compile files in a subdir
-AM_PROG_CC_C_O 
+AM_PROG_CC_C_O
 
 AC_PROG_CPP
 AC_ISC_POSIX
 AC_PROG_INSTALL
 
 dnl| add gettext support
-AM_GNU_GETTEXT_VERSION(0.18.1)
+AM_GNU_GETTEXT_VERSION(0.17)
 AM_GNU_GETTEXT([external])
 
 AC_CHECK_PROGS(RSH, remsh rsh, rsh)
@@ -110,6 +110,15 @@ AC_CHECK_FUNC(setlocale, [],
 
 AC_CHECK_LIB(seq, getpseudotty)
 
+dnl | add compiler warnings only if compiler understands them
+AC_MSG_CHECKING(whether compiler understands -Wall -Wno-parentheses)
+SAVE_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -Wall -Wno-parentheses"
+AC_TRY_COMPILE([],[],
+  AC_MSG_RESULT(yes),
+  AC_MSG_RESULT(no)
+  CFLAGS="$SAVE_CFLAGS")
+
 
 dnl | check for X-libraries
 AC_PATH_XTRA
@@ -120,7 +129,13 @@ if test -n "$no_x" ; then
   exit 1
 fi
 
+save_cflags="$CFLAGS"
+save_cppflags="$CPPFLAGS"
+CFLAGS="$CFLAGS $X_CFLAGS"
+CPPFLAGS="$CPPFLAGS $X_CFLAGS"
 AC_CHECK_HEADER(X11/Intrinsic.h,xt="yes",xt="no")
+CFLAGS="$save_cflags"
+CPPFLAGS="$save_cppflags"
 
 if test "$xt" = "no" ; then
    echo Xt headers not found
@@ -138,7 +153,7 @@ AC_ARG_WITH([Xaw3d],
 dnl | check availability of Xaw3d
 XAW_LIBS=
 AS_IF([test x"$with_Xaw3d" != x"no"],
-      [AC_CHECK_LIB([Xaw3d], 
+      [AC_CHECK_LIB([Xaw3d],
                     [XawTextReplace],
                     [AC_SUBST([XAW_LIBS],["-lXaw3d"])
                      AC_DEFINE([USE_XAW3D], [1],
@@ -147,7 +162,13 @@ AS_IF([test x"$with_Xaw3d" != x"no"],
                               [-lXaw])])
 dnl | no Xaw3d, check for Xaw
 if test x"$with_Xaw3d" = x"no" ; then
+   save_cflags="$CFLAGS"
+   save_cppflags="$CPPFLAGS"
+   CFLAGS="$CFLAGS $X_CFLAGS"
+   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
    AC_CHECK_HEADER(X11/Xaw/Dialog.h,xaw_headers="yes", xaw_headers="no")
+   CFLAGS="$save_cflags"
+   CPPFLAGS="$save_cppflags"
    if test x"$xaw_headers" = x"no" ; then
       AC_MSG_ERROR([Xaw headers not found. Please install the Xaw package and headers.])
    fi
@@ -157,6 +178,14 @@ AC_SUBST(XAW_LIBS)
 
 dnl | end Xaw/Xaw3d test
 
+dnl | check for cairo and librsvg
+CAIRO_REQUIRED=1.2.0
+LIBRSVG_REQUIRED=2.14.0
+
+
+PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_REQUIRED librsvg-2.0 >= $LIBRSVG_REQUIRED)
+AC_SUBST(CAIRO_CFLAGS)
+AC_SUBST(CAIRO_LIBS)
 
 AC_CANONICAL_HOST
 
@@ -193,7 +222,7 @@ dnl| know whether the X header files on HP-UX require it.
     fi
 
 dnl| HP doesn't supply a full set of X header files and libraries.  People
-dnl| often have some things installed in one place and some in another. 
+dnl| often have some things installed in one place and some in another.
 dnl| AC_PATH_XTRA will find only one place, so we try to add all the
 dnl| likely ones that might be missing here.  It might be better to
 dnl| change AC_PATH_XTRA to try to extract this information from imake,
@@ -309,7 +338,7 @@ dnl| code above.
     AC_DEFINE(PTY_TTY_NAME_SPRINTF, [sprintf (pty_name, "/dev/ttyp%d", i);])
 dnl| USE_PTYS=1
   ;;
-       
+
   *-*-dynix* | *-*-ptx* )
 dnl| USE_PTYS=1
   ;;
@@ -344,10 +373,12 @@ AC_ARG_ENABLE(    [xpm],
 
 if test x"$enable_xpm" != "xno"; then
   save_cflags="$CFLAGS"
+  save_cppflags="$CPPFLAGS"
   CFLAGS="$CFLAGS $X_CFLAGS"
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   AC_CHECK_HEADERS(X11/xpm.h)
   CFLAGS="$save_cflags"
+  CPPFLAGS="$save_cppflags"
   if test "$ac_cv_header_X11_xpm_h" = "yes"; then
     save_ldflags="$LDFLAGS"
     LDFLAGS="$LDFLAGS $X_LIBS"
@@ -364,7 +395,7 @@ AC_SUBST(CONF_CFLAGS)
 AC_SUBST(CONF_LDFLAGS)
 
 AC_MSG_CHECKING(whether ptys or pipes should be used)
-AC_ARG_ENABLE( [ptys], 
+AC_ARG_ENABLE( [ptys],
               [AS_HELP_STRING([--enable-ptys],[force use of pseudo-ttys with child processes])],
 [if test "$enableval" = yes; then
   USE_PTYS=1
@@ -388,9 +419,9 @@ AC_DEFINE_UNQUOTED(USE_PTYS, $USE_PTYS)
 
 dnl | define not to build zippy as a default, so that autoheader is happy
 AC_DEFINE(ZIPPY, 0,[should zippy be enabled])
-AC_ARG_ENABLE( [zippy], 
+AC_ARG_ENABLE( [zippy],
               [AS_HELP_STRING([--enable-zippy],[support interfacing a chess program to ICS (default)])],
-              [], 
+              [],
               [enable_zippy="yes"])
 
 if test x"$enable_zippy" != xno; then
@@ -399,7 +430,7 @@ fi
 AM_CONDITIONAL([ZIPPY], [test x$enable_zippy != xno])
 
 
-AC_ARG_ENABLE(sigint, 
+AC_ARG_ENABLE(sigint,
 [AS_HELP_STRING([--enable-sigint],[sending SIGINT (^C) wakes up GNU Chess (default)])],
 [if test "$enableval" = yes; then
   AC_DEFINE(ATTENTION, 1)
@@ -412,11 +443,28 @@ AC_DEFINE(ATTENTION, 1)])
 
 dnl | save all information for X in X_LIBS, also add the libraries themself
 dnl | since AC_PATH_XTRA only adds the paths
-X_LIBS="$X_PRE_LIBS $X_LIBS $X_EXTRA_LIBS -lXmu -lX11 -lXt "    
+X_LIBS="$X_PRE_LIBS $X_LIBS $X_EXTRA_LIBS -lXmu -lX11 -lXt "
 AC_SUBST(X_CFLAGS)
 AC_SUBST(X_LIBS)
 
+dnl | should we install desktop icons and mime associations?
+AC_ARG_ENABLE( [update-mimedb],
+               [AS_HELP_STRING([--disable-update-mimedb],[disable the update-mime-database after install [default=no]])],
+               [enable_mimedb="no"],
+               [enable_mimedb="yes"])
+
+AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x"$enable_mimedb" = "xyes")
+
+if test x"$enable_mimedb" = "xyes"; then
+   AC_PATH_PROG([XDG_MIME],[xdg-mime])
+   AC_SUBST(XDG_MIME)
+   AC_PATH_PROG([XDG_DESKTOP_MENU],[xdg-desktop-menu])
+   AC_SUBST(XDG_DESKTOP_MENU)
+   AC_PATH_PROG([XDG_ICON_RESOURCE],[xdg-icon-resource])
+   AC_SUBST(XDG_ICON_RESOURCE)
+fi
 
+dnl |  output Makefile
 AC_CONFIG_FILES([Makefile cmail po/Makefile.in])
 AC_CONFIG_COMMANDS([test-stamp-h],[test -z "$CONFIG_HEADERS" || date > stamp-h])
 AC_CONFIG_COMMANDS([chmod-cmail],[chmod 755 cmail])
@@ -435,6 +483,8 @@ echo "                                    (bitmaps will go in \$datadir/games/xb
 echo "        infodir:         $infodir   (info files will go here)"
 echo "        sysconfdir:      $sysconfdir   (xboard.conf will go here)"
 echo ""
+echo "        update mimedb:   $enable_mimedb"
+echo ""
 echo "        NLS support:     $USE_NLS"
 echo ""
 echo "        Xaw3d:           $with_Xaw3d"