]> git.pond.sub.org Git - empserver/blob - configure.ac
Fix empire(6) synopsis for argument of -s
[empserver] / configure.ac
1 #
2 #   Empire - A multi-player, client/server Internet based war game.
3 #   Copyright (C) 1986-2011, Dave Pare, Jeff Bailey, Thomas Ruschak,
4 #                 Ken Stevens, Steve McClure, Markus Armbruster
5 #
6 #   Empire is free software: you can redistribute it and/or modify
7 #   it under the terms of the GNU General Public License as published by
8 #   the Free Software Foundation, either version 3 of the License, or
9 #   (at your option) any later version.
10 #
11 #   This program is distributed in the hope that it will be useful,
12 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 #   GNU General Public License for more details.
15 #
16 #   You should have received a copy of the GNU General Public License
17 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 #
19 #   ---
20 #
21 #   See files README, COPYING and CREDITS in the root of the source
22 #   tree for related information and legal notices.  It is expected
23 #   that future projects/authors will amend these files as needed.
24 #
25 #   ---
26 #
27 #   configure.ac: Autoconf input file
28 #
29 #   Known contributors to this file:
30 #      Markus Armbruster, 2005-2010
31 #
32 # Process this file with autoconf to produce a configure script.
33
34 # Autoconf makes checking for and programming around assorted ancient
35 # crap relatively painless.  But why bother?  Just rely on C89 and
36 # POSIX, and when something breaks on some oddball machine, see
37 # whether it's worth fixing.
38
39 AC_PREREQ(2.59)
40 AC_INIT([Wolfpack Empire], [4.3.29], [wolfpack@wolfpackempire.com], [empire])
41 AC_CONFIG_SRCDIR([include/combat.h])
42 AC_CONFIG_MACRO_DIR([m4])
43 AC_CONFIG_HEADERS([config.h])
44
45
46 ### Checks for programs
47 AC_PROG_AWK
48 AC_PROG_INSTALL
49 AC_PROG_RANLIB
50 AC_PROG_CC
51 AC_SUBST(GCC)
52 AM_PROG_CC_C_O
53 # Private automake macro, tsk, tsk, tsk...
54 _AM_DEPENDENCIES(CC)
55
56 AC_ARG_VAR(NROFF, [nroff command])
57 AC_CHECK_PROG(NROFF, groff, [GROFF_NO_SGR= groff -Tascii -U], nroff)
58
59 # not really a check for a program, but close enough
60 if test -d $srcdir/.git; then revctrl=git
61 else revctrl=
62 fi
63 AC_SUBST(revctrl,$revctrl)
64
65 # Not a program, but need to check this early
66 MY_WINDOWS_API
67
68
69 ### Checks for libraries
70 ACX_PTHREAD
71 LIBS_util="$LIBS"
72 LIBS="$LIBS_SOCKETS $LIBS"
73 LIB_SOCKET_NSL
74 LIBS_server="$LIBS"
75
76
77 ### Checks for header files
78
79
80 ### Checks for typedefs, structures, and compiler characteristics
81
82 AC_C_CHAR_UNSIGNED
83
84
85 ### Checks for library functions
86
87 AC_CHECK_FUNCS(getaddrinfo getpass)
88 MY_FUNC_MAKECONTEXT
89
90
91 ### Site configuration
92
93 # Can't be bothered to make MAXNOC configurable right now.
94 AC_DEFINE([MAXNOC], [99],
95           [The maximum number of countries])
96
97 AC_ARG_VAR([EMPIREHOST], [Default host (client only) [127.0.0.1]])
98 test "$EMPIREHOST" || EMPIREHOST=127.0.0.1
99
100 AC_ARG_VAR([EMPIREPORT], [Default port (client and server) [6665]])
101 test "$EMPIREPORT" || EMPIREPORT=6665
102
103 AC_ARG_WITH([pthread],
104             AS_HELP_STRING([--with-pthread],
105                            [use POSIX threads]))
106
107 # Select thread package
108 empthread=
109 if test "$with_pthread" != no; then
110     if test "$acx_pthread_ok" = yes; then
111         empthread=POSIX
112     fi
113 fi
114 if test -z "$with_pthread" || test "$with_pthread" = no; then
115     if test "$ac_cv_func_makecontext" = yes; then
116         empthread=LWP
117     fi
118     if test $Windows_API = yes; then
119         empthread=Windows
120     fi
121 fi
122 if test -z "$empthread"; then
123     AC_MSG_ERROR([No usable thread package found])
124 fi
125 AC_SUBST(empthread)
126 case $empthread in
127 LWP)    AC_DEFINE([EMPTH_LWP], 1, [Define to use LWP threads]) ;;
128 POSIX)  AC_DEFINE([EMPTH_POSIX], 1, [Define to use POSIX threads]) ;;
129 Windows) AC_DEFINE([EMPTH_W32], 1, [Define to use Windows threads]) ;;
130 esac
131
132 MY_WITH_TERMINFO
133 LIBS_client="$LIBS"
134
135
136 ### Output
137
138 LIBS="$LIBS_util"
139 AC_SUBST(LIBS_client)
140 AC_SUBST(LIBS_server)
141
142 AC_CONFIG_FILES([GNUmakefile])
143 AC_CONFIG_COMMANDS([stamp-h],
144         [case $revctrl in
145         git)
146             mkdir -p `cd $srcdir && git ls-files \
147                 | sed -n 's,/@<:@^/@:>@*$,,gp' | uniq`
148             ;;
149         *)
150             mkdir -p `sed s/.*=// <$srcdir/sources.mk | tr ' ' '\012' \
151                 | sed -n '/\//s,/@<:@^/@:>@*$,,gp'| uniq`
152         esac
153         mkdir -p info.html info.nr lib
154         touch stamp-h],
155         [revctrl=$revctrl])
156 AC_OUTPUT
157
158 AC_MSG_NOTICE([])
159 AC_MSG_NOTICE([-= Configuration summary =-])
160 AC_MSG_NOTICE([Thread package: $empthread])
161 AC_MSG_NOTICE([      terminfo: $with_terminfo])
162 AC_MSG_NOTICE([    EMPIREHOST: $EMPIREHOST])
163 AC_MSG_NOTICE([    EMPIREPORT: $EMPIREPORT])