Fix multi-leg promotions
[xboard.git] / configure.ac
index 05fe00c..3306409 100644 (file)
@@ -1,7 +1,7 @@
 dnl| configure.in
 dnl|
 dnl| Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, 2007,
-dnl| 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
+dnl| 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016 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
@@ -27,8 +27,12 @@ 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],[4.8.0],[bug-xboard@gnu.org])
+dnl| define second argument as MAJOR.MINOR.PATCHLEVEL. e.g. 4.4.0
+dnl| MAJOR means large changes
+dnl| MINOR can includes new features and bug fixes
+dnl| PATCHLEVEL is used for bugfixes only
+dnl| pre-release version have a -YYYYMMDD attached, e.g 4.9.0-20160313
+AC_INIT([xboard],[4.9.0-20160402],[bug-xboard@gnu.org])
 
 dnl| need this to be able to compile some files in a subdir (filebrowser)
 AM_INIT_AUTOMAKE([subdir-objects])
@@ -124,7 +128,7 @@ AS_IF( [test "x$PKGCONFIG" = xpkgconfig_not_found],
        AC_MSG_ERROR([cannot find pkg-config! Please install it.]))
 
 dnl | check for cairo and librsvg
-PKG_CHECK_MODULES([CAIRO], [ cairo >= 1.2.0 librsvg-2.0 >= 2.14.0 ])
+PKG_CHECK_MODULES([CAIRO], [ cairo >= 1.2.0 pangocairo librsvg-2.0 >= 2.14.0 ])
 AC_SUBST(CAIRO_CFLAGS)
 AC_SUBST(CAIRO_LIBS)
 
@@ -136,19 +140,23 @@ FRONTEND_CFLAGS=""
 FRONTEND_LIBS=""
 
 AC_ARG_WITH([gtk],
-            [AS_HELP_STRING([--with-gtk],[use GTK front-end (experimental)])],
+            [AS_HELP_STRING([--with-gtk],[use GTK front-end (default)])],
             [with_GTK=$withval],
-            [with_GTK="no"])
+            [with_GTK="yes"])
 
 AC_ARG_WITH([Xaw3d],
             [AS_HELP_STRING([--with-Xaw3d],[use Xaw3d front-end (not fully supported anymore)])],
             [with_Xaw3d="$withval"],
             [with_Xaw3d="no"])
+dnl | overwrite default gtk
+AS_IF([test "x$with_Xaw3d" = xyes], [with_GTK="no"])
 
 AC_ARG_WITH([Xaw],
-            [AS_HELP_STRING([--with-Xaw],[use Xaw front-end (default)])],
+            [AS_HELP_STRING([--with-Xaw],[use Xaw front-end])],
             [with_Xaw="$withval"],
-            [with_Xaw="yes"])
+            [with_Xaw="no"])
+dnl | overwrite default gtk
+AS_IF([test "x$with_Xaw" = xyes], [with_GTK="no"])
 
 AC_ARG_WITH([iconsdir],
             [AS_HELP_STRING([--with-iconsdir=DIR],
@@ -180,6 +188,44 @@ AC_ARG_WITH([gamedatadir],
             [GAMEDATADIR="$withval"],
             [GAMEDATADIR='$(datadir)/games/xboard'])
 
+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"])
+
+AC_ARG_ENABLE([osxapp],
+             [AS_HELP_STRING([--enable-osxapp],[build a OSX app [default=no]])],
+              [enable_OSXAPP=$enableval],
+              [enable_OSXAPP="no"])
+
+AS_IF([test x"$enable_OSXAPP" = x"yes"], [
+     prefix=`pwd`/XBoard.app/Contents
+     AC_DEFINE([OSXAPP], [1], [We are building an OSX APP, redefine some functions])
+     with_GTK="yes"
+     enable_mimedb="no"
+     datarootdir='$(prefix)/Resources'
+     datadir='$(datarootdir)/share'
+     sysconfdir='$(datarootdir)/etc'
+     infodir='$(datadir)/info'
+     mandir='$(datadir)/man'
+     bindir='$(prefix)/MacOS'
+     localedir='$(datadir)/locale'
+     GAMEDATADIR='$(datadir)/xboard'],[])
+
+AM_CONDITIONAL(OSX_APP, test x"$enable_OSXAPP" = x"yes")
+
+AM_CONDITIONAL(NLS_ENABLED, test x"$USE_NLS" = x"yes")
+
+AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x"$enable_mimedb" = x"yes")
+if test x"$enable_mimedb" = x"yes"; 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
+
 AC_SUBST(ICONSDIR)
 AC_SUBST(SVGICONSDIR)
 AC_SUBST(DESKTOPDIR)
@@ -429,21 +475,20 @@ dnl| USE_PTYS=1
 dnl| add some libs for OS X
   *-apple-* )
     AC_MSG_WARN([Apple support is experimental, please report any problems to bug-xboard@gnu.org])
+    AC_MSG_WARN([use --enable-osxapp to enable the build target and automatically adjust target directories])
+    AC_MSG_WARN([Building an OSX app currently relies on some programs such as dylib that we don't test for])
+    AC_MSG_WARN([patches welcome ;)])
     AC_PATH_PROG(SW_VERS, sw_vers)
     if test "x$SW_VERS" != "x"; then
       AC_MSG_CHECKING(Mac OS X version)
       MACOSX_VERSION=`$SW_VERS -productVersion`
       AC_MSG_RESULT([$MACOSX_VERSION])
     fi
-    case "$MACOSX_VERSION" in
-      10.0*|10.1|10.1.*|10.2*|10.3*|10.4*|10.5*|10.6*)
-      FRONTEND_LIBS="$FRONTEND_LIBS -lgtkmacintegration -headerpad_max_install_names mmacosx-version-min=10.6 -isysroot /Developer/SDKs/MacOSX10.6.sdk"
-        ;;
-      *)
-      FRONTEND_LIBS="$FRONTEND_LIBS -lgtkmacintegration -headerpad_max_install_names"
-        ;;
-    esac
-
+    FRONTEND_LIBS="$FRONTEND_LIBS -headerpad_max_install_names "
+    if test x"$enable_OSXAPP" = x"yes" ; then
+        FRONTEND_LIBS="$FRONTEND_LIBS -lgtkmacintegration-gtk2"
+    fi
+    FRONTEND_CFLAGS="$FRONTEND_CFLAGS -I/opt/local/include -L/opt/local/lib"
   ;;
 esac
 
@@ -484,7 +529,7 @@ AC_ARG_ENABLE( [zippy],
               [],
               [enable_zippy="no"])
 
-if test x"$enable_zippy" != xno; then
+if test x"$enable_zippy" != x"no"; then
   AC_DEFINE(ZIPPY, 1,[should zippy be enabled])
 else
   AC_DEFINE(ZIPPY, 0,[should zippy be enabled])
@@ -511,36 +556,19 @@ AC_SUBST(X_CFLAGS)
 AC_SUBST(X_LIBS)
 fi
 
-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 create a string with configure options that can be passed to the
 dnl program, good for bug reports and version printout, see output below
 CONFIGURE_OPTIONS="prefix=$prefix; datarootdir=$datarootdir; \
 datadir=$datadir; gamedatadir=$GAMEDATADIR; desktopdir=$DESKTOPDIR; \
 mimedir=$MIMEDIR; iconsdir=$ICONSDIR; svgiconsdir=$SVGICONSDIR; infodir=$infodir; \
 sysconfigdir=$sysconfigdir; update_mimedb=$enable_mimedb; NLS=$USE_NLS; \
-GKT=$with_GTK; Xaw3d=$with_Xaw3d; Xaw=$with_Xaw; \
+GTK=$with_GTK; Xaw3d=$with_Xaw3d; Xaw=$with_Xaw; \
 ptys=$enable_ptys; zippy=$enable_zippy; sigint=$enable_sigint"
 
 AC_SUBST(CONFIGURE_OPTIONS)
 
 dnl |  output Makefile
-AC_CONFIG_FILES([Makefile cmail po/Makefile.in])
+AC_CONFIG_FILES([Makefile cmail po/Makefile.in osxapp/Info.plist])
 AC_CONFIG_COMMANDS([test-stamp-h],[test -z "$CONFIG_HEADERS" || date > stamp-h])
 AC_CONFIG_COMMANDS([chmod-cmail],[chmod 755 cmail])
 AC_OUTPUT