]> git.pond.sub.org Git - empserver/blobdiff - configure.ac
ship: Unbreak MOB_ACCESS real-time mobility update for ships
[empserver] / configure.ac
index 0ee5c5f0cebd5e29a102eca5fac8110e0767b19c..240343238fda14268e8176e24b0b1b2e957f0c30 100644 (file)
@@ -1,6 +1,6 @@
 #
 #   Empire - A multi-player, client/server Internet based war game.
-#   Copyright (C) 1986-2016, Dave Pare, Jeff Bailey, Thomas Ruschak,
+#   Copyright (C) 1986-2021, Dave Pare, Jeff Bailey, Thomas Ruschak,
 #                 Ken Stevens, Steve McClure, Markus Armbruster
 #
 #   Empire is free software: you can redistribute it and/or modify
 #   configure.ac: Autoconf input file
 #
 #   Known contributors to this file:
-#      Markus Armbruster, 2005-2015
+#      Markus Armbruster, 2005-2020
 #
 # Process this file with autoconf to produce a configure script.
 
 # Autoconf makes checking for and programming around assorted ancient
-# crap relatively painless.  But why bother?  Just rely on C89 and
-# POSIX, and when something breaks on some oddball machine, see
-# whether it's worth fixing.
-
-AC_PREREQ(2.64)
-AC_INIT([Wolfpack Empire], [4.3.34], [wolfpack@wolfpackempire.com], [empire],
+# crap relatively painless.  But why bother?  Just rely on POSIX, and
+# when something breaks on some oddball machine, see whether it's
+# worth fixing.
+
+AC_PREREQ(2.69)
+AC_INIT([Wolfpack Empire],
+       m4_esyscmd([build-aux/git-version-gen .tarball-version]),
+       [wolfpack@wolfpackempire.com], [empire],
        [http://www.wolfpackempire.com/])
 AC_CONFIG_SRCDIR([include/combat.h])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_HEADERS([config.h])
 
-
 ### Checks for programs
 AC_PROG_AWK
 AC_PROG_INSTALL
 AC_PROG_RANLIB
-AC_PROG_CC
+
+AC_PROG_CC_STDC
 AM_PROG_CC_C_O
 # Private automake macro, tsk, tsk, tsk...
 _AM_DEPENDENCIES(CC)
+AC_DEFINE([_XOPEN_SOURCE], [600],
+         [Request POSIX-1.2001 with XSI Extension])
+# Note: this is after AC_PROG_CC_STDC, because Solaris cc fails with
+# _XOPEN_SOURCE unless switched to C99, which breaks AC_PROG_CC_STDC.
 
 AC_ARG_VAR(NROFF, [nroff command])
 AC_CHECK_PROG(NROFF, groff, [GROFF_NO_SGR= groff -Tascii -U], nroff)
 
 # not really a check for a program, but close enough
-if test -d $srcdir/.git; then revctrl=git
+if test -d $srcdir/.git
+then revctrl=git
 else revctrl=
 fi
+if test "$revctrl" && test -r $srcdir/.tarball-version
+then AC_MSG_ERROR([$srcdir/.tarball-version must not exist])
+fi
 AC_SUBST(revctrl,$revctrl)
 
 # Not a program, but need to check this early
@@ -73,6 +83,9 @@ LIBS_util="$LIBS"
 LIBS="$LIBS_SOCKETS $LIBS"
 AX_LIB_SOCKET_NSL
 LIBS_server="$LIBS"
+MY_WITH_READLINE
+MY_WITH_TERMINFO
+LIBS_client="$LIBS"
 
 
 ### Checks for header files
@@ -80,6 +93,9 @@ LIBS_server="$LIBS"
 
 ### Checks for typedefs, structures, and compiler characteristics
 
+if test "$GCC"
+then
+
 # Enable useful warnings
 # Some of them are commented out because the code needs cleanup first
 # Clang needs to be tested with -Werror=unknown-warning-option
@@ -108,9 +124,6 @@ dnl -Wswitch-default dnl
 -Wno-unused-parameter dnl
 ], [], [$cflags_test])
 
-# Our carg() conflicts with libm's TODO clean that up
-MY_APPEND_COMPILE_FLAGS([-fno-builtin-carg -Wno-incompatible-library-redeclaration])
-
 # No multiple definitions of uninitialized global variables
 MY_APPEND_COMPILE_FLAGS([-fno-common])
 
@@ -157,10 +170,13 @@ main(int argc, char *argv[])
 }
     ]])])
 
+fi # $GCC
+
 
 ### Checks for library functions
 
-AC_CHECK_FUNCS(getaddrinfo getpass)
+AC_CHECK_FUNCS(getaddrinfo)
+MY_WORKING_IN6_IS_ADDR_V4MAPPED
 MY_FUNC_MAKECONTEXT
 
 
@@ -205,9 +221,6 @@ POSIX)      AC_DEFINE([EMPTH_POSIX], 1, [Define to use POSIX threads]) ;;
 Windows) AC_DEFINE([EMPTH_W32], 1, [Define to use Windows threads]) ;;
 esac
 
-MY_WITH_TERMINFO
-LIBS_client="$LIBS"
-
 
 ### Output
 
@@ -234,6 +247,7 @@ AC_OUTPUT
 AC_MSG_NOTICE([])
 AC_MSG_NOTICE([-= Configuration summary =-])
 AC_MSG_NOTICE([Thread package: $empthread])
+AC_MSG_NOTICE([      readline: $with_readline])
 AC_MSG_NOTICE([      terminfo: $with_terminfo])
 AC_MSG_NOTICE([    EMPIREHOST: $EMPIREHOST])
 AC_MSG_NOTICE([    EMPIREPORT: $EMPIREPORT])