Fix multi-leg promotions
[xboard.git] / configure.ac
index 80d106b..3306409 100644 (file)
-dnl| configure.in\r
-dnl|\r
-dnl| You can process this file with autoconf to produce a configure script.\r
-dnl| However, normally the supplied configure script will work fine.\r
-dnl|\r
-dnl| If you do need to change the configure script, instead of editing\r
-dnl| it directly, try to edit configure.in (in a way that will keep\r
-dnl| it portable to sites and systems other than your own), and run autoconf \r
-dnl| to regenerate configure.  Then submit your changes to be folded into\r
-dnl| the standard version of xboard.\r
-\r
-dnl| need to change these here and in AC_INIT\r
-PRODUCT=xboard\r
-VERSION=4.4  \r
-PATCHLEVEL=0e\r
-\r
-AC_INIT([xboard],[4.4.0e],[bug-xboard@gnu.org])\r
-AM_INIT_AUTOMAKE\r
-\r
-AC_CONFIG_HEADERS([config.h])\r
-\r
-dnl | a bunch of templates for defines used below\r
-AH_TEMPLATE([FIRST_PTY_LETTER],[template])\r
-AH_TEMPLATE([HAVE_FCNTL_H],[template])\r
-AH_TEMPLATE([HAVE_GETHOSTNAME],[template])\r
-AH_TEMPLATE([HAVE_GETTIMEOFDAY],[template])\r
-AH_TEMPLATE([HAVE_RANDOM],[template])\r
-AH_TEMPLATE([HAVE_SYS_SOCKET_H],[template])\r
-AH_TEMPLATE([IBMRTAIX],[template])\r
-AH_TEMPLATE([LAST_PTY_LETTER],[template])\r
-AH_TEMPLATE([PATCHLEVEL],[template])\r
-AH_TEMPLATE([PRODUCT],[template])\r
-AH_TEMPLATE([PTY_ITERATION],[template])\r
-AH_TEMPLATE([PTY_NAME_SPRINTF],[template])\r
-AH_TEMPLATE([PTY_OPEN],[template])\r
-AH_TEMPLATE([PTY_TTY_NAME_SPRINTF],[template])\r
-AH_TEMPLATE([REMOTE_SHELL],[template])\r
-AH_TEMPLATE([RTU],[template])\r
-AH_TEMPLATE([UNIPLUS],[template])\r
-AH_TEMPLATE([USE_PTYS],[template])\r
-AH_TEMPLATE([VERSION],[template])\r
-AH_TEMPLATE([X_WCHAR],[template])\r
-AH_TEMPLATE([ATTENTION],[template])\r
-AH_TEMPLATE([DEFINED_SYS_ERRLIST],[template])\r
-AH_TEMPLATE([HAVE_LIBXPM],[template])\r
-AH_TEMPLATE([USE_XAW3D],[template])\r
-AH_TEMPLATE([X_LOCALE],[template])\r
-\r
-\r
-\r
-if test -z "$CFLAGS" ; then\r
-dnl| Prevent the next macro from setting CFLAGS to -g\r
-  CFLAGS=" "\r
-fi\r
-AC_PROG_CC\r
-AC_PROG_CPP\r
-AC_ISC_POSIX\r
-AC_PROG_INSTALL\r
-\r
-AC_PROG_LEX\r
-if test "$LEX" != flex; then\r
-  LEX="$SHELL $missing_dir/missing flex"\r
-  AC_SUBST([LEX_OUTPUT_ROOT], [lex.yy])\r
-  AC_SUBST([LEXLIB], [''])\r
-fi\r
-\r
-\r
-AC_CHECK_PROGS(RSH, remsh rsh, rsh)\r
-AC_CHECK_PROGS(MINFO, makeinfo, makeinfo_not_found)\r
-if test "$MINFO" == makeinfo_not_found ; then\r
-   echo Please install \"makeinfo\"\r
-   exit 1\r
-fi\r
-AC_DEFINE_UNQUOTED(REMOTE_SHELL, "$RSH")\r
-AC_CHECK_PROG(NROFF, nroff, [nroff -man], cat)\r
-AC_SUBST(NROFFFLAGS)\r
-AC_PATH_PROGS(AWKPATH, awk mawk gawk nawk)\r
-AC_PATH_PROGS(PERLPATH, perl)\r
-\r
-AC_HEADER_STDC\r
-AC_HEADER_TIME\r
-AC_HEADER_SYS_WAIT\r
-AC_HEADER_DIRENT\r
-AC_TYPE_SIGNAL\r
-AC_CHECK_HEADERS(stropts.h sys/time.h string.h unistd.h sys/systeminfo.h)\r
-AC_CHECK_HEADERS(fcntl.h sys/fcntl.h, break)\r
-AC_CHECK_HEADERS(sys/socket.h lan/socket.h, break)\r
-AC_CHECK_HEADER(stddef.h, [], AC_DEFINE(X_WCHAR, 1))\r
-\r
-AC_CHECK_FUNCS(_getpty grantpt setitimer usleep)\r
-AC_CHECK_FUNCS(gettimeofday ftime, break)\r
-AC_CHECK_FUNCS(random rand48, break)\r
-AC_CHECK_FUNCS(gethostname sysinfo, break)\r
-AC_CHECK_FUNC(setlocale, [],\r
-  AC_CHECK_LIB(i, setlocale, [], AC_DEFINE(X_LOCALE, 1)))\r
-\r
-AC_CHECK_LIB(seq, getpseudotty)\r
-\r
-AC_PATH_XTRA\r
-if test -n "$no_x" ; then\r
-  echo $PRODUCT requires the X Window System header files and libraries!\r
-  echo They were not found on your system.  See FAQ topic C.2.\r
-  echo configure failed\r
-  exit 1\r
-fi\r
-\r
-AC_CHECK_HEADER(X11/Intrinsic.h,xt="yes",xt="no")\r
-\r
-if test "$xt" == "no" ; then\r
-   echo Xt headers not found\r
-   exit 1\r
-fi\r
-\r
-AC_ARG_WITH(Xaw3d, [  --with-Xaw3d            use Xaw3d instead of Xaw],\r
-  with_xaw3d="yes", with_xaw3d="no")\r
-\r
-\r
-xaw_headers="no"\r
-if test "$with_xaw3d" == "yes" ; then\r
-   XAW_LIBS="-lXaw3d"\r
-   AC_CHECK_LIB([Xaw3d], [XawTextReplace], xaw3d_lib="yes", xaw3d_lib="no")\r
-   if test "$xaw3d_lib" == "no" ; then\r
-      echo Xaw3d libraries not found\r
-      exit 1\r
-   else\r
-      AC_CHECK_HEADER(X11/Xaw3d/Dialog.h,xaw3d_headers="yes",xaw3d_headers="no")       \r
-      if test "$xaw3d_headers" == "yes" ; then\r
-        AC_DEFINE(USE_XAW3D)\r
-        xaw_headers="yes"\r
-      else\r
-       AC_CHECK_HEADER(X11/Xaw/Dialog.h,xaw_headers="yes")     \r
-      fi\r
-   fi\r
-else\r
-   XAW_LIBS="-lXaw"\r
-   AC_CHECK_HEADER(X11/Xaw/Dialog.h,xaw_headers="yes")\r
-fi\r
-\r
-AC_SUBST(XAW_LIBS)\r
-\r
-\r
-\r
-if test "$xaw_headers" == "no" ; then\r
-   echo Xaw headers not found \r
-   exit 1\r
-\r
-fi\r
-\r
-\r
-AC_CANONICAL_HOST\r
-\r
-dnl| The following info is mostly gathered from GNU Emacs 19.24.  Basically,\r
-dnl| we are trying to find out whether this is a System-V derivative in\r
-dnl| which pipes don't work with select() and if so, whether there is anything\r
-dnl| strange about the way to open a pty.  Some of the work was done above\r
-dnl| by looking for _getpty, grantpt, and getpseudotty.  A few other strange\r
-dnl| properties of particular systems are also handled here.\r
-\r
-dnl| 4/6/97 I'm not sure there really are any systems where pipes\r
-dnl| don't work with select(), and ptys cause problems on many\r
-dnl| systems, so I'm changing the default to disable ptys in all\r
-dnl| cases.  I will change it back if I get bug reports that are fixed\r
-dnl| by doing a "configure --enable-ptys"\r
-\r
-USE_PTYS=0\r
-case "$host" in\r
-  *-*-hpux* )\r
-    AC_DEFINE(PTY_TTY_NAME_SPRINTF,\r
-       [sprintf (pty_name, "/dev/pty/tty%c%x", c, i);])\r
-    AC_DEFINE(PTY_NAME_SPRINTF,\r
-       [sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);])\r
-dnl| USE_PTYS=1\r
-    if test "$GCC" = yes; then\r
-      CONF_CFLAGS="-fwritable-strings"\r
-    else\r
-\r
-dnl| Note: You might be able to build xboard even if your compiler does not\r
-dnl| support ANSI C (-Aa).  xboard itself does not require ANSI C.  I don't\r
-dnl| know whether the X header files on HP-UX require it.\r
-\r
-      CONF_CFLAGS="-Aa -D_HPUX_SOURCE"\r
-    fi\r
-\r
-dnl| HP doesn't supply a full set of X header files and libraries.  People\r
-dnl| often have some things installed in one place and some in another. \r
-dnl| AC_PATH_XTRA will find only one place, so we try to add all the\r
-dnl| likely ones that might be missing here.  It might be better to\r
-dnl| change AC_PATH_XTRA to try to extract this information from imake,\r
-dnl| since folks who install the missing bits often configure their\r
-dnl| imake to find them, but I don't want to delve into autoconf and\r
-dnl| hack on its internals.\r
-\r
-    if test -d /opt/hppd/include/X11; then\r
-      X_CFLAGS="$X_CFLAGS -I/opt/hppd/include"\r
-      X_LIBS="$X_LIBS -L/opt/hppd/lib"\r
-    elif test -d /usr/contrib/X11R5/include; then\r
-      X_CFLAGS="$X_CFLAGS -I/usr/contrib/X11R5/include"\r
-      X_LIBS="$X_LIBS -L/usr/contrib/X11R5/lib"\r
-    elif test -d /usr/contrib/mitX11R5/include; then\r
-      X_CFLAGS="$X_CFLAGS -I/usr/contrib/mitX11R5/include"\r
-      X_LIBS="$X_LIBS -L/usr/contrib/mitX11R5/lib"\r
-    elif test -d /MIT/X11R5/include; then\r
-      X_CFLAGS="$X_CFLAGS -I/MIT/X11R5/include"\r
-      X_LIBS="$X_LIBS -L/MIT/X11R5/lib"\r
-    elif test -d /usr/local/include/X11R5; then\r
-      X_CFLAGS="$X_CFLAGS -I/usr/local/include/X11R5"\r
-      X_LIBS="$X_LIBS -L/usr/local/lib/X11R5"\r
-    fi\r
-    if test -d /usr/include/X11R5; then\r
-      X_CFLAGS="$X_CFLAGS -I/usr/include/X11R5"\r
-      X_LIBS="$X_LIBS -L/usr/lib/X11R5 -L/usr/lib/X11R4"\r
-    elif test -d /usr/include/X11R4; then\r
-      X_CFLAGS="$X_CFLAGS -I/usr/include/X11R4"\r
-      X_LIBS="$X_LIBS -L/usr/lib/X11R4"\r
-    fi\r
-  ;;\r
-\r
-  romp-ibm-aix* )\r
-    AC_DEFINE(IBMRTAIX, 1)\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  i386-ibm-aix )\r
-dnl| USE_PTYS=1\r
-    if test "$GCC" = yes; then\r
-      CONF_CFLAGS="-fwritable-strings"\r
-    fi\r
-  ;;\r
-\r
-  *-*-aix3* | *-*-bosx* )\r
-    AC_DEFINE(PTY_ITERATION, [for (c = 0; !c; c++)])\r
-    AC_DEFINE(PTY_NAME_SPRINTF, [strcpy (pty_name, "/dev/ptc");])\r
-    AC_DEFINE(PTY_TTY_NAME_SPRINTF, [strcpy (pty_name, ttyname (fd));])\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-cxux* )\r
-    AC_DEFINE(FIRST_PTY_LETTER, 'A')\r
-    AC_DEFINE(LAST_PTY_LETTER, 'P')\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-uniplus* )\r
-    AC_DEFINE(UNIPLUS, 1)\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-rtu* )\r
-    AC_DEFINE(FIRST_PTY_LETTER, 'z')\r
-    AC_DEFINE(PTY_TTY_NAME_SPRINTF,\r
-        [sprintf (pty_name, "/dev/ttyp%x", i);])\r
-    AC_DEFINE(PTY_NAME_SPRINTF,\r
-       [sprintf (pty_name, "/dev/pty%x", i);])\r
-    AC_DEFINE(RTU, 1)\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-iris* | *-*-irix3* )\r
-    AC_DEFINE(PTY_ITERATION, [for (c = 0; !c; c++)])\r
-    AC_DEFINE(PTY_NAME_SPRINTF, [strcpy (pty_name, "/dev/ptc");])\r
-    AC_DEFINE(PTY_TTY_NAME_SPRINTF,\r
-       [sprintf (pty_name, "/dev/ttyq%d", minor(stb.st_rdev));])\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-irix* )\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-sunos4* | *-*-solaris1* )\r
-\r
-dnl| Work around a bug in the SunOS 4.x linker.  Not needed if you have patches\r
-dnl|  100512-02 and 100573-03 from Sun.  The X FAQ says that the following is\r
-dnl|  "overkill," but doesn't explain what should be done instead.\r
-\r
-    if test "$GCC" = yes; then\r
-      PRE_XMULIB="-static"\r
-      POST_XMULIB="-dynamic"\r
-    else\r
-      PRE_XMULIB="-Bstatic"\r
-      POST_XMULIB="-Bdynamic"\r
-    fi\r
-  ;;\r
-\r
-  *-*-sunos5* | *-*-solaris2* )\r
-dnl| USE_PTYS=1\r
-\r
-dnl| I'm not sure -lelf is needed, but it was in the old Imakefile.\r
-dnl| The other libraries should all be found by Ac_PATH_XTRA or other\r
-dnl| code above.\r
-\r
-    X_LIBS="$X_LIBS -lelf"\r
-  ;;\r
-\r
-  *-*-sco* )\r
-    AC_DEFINE(PTY_ITERATION, [for (i = 0; ; i++)])\r
-    AC_DEFINE(PTY_NAME_SPRINTF, [sprintf (pty_name, "/dev/ptyp%d", i);])\r
-    AC_DEFINE(PTY_TTY_NAME_SPRINTF, [sprintf (pty_name, "/dev/ttyp%d", i);])\r
-dnl| USE_PTYS=1\r
-  ;;\r
-       \r
-  *-*-dynix* | *-*-ptx* )\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-esix* )\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-usg5-4* | *-*-sysvr4* )\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  *-*-usg* | *-*-sysv* | *-*-aix* )\r
-dnl| USE_PTYS=1\r
-  ;;\r
-\r
-  vax-*-ultrix )\r
-    if test "$GCC" = yes; then\r
-      CONF_CFLAGS="-fwritable-strings"\r
-    fi\r
-  ;;\r
-esac\r
-\r
-AC_ARG_ENABLE(xpm,\r
-[  --enable-xpm            libXpm will be used if found (default)\r
-  --disable-xpm           libXpm will not be used],\r
-[enable_xpm="$enableval"], [enable_xpm="yes"])\r
-\r
-if test "$enable_xpm" = "yes"; then\r
-  save_cflags="$CFLAGS"\r
-  CFLAGS="$CFLAGS $X_CFLAGS"\r
-  CPPFLAGS="$CPPFLAGS $X_CFLAGS"\r
-  AC_CHECK_HEADERS(X11/xpm.h)\r
-  CFLAGS="$save_cflags"\r
-  if test "$ac_cv_header_X11_xpm_h" = "yes"; then\r
-    save_ldflags="$LDFLAGS"\r
-    LDFLAGS="$LDFLAGS $X_LIBS"\r
-    AC_CHECK_LIB(Xpm, XpmReadFileToPixmap,\r
-                 [X_PRE_LIBS="-lXpm $X_PRE_LIBS"; AC_DEFINE(HAVE_LIBXPM)], [],\r
-                 [$X_PRE_LIBS -lX11 $X_EXTRA_LIBS])\r
-    LDFLAGS="$save_ldflags"\r
-  fi\r
-fi\r
-\r
-AC_SUBST(PRE_XMULIB)\r
-AC_SUBST(POST_XMULIB)\r
-AC_SUBST(CONF_CFLAGS)\r
-AC_SUBST(CONF_LDFLAGS)\r
-\r
-AC_MSG_CHECKING(whether ptys or pipes should be used)\r
-AC_ARG_ENABLE(ptys, \r
-[  --enable-ptys           force use of pseudo-ttys with child processes\r
-  --disable-ptys          force use of pipes with child processes],\r
-[if test "$enableval" = yes; then\r
-  USE_PTYS=1\r
-  AC_MSG_RESULT([ptys (user override)])\r
-fi\r
-if test "$enableval" = no; then\r
-  USE_PTYS=0\r
-  AC_MSG_RESULT([pipes (user override)])\r
-fi],\r
-[if test "$USE_PTYS" = 1; then\r
-  AC_MSG_RESULT(ptys)\r
-else\r
-  AC_MSG_RESULT(pipes)\r
-fi])\r
-AC_DEFINE_UNQUOTED(USE_PTYS, $USE_PTYS)\r
-\r
-\r
-dnl | define not to build zippy as a default, so that autoheader is happy\r
-AC_DEFINE(ZIPPY, 0,[should zippy be enabled])\r
-AC_ARG_ENABLE(zippy, \r
-[  --enable-zippy          support interfacing a chess program to ICS (default)\r
-  --disable-zippy         do not support interfacing a chess program to ICS],\r
-[enable_zippy="$enableval"], [enable_zippy="yes"])\r
-if test "$enable_zippy" = yes; then\r
-  AC_DEFINE(ZIPPY, 1,[should zippy be enabled])\r
-  ZIPPY_O=zippy.o\r
-  ZIPPY_H=zippy.h\r
-fi\r
-AC_SUBST(ZIPPY_O)  \r
-AC_SUBST(ZIPPY_H)  \r
-\r
-AC_ARG_ENABLE(sigint, \r
-[  --enable-sigint         sending SIGINT (^C) wakes up GNU Chess (default)\r
-  --disable-sigint        typing a command wakes up GNU Chess],\r
-[if test "$enableval" = yes; then\r
-  AC_DEFINE(ATTENTION, 1)\r
-fi],\r
-[AC_DEFINE(ATTENTION, 1)])\r
-\r
-AC_DEFINE_UNQUOTED(PRODUCT, "$PRODUCT")\r
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION")\r
-AC_DEFINE_UNQUOTED(PATCHLEVEL, "$PATCHLEVEL")\r
-AC_SUBST(PRODUCT)\r
-AC_SUBST(VERSION)\r
-AC_SUBST(PATCHLEVEL)\r
-\r
-AC_CONFIG_FILES([Makefile cmail xboard.texinfo])\r
-AC_CONFIG_COMMANDS([test-stamp-h],[test -z "$CONFIG_HEADERS" || date > stamp-h])\r
-AC_CONFIG_COMMANDS([chmod-cmail],[chmod 755 cmail])\r
-AC_OUTPUT\r
+dnl| configure.in
+dnl|
+dnl| Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, 2007,
+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
+dnl| the Free Software Foundation, either version 3 of the License, or (at
+dnl| your option) any later version.
+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| 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| --------------------------------------------------------------------
+dnl|
+dnl| You can process this file with autoconf to produce a configure script.
+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| to regenerate configure.  Then submit your changes to be folded into
+dnl| the standard version of xboard.
+
+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])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+
+AC_CONFIG_HEADERS([config.h])
+
+dnl | a bunch of templates for defines used below
+AH_TEMPLATE([FIRST_PTY_LETTER],[template])
+AH_TEMPLATE([HAVE_FCNTL_H],[template])
+AH_TEMPLATE([HAVE_GETHOSTNAME],[template])
+AH_TEMPLATE([HAVE_GETTIMEOFDAY],[template])
+AH_TEMPLATE([HAVE_RANDOM],[template])
+AH_TEMPLATE([HAVE_SYS_SOCKET_H],[template])
+AH_TEMPLATE([IBMRTAIX],[template])
+AH_TEMPLATE([LAST_PTY_LETTER],[template])
+AH_TEMPLATE([PTY_ITERATION],[template])
+AH_TEMPLATE([PTY_NAME_SPRINTF],[template])
+AH_TEMPLATE([PTY_OPEN],[template])
+AH_TEMPLATE([PTY_TTY_NAME_SPRINTF],[template])
+AH_TEMPLATE([REMOTE_SHELL],[template])
+AH_TEMPLATE([RTU],[template])
+AH_TEMPLATE([UNIPLUS],[template])
+AH_TEMPLATE([USE_PTYS],[template])
+AH_TEMPLATE([X_WCHAR],[template])
+AH_TEMPLATE([ATTENTION],[template])
+AH_TEMPLATE([DEFINED_SYS_ERRLIST],[template])
+AH_TEMPLATE([USE_XAW3D],[template])
+AH_TEMPLATE([X_LOCALE],[template])
+
+
+
+if test -z "$CFLAGS" ; then
+dnl| Prevent the next macro from setting CFLAGS to -g
+  CFLAGS=" "
+fi
+AC_PROG_CC
+
+dnl| need this to be able to compile files in a subdir
+AM_PROG_CC_C_O
+
+AC_PROG_CPP
+AC_ISC_POSIX
+AC_PROG_INSTALL
+
+dnl| add gettext support
+AM_GNU_GETTEXT_VERSION(0.17)
+AM_GNU_GETTEXT([external])
+
+AC_CHECK_PROGS(RSH, remsh rsh, rsh)
+AC_CHECK_PROGS(MINFO, makeinfo, makeinfo_not_found)
+if test "$MINFO" = makeinfo_not_found ; then
+   echo Please install \"makeinfo\"
+   exit 1
+fi
+AC_DEFINE_UNQUOTED(REMOTE_SHELL, "$RSH")
+AC_CHECK_PROG(NROFF, nroff, [nroff -man], cat)
+AC_SUBST(NROFFFLAGS)
+AC_PATH_PROGS(AWKPATH, awk mawk gawk nawk)
+AC_PATH_PROGS(PERLPATH, perl)
+
+AC_HEADER_STDC
+AC_HEADER_TIME
+AC_HEADER_SYS_WAIT
+AC_HEADER_DIRENT
+AC_TYPE_SIGNAL
+AC_CHECK_HEADERS(stropts.h sys/time.h string.h unistd.h sys/systeminfo.h)
+AC_CHECK_HEADERS(fcntl.h sys/fcntl.h, break)
+AC_CHECK_HEADERS(sys/socket.h lan/socket.h, break)
+AC_CHECK_HEADER(stddef.h, [], AC_DEFINE(X_WCHAR, 1))
+
+AC_CHECK_FUNCS(_getpty grantpt setitimer usleep)
+AC_CHECK_FUNCS(gettimeofday ftime, break)
+AC_CHECK_FUNCS(random rand48, break)
+AC_CHECK_FUNCS(gethostname sysinfo, break)
+AC_CHECK_FUNC(setlocale, [],
+  AC_CHECK_LIB(i, setlocale, [], AC_DEFINE(X_LOCALE, 1)))
+
+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 pkg-config
+AC_CHECK_PROGS([PKGCONFIG], [pkg-config], pkgconfig_not_found)
+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 pangocairo librsvg-2.0 >= 2.14.0 ])
+AC_SUBST(CAIRO_CFLAGS)
+AC_SUBST(CAIRO_LIBS)
+
+dnl | check which front end to use
+dnl | first check for gtk
+dnl | then for Xaw3d
+dnl | and then for Xaw
+FRONTEND_CFLAGS=""
+FRONTEND_LIBS=""
+
+AC_ARG_WITH([gtk],
+            [AS_HELP_STRING([--with-gtk],[use GTK front-end (default)])],
+            [with_GTK=$withval],
+            [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])],
+            [with_Xaw="$withval"],
+            [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],
+            [path where icons get installed (default: $datadir/icons/hicolor/48x48/apps)])],
+            [ICONSDIR="$withval"],
+            [ICONSDIR='$(datadir)/icons/hicolor/48x48/apps'])
+
+AC_ARG_WITH([svgiconsdir],
+            [AS_HELP_STRING([--with-svgiconsdir=DIR],
+            [path where svg icons get installed (default: $datadir/icons/hicolor/scalable/apps)])],
+            [SVGICONSDIR="$withval"],
+            [SVGICONSDIR='$(datadir)/icons/hicolor/scalable/apps'])
+
+AC_ARG_WITH([desktopdir],
+            [AS_HELP_STRING([--with-desktopdir=DIR],
+                            [path where desktop files get installed (default: $datadir/applications)])],
+            [DESKTOPDIR="$withval"],
+            [DESKTOPDIR='$(datadir)/applications'])
+
+AC_ARG_WITH([mimedir],
+            [AS_HELP_STRING([--with-mimedir=DIR],
+                            [path where mime files get installed (default: $datadir/mime/packages)])],
+            [MIMEDIR="$withval"],
+            [MIMEDIR='$(datadir)/mime/packages'])
+
+AC_ARG_WITH([gamedatadir],
+            [AS_HELP_STRING([--with-gamedatadir=DIR],
+                            [path where game data files get installed (default: $datadir/games/xboard)])],
+            [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)
+AC_SUBST(MIMEDIR)
+AC_SUBST(GAMEDATADIR)
+
+dnl | check for libraries
+if test x"$with_GTK" = x"yes" ; then
+  PKG_CHECK_MODULES([GTK], [ gtk+-2.0 >= 2.16.0 gmodule-2.0 ])
+  FRONTEND_CFLAGS=$GTK_CFLAGS
+  FRONTEND_LIBS=$GTK_LIBS
+  with_Xaw="no"
+fi
+
+if test x"$with_GTK" = x"no" ; then
+
+dnl | general check for Xaw and Xaw3d
+  AC_PATH_XTRA
+  if test -n "$no_x" ; then
+    AC_MSG_ERROR([ "    $PACKAGE requires the X Window System header files and libraries!
+    They were not found on your system.  See FAQ topic C.2.
+    configure failed"])
+  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
+     AC_MSG_ERROR([Xt headers not found. Please install the X11 packages.])
+  fi
+
+dnl | check availability of Xaw3d
+  FRONTEND_LIBS=
+  AS_IF([test x"$with_Xaw3d" != x"no"],
+           [AC_CHECK_LIB([Xaw3d],
+                    [XawTextReplace],
+                    [ FRONTEND_LIBS="-lXaw3d"
+                      AC_DEFINE([USE_XAW3D], [1], [Define if you want to use Xaw3d])],
+                    [AC_MSG_ERROR([--with-Xaw3d was given, but test for Xaw3d failed. Make sure that you have Xaw3d installed, else you might want to try the configure option --without-Xaw3d])],
+                              [-lXaw])])
+
+dnl | no Xaw3d, check for Xaw; make it the default
+  if test x"$with_Xaw3d" = x"no" ; then
+     with_Xaw=yes
+     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
+
+     FRONTEND_LIBS="-lXaw"
+  fi
+
+fi
+
+dnl | make results available in Makefile.am
+AM_CONDITIONAL([withGTK],   [test x"$with_GTK" = x"yes"])
+AM_CONDITIONAL([withXaw],   [test x"$with_Xaw3d" = x"yes" || test x"$with_Xaw" = x"yes"])
+
+dnl | end Front-end check
+
+AC_CANONICAL_HOST
+
+dnl| The following info is mostly gathered from GNU Emacs 19.24.  Basically,
+dnl| we are trying to find out whether this is a System-V derivative in
+dnl| which pipes don't work with select() and if so, whether there is anything
+dnl| strange about the way to open a pty.  Some of the work was done above
+dnl| by looking for _getpty, grantpt, and getpseudotty.  A few other strange
+dnl| properties of particular systems are also handled here.
+
+dnl| 4/6/97 I'm not sure there really are any systems where pipes
+dnl| don't work with select(), and ptys cause problems on many
+dnl| systems, so I'm changing the default to disable ptys in all
+dnl| cases.  I will change it back if I get bug reports that are fixed
+dnl| by doing a "configure --enable-ptys"
+
+USE_PTYS=0
+case "$host" in
+  *-*-hpux* )
+    AC_DEFINE(PTY_TTY_NAME_SPRINTF,
+       [sprintf (pty_name, "/dev/pty/tty%c%x", c, i);])
+    AC_DEFINE(PTY_NAME_SPRINTF,
+       [sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);])
+dnl| USE_PTYS=1
+    if test "$GCC" = yes; then
+      CONF_CFLAGS="-fwritable-strings"
+    else
+
+dnl| Note: You might be able to build xboard even if your compiler does not
+dnl| support ANSI C (-Aa).  xboard itself does not require ANSI C.  I don't
+dnl| know whether the X header files on HP-UX require it.
+
+      CONF_CFLAGS="-Aa -D_HPUX_SOURCE"
+    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| 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,
+dnl| since folks who install the missing bits often configure their
+dnl| imake to find them, but I don't want to delve into autoconf and
+dnl| hack on its internals.
+
+    if test -d /opt/hppd/include/X11; then
+      X_CFLAGS="$X_CFLAGS -I/opt/hppd/include"
+      X_LIBS="$X_LIBS -L/opt/hppd/lib"
+    elif test -d /usr/contrib/X11R5/include; then
+      X_CFLAGS="$X_CFLAGS -I/usr/contrib/X11R5/include"
+      X_LIBS="$X_LIBS -L/usr/contrib/X11R5/lib"
+    elif test -d /usr/contrib/mitX11R5/include; then
+      X_CFLAGS="$X_CFLAGS -I/usr/contrib/mitX11R5/include"
+      X_LIBS="$X_LIBS -L/usr/contrib/mitX11R5/lib"
+    elif test -d /MIT/X11R5/include; then
+      X_CFLAGS="$X_CFLAGS -I/MIT/X11R5/include"
+      X_LIBS="$X_LIBS -L/MIT/X11R5/lib"
+    elif test -d /usr/local/include/X11R5; then
+      X_CFLAGS="$X_CFLAGS -I/usr/local/include/X11R5"
+      X_LIBS="$X_LIBS -L/usr/local/lib/X11R5"
+    fi
+    if test -d /usr/include/X11R5; then
+      X_CFLAGS="$X_CFLAGS -I/usr/include/X11R5"
+      X_LIBS="$X_LIBS -L/usr/lib/X11R5 -L/usr/lib/X11R4"
+    elif test -d /usr/include/X11R4; then
+      X_CFLAGS="$X_CFLAGS -I/usr/include/X11R4"
+      X_LIBS="$X_LIBS -L/usr/lib/X11R4"
+    fi
+  ;;
+
+  romp-ibm-aix* )
+    AC_DEFINE(IBMRTAIX, 1)
+dnl| USE_PTYS=1
+  ;;
+
+  i386-ibm-aix )
+dnl| USE_PTYS=1
+    if test "$GCC" = yes; then
+      CONF_CFLAGS="-fwritable-strings"
+    fi
+  ;;
+
+  *-*-aix3* | *-*-bosx* )
+    AC_DEFINE(PTY_ITERATION, [for (c = 0; !c; c++)])
+    AC_DEFINE(PTY_NAME_SPRINTF, [strcpy (pty_name, "/dev/ptc");])
+    AC_DEFINE(PTY_TTY_NAME_SPRINTF, [strcpy (pty_name, ttyname (fd));])
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-cxux* )
+    AC_DEFINE(FIRST_PTY_LETTER, 'A')
+    AC_DEFINE(LAST_PTY_LETTER, 'P')
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-uniplus* )
+    AC_DEFINE(UNIPLUS, 1)
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-rtu* )
+    AC_DEFINE(FIRST_PTY_LETTER, 'z')
+    AC_DEFINE(PTY_TTY_NAME_SPRINTF,
+        [sprintf (pty_name, "/dev/ttyp%x", i);])
+    AC_DEFINE(PTY_NAME_SPRINTF,
+       [sprintf (pty_name, "/dev/pty%x", i);])
+    AC_DEFINE(RTU, 1)
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-iris* | *-*-irix3* )
+    AC_DEFINE(PTY_ITERATION, [for (c = 0; !c; c++)])
+    AC_DEFINE(PTY_NAME_SPRINTF, [strcpy (pty_name, "/dev/ptc");])
+    AC_DEFINE(PTY_TTY_NAME_SPRINTF,
+       [sprintf (pty_name, "/dev/ttyq%d", minor(stb.st_rdev));])
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-irix* )
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-sunos4* | *-*-solaris1* )
+
+dnl| Work around a bug in the SunOS 4.x linker.  Not needed if you have patches
+dnl|  100512-02 and 100573-03 from Sun.  The X FAQ says that the following is
+dnl|  "overkill," but doesn't explain what should be done instead.
+
+    if test "$GCC" = yes; then
+      PRE_XMULIB="-static"
+      POST_XMULIB="-dynamic"
+    else
+      PRE_XMULIB="-Bstatic"
+      POST_XMULIB="-Bdynamic"
+    fi
+  ;;
+
+  *-*-sunos5* | *-*-solaris2* )
+dnl| USE_PTYS=1
+
+dnl| I'm not sure -lelf is needed, but it was in the old Imakefile.
+dnl| The other libraries should all be found by Ac_PATH_XTRA or other
+dnl| code above.
+
+    X_LIBS="$X_LIBS -lelf"
+  ;;
+
+  *-*-sco* )
+    AC_DEFINE(PTY_ITERATION, [for (i = 0; ; i++)])
+    AC_DEFINE(PTY_NAME_SPRINTF, [sprintf (pty_name, "/dev/ptyp%d", i);])
+    AC_DEFINE(PTY_TTY_NAME_SPRINTF, [sprintf (pty_name, "/dev/ttyp%d", i);])
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-dynix* | *-*-ptx* )
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-esix* )
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-usg5-4* | *-*-sysvr4* )
+dnl| USE_PTYS=1
+  ;;
+
+  *-*-usg* | *-*-sysv* | *-*-aix* )
+dnl| USE_PTYS=1
+  ;;
+
+  vax-*-ultrix )
+    if test "$GCC" = yes; then
+      CONF_CFLAGS="-fwritable-strings"
+    fi
+  ;;
+
+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
+    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
+
+
+AC_SUBST(FRONTEND_CFLAGS)
+AC_SUBST(FRONTEND_LIBS)
+AC_SUBST(PRE_XMULIB)
+AC_SUBST(POST_XMULIB)
+AC_SUBST(CONF_CFLAGS)
+AC_SUBST(CONF_LDFLAGS)
+
+AC_MSG_CHECKING(whether ptys or pipes should be used)
+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
+  enable_ptys="ptys"
+  AC_MSG_RESULT([ptys (user override)])
+fi
+if test "$enableval" = no; then
+  USE_PTYS=0
+  enable_ptys="pipes"
+  AC_MSG_RESULT([pipes (user override)])
+fi],
+[if test "$USE_PTYS" = 1; then
+  AC_MSG_RESULT(ptys)
+  enable_ptys="ptys"
+else
+  AC_MSG_RESULT(pipes)
+  enable_ptys="pipes"
+fi])
+AC_DEFINE_UNQUOTED(USE_PTYS, $USE_PTYS)
+
+
+dnl | define not to build zippy as a default, so that autoheader is happy
+AC_ARG_ENABLE( [zippy],
+              [AS_HELP_STRING([--enable-zippy],[support interfacing a chess program to ICS (default)])],
+              [],
+              [enable_zippy="no"])
+
+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])
+fi
+AM_CONDITIONAL([ZIPPY], [test x$enable_zippy != xno])
+
+
+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)
+fi
+enable_sigint=$enableval
+],
+[enable_sigint="yes"
+AC_DEFINE(ATTENTION, 1)])
+
+
+if test x"$with_Xaw3d" = x"yes" -o  x"$with_Xaw" = x"yes" ; then
+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 "
+AC_SUBST(X_CFLAGS)
+AC_SUBST(X_LIBS)
+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; \
+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 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
+
+dnl
+dnl Output a summary
+dnl
+echo ""
+echo " Configurations summary:"
+echo ""
+echo "        prefix:          $prefix       "
+echo "        datarootdir:     $datarootdir  "
+echo "        datadir:         $datadir      "
+echo "        gamedatadir:     $GAMEDATADIR  "
+echo "        desktopdir:      $DESKTOPDIR   "
+echo "        mimedir:         $MIMEDIR      "
+echo "        iconsdir:        $ICONSDIR     "
+echo "        svgiconsdir:     $SVGICONSDIR  "
+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 "        GTK:             $with_GTK"
+echo "        Xaw3d:           $with_Xaw3d"
+echo "        Xaw:             $with_Xaw"
+echo ""
+echo "        ptys:            $enable_ptys"
+echo "        zippy:           $enable_zippy"
+echo "        sigint:          $enable_sigint"