XBoard: split printing of the features line for clarity.
[gnushogi.git] / configure.ac
index 5d16f66..2447789 100644 (file)
@@ -5,31 +5,25 @@
 dnl Process this file with autoconf to produce a configure script.
 
 AC_PREREQ(2.57)
-AC_INIT([gnushogi],[1.4.0+],[https://savannah.gnu.org/bugs/?group=gnushogi])
-AC_CONFIG_SRCDIR([version.h])
+AC_INIT([gnushogi],[1.4.2+],[https://savannah.gnu.org/bugs/?group=gnushogi])
+AM_INIT_AUTOMAKE
+AC_CONFIG_SRCDIR([gnushogi/gnushogi.h])
 AC_CONFIG_HEADER(config.h)
+AM_MAINTAINER_MODE
 
 ##########
 AC_MSG_NOTICE([C compiler])
 AC_PROG_CC
-
-##########
-AC_MSG_NOTICE([yacc/bison, lex/flex, and install])
-AC_PROG_YACC
-AC_PROG_LEX
+AC_CANONICAL_BUILD
 AC_PROG_INSTALL
 
 ##########
-AC_MSG_NOTICE([X])
-AC_PATH_XTRA
-
-##########
 AC_MSG_NOTICE([libs])
 
 # curses
 AC_ARG_WITH([curses],
   [AS_HELP_STRING([--with-curses],
-    [enable curses UI])],
+    [enable curses UI (default: yes if available)])],
   [],
   [with_curses=check])
 
@@ -37,17 +31,19 @@ LIBCURSES=
 AS_IF([test "x$with_curses" != xno],
   [AC_CHECK_LIB([curses], [clrtoeol],
     [AC_SUBST([LIBCURSES], [-lcurses])
-     AC_SUBST([CURSESDSP], [cursesdsp.o])
+     AC_SUBST([CURSESDSP], [gnushogi-cursesdsp.o])
+     AC_SUBST([CURSESDSPMINI], [gnuminishogi-cursesdsp.o])
      AC_DEFINE([HAVE_LIBCURSES], [1],
                [Define if you have lib])
     ],
-    [AC_MSG_ERROR(
-       [--with-curses was given, but test for curses failed])],
+    [AS_IF([test "x$with_curses" = xyes],
+      [AC_MSG_ERROR(
+        [--with-curses was given, but test for curses failed])])],
     [-ltermcap])])
 
 # other libraries.
-AC_CHECK_LIB(m, pow)
-AC_CHECK_LIB(termcap, tgoto)
+AC_CHECK_LIB([m], [pow])
+AC_CHECK_LIB([termcap], [tgoto])
 
 
 
@@ -56,19 +52,16 @@ AC_CHECK_LIB(termcap, tgoto)
 
 if [[ $ac_cv_c_compiler_gnu = yes ]]
 then
-WARNINGS="-Wall -Wno-implicit-int -Wstrict-prototypes -ansi -pedantic"
-CEXTRAFLAGS="-fsigned-char -funroll-loops \$(HASH)"
-# For profiling targets:
-CEXTRAFLAGS2="-fsigned-char -pg -fprofile-arcs -ftest-coverage \$(HASH)"
+WARNINGS="-Wall -Wno-implicit-int -Wstrict-prototypes"
+CEXTRAFLAGS="-fsigned-char -funroll-loops"
 else
 # Who knows what warnings your compiler uses?
 WARNINGS=
-CEXTRAFLAGS="\$(HASH)"
+CEXTRAFLAGS=
 fi
 
 AC_SUBST(WARNINGS)
 AC_SUBST(CEXTRAFLAGS)
-AC_SUBST(CEXTRAFLAGS2)
 
 ##########
 AC_MSG_NOTICE([header files])
@@ -99,92 +92,37 @@ AC_CHECK_SIZEOF(long)
 ##########
 AC_MSG_NOTICE([library functions])
 
-AC_FUNC_FORK
 AC_PROG_GCC_TRADITIONAL
-AC_FUNC_MALLOC
-AC_FUNC_SETVBUF_REVERSED
 AC_TYPE_SIGNAL
-AC_CHECK_FUNCS([dup2 gethostname gettimeofday memset pow strcasecmp])
+AC_CHECK_FUNCS([gettimeofday memset pow])
 AC_CHECK_FUNCS([strchr strerror strrchr strstr strtol])
-AC_CHECK_FUNCS(memcpy bcopy)
-AC_CHECK_FUNCS(setlinebuf setvbuf)
+AC_CHECK_FUNCS([memcpy bcopy])
+AC_CHECK_FUNCS([setvbuf setlinebuf])
 
 
 #
 # Set various user-definable options.
 #
-# Valid OPT settings:
-# --with-top-part-bitmaps
-#
-# Other settings:
-# --with-first-shogi-program=PROGNAME
-# --with-second-shogi-program=PROGNAME
-# --with-first-host=HOSTNAME
-# --with-second-host=HOSTNAME
-#
 
-OPT=
-FIRST_SHOGI_PROGRAM=gnushogi
-SECOND_SHOGI_PROGRAM=gnushogi
-FIRST_HOST=localhost
-SECOND_HOST=localhost
-
-AC_ARG_ENABLE(xshogi,
-[  --enable-xshogi
-        Compile the xshogi graphical interface to GNU shogi (default: no)],
-enable_xshogi=$enableval,
-enable_xshogi=no)
-
-AC_ARG_WITH(top-part-bitmaps,
-[  --with-top-part-bitmaps    Use top part of Kanji bitmaps only in xshogi.],
-OPT=-DTOP_PART_BITMAPS)
-
-AC_ARG_WITH(first-shogi-program,
-[  --with-first-shogi-program=PROGNAME    
-        Use PROGNAME as the first shogi program in xshogi (default: gnushogi)],
-FIRST_SHOGI_PROGRAM=$withval)
-
-AC_ARG_WITH(second-shogi-program,
-[  --with-second-shogi-program=PROGNAME    
-        Use PROGNAME as the second shogi program in xshogi (default: gnushogi)],
-SECOND_SHOGI_PROGRAM=$withval)
-
-AC_ARG_WITH(first-host,
-[  --with-first-host=HOSTNAME    
-        Use HOSTNAME as the machine on which the first shogi program 
-        runs in xshogi (default: localhost)],
-FIRST_HOST=$withval)
-
-AC_ARG_WITH(second-host,
-[  --with-second-host=HOSTNAME    
-        Use HOSTNAME as the machine on which the second shogi program 
-        runs in xshogi (default: localhost)],
-SECOND_HOST=$withval)
-
-AC_SUBST(OPT)
-AC_SUBST(FIRST_SHOGI_PROGRAM)
-AC_SUBST(SECOND_SHOGI_PROGRAM)
-AC_SUBST(FIRST_HOST)
-AC_SUBST(SECOND_HOST)
-
-if [[ $enable_xshogi = yes ]]
-then
-XSHOGI=xshogi_compile
-XSHOGIINSTALL=xshogi_install
-XSHOGICLEAN=xshogi_clean
-else
-XSHOGI=
-XSHOGIINSTALL=
-XSHOGICLEAN=
-fi
+AC_ARG_ENABLE([minishogi],
+[  --enable-minishogi
+        Build gnuminishogi instead of gnushogi (default: no)],
+[AC_DEFINE([MINISHOGI], [], [Define to build gnuminishogi instead of gnushogi])
+AC_SUBST([PROGNAME], [gnuminishogi])
+],
+[AC_SUBST([PROGNAME], [gnushogi])
+])
 
-AC_SUBST(XSHOGI)
-AC_SUBST(XSHOGIINSTALL)
-AC_SUBST(XSHOGICLEAN)
+##########
+
+# don't build pat2inc when cross-compiling, we don't need it
+if test "$cross_compiling" = no; then
+   AC_SUBST([PAT2INC], [pat2inc])
+   AC_SUBST([PAT2INCEXE], [pat2inc$EXEEXT])
+fi
 
 ##########
 AC_CONFIG_FILES([Makefile
                  gnushogi/Makefile
-                gnushogi/Makefile.profile
-                 xshogi/Makefile])
+                 doc/Makefile])
 AC_OUTPUT