dnl| configure.in
dnl|
dnl| Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006, 2007,
-dnl| 2008, 2009 Free Software Foundation, Inc.
+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 standard version of xboard.
dnl| define second argument as VERSION.PATCHLEVEL. e.g. 4.4.0j
-AC_INIT([xboard],[4.4.0.beta1],[bug-xboard@gnu.org])
-AM_INIT_AUTOMAKE
+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])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AC_CONFIG_HEADERS([config.h])
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
-AC_PROG_LEX
-if test "$LEX" != flex; then
- LEX="$SHELL $missing_dir/missing flex"
- AC_SUBST([LEX_OUTPUT_ROOT], [lex.yy])
- AC_SUBST([LEXLIB], [''])
-fi
-
+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
+if test "$MINFO" = makeinfo_not_found ; then
echo Please install \"makeinfo\"
exit 1
fi
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 malloc.h)
+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_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
if test -n "$no_x" ; then
echo $PACKAGE requires the X Window System header files and libraries!
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
+if test "$xt" = "no" ; then
echo Xt headers not found
exit 1
fi
-dnl | test if user wants ot use Xaw3d headers
+dnl | test if user wants ot use Xaw3d or Xaw
+
+dnl | add configure option for Xaw3d
AC_ARG_WITH([Xaw3d],
- [AS_HELP_STRING([--with-Xaw3d],
- [use Xaw3d instead of Xaw])],
- [with_xaw3d=yes],
- [with_xaw3d=no])
+ [AS_HELP_STRING([--with-Xaw3d],[use Xaw3d instead of Xaw])],
+ [],
+ [with_Xaw3d=no])
+dnl | check availability of Xaw3d
XAW_LIBS=
-AS_IF([test "x$with_xaw3d" != xno],
+AS_IF([test x"$with_Xaw3d" != x"no"],
[AC_CHECK_LIB([Xaw3d],
[XawTextReplace],
- [AC_SUBST([XAW_LIBS],
- ["-lXaw3d"])
+ [AC_SUBST([XAW_LIBS],["-lXaw3d"])
AC_DEFINE([USE_XAW3D], [1],
[Define if you want to use Xaw3d])],
- [AC_CHECK_HEADER(X11/Xaw/Dialog.h,xaw_headers="yes")
- AC_MSG_FAILURE(
- [--with-Xaw3d was given, but test for Xaw3d failed])],
+ [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])])
-if test "$with_xaw3d" == "no" ; then
+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
XAW_LIBS="-lXaw"
fi
AC_SUBST(XAW_LIBS)
-dnl | end Xaw3d test
-
-if test "$xaw_headers" == "no" ; then
- echo Xaw headers not found
- exit 1
-
-fi
+dnl | end Xaw/Xaw3d test
AC_CANONICAL_HOST
CONF_CFLAGS="-fwritable-strings"
fi
;;
+
+dnl| add some libs for OS X
+ *-apple-* )
+ ;;
esac
-AC_ARG_ENABLE(xpm,
-[ --enable-xpm libXpm will be used if found (default)
- --disable-xpm libXpm will not be used],
-[enable_xpm="$enableval"], [enable_xpm="yes"])
+AC_ARG_ENABLE( [xpm],
+ [AS_HELP_STRING([--enable-xpm],[libXpm will be used if found (default)])],
+ [enable_xpm="$enableval"],
+ [enable_xpm="yes"])
-if test "$enable_xpm" = "yes"; then
+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"
AC_SUBST(CONF_LDFLAGS)
AC_MSG_CHECKING(whether ptys or pipes should be used)
-AC_ARG_ENABLE(ptys,
-[ --enable-ptys force use of pseudo-ttys with child processes
- --disable-ptys force use of pipes with child processes],
+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_DEFINE(ZIPPY, 0,[should zippy be enabled])
-AC_ARG_ENABLE(zippy,
-[ --enable-zippy support interfacing a chess program to ICS (default)
- --disable-zippy do not support interfacing a chess program to ICS],
-[enable_zippy="$enableval"], [enable_zippy="yes"])
-if test "$enable_zippy" = yes; then
+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
AC_DEFINE(ZIPPY, 1,[should zippy be enabled])
- ZIPPY_O=zippy.o
- ZIPPY_H=zippy.h
fi
-AC_SUBST(ZIPPY_O)
-AC_SUBST(ZIPPY_H)
+AM_CONDITIONAL([ZIPPY], [test x$enable_zippy != xno])
+
AC_ARG_ENABLE(sigint,
-[ --enable-sigint sending SIGINT (^C) wakes up GNU Chess (default)
- --disable-sigint typing a command wakes up GNU Chess],
+[AS_HELP_STRING([--enable-sigint],[sending SIGINT (^C) wakes up GNU Chess (default)])],
[if test "$enableval" = yes; then
AC_DEFINE(ATTENTION, 1)
-fi],
-[AC_DEFINE(ATTENTION, 1)])
+fi
+enable_sigint=$enableval
+],
+[enable_sigint="yes"
+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 "
+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
-AC_CONFIG_FILES([Makefile cmail])
+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])
AC_OUTPUT
+
+dnl
+dnl Output a summary
+dnl
+echo ""
+echo " Configurations summary:"
+echo ""
+echo " prefix: $prefix "
+echo " datarootdir: $datarootdir "
+echo " datadir: $datadir (icons will go in \$datadir/icons/hicolor/...)"
+echo " (bitmaps will go in \$datadir/games/xboard/...)"
+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"
+echo ""
+echo " xpm: $enable_xpm"
+echo " ptys: $enable_ptys"
+echo " zippy: $enable_zippy"
+echo " sigint: $enable_sigint"