Mercurial > hg > early-roguelike
annotate urogue/configure.ac @ 294:fe6b7a1a6dfc
Improve the documentation build process.
The choice between troff implementations is now made at configure time,
rather than using shell logic in the Makefile to choose while building.
author | John "Elwin" Edwards |
---|---|
date | Sat, 30 Dec 2017 14:15:52 -0500 |
parents | b8919055c2fc |
children | 029c1f5c5588 |
rev | line source |
---|---|
273 | 1 # -*- Autoconf -*- |
2 # Process this file with autoconf to produce a configure script. | |
3 | |
4 AC_PREREQ(2.56) | |
287
0b3d1b38998f
Remove version numbers from docdir paths.
John "Elwin" Edwards
parents:
284
diff
changeset
|
5 AC_INIT([UltraRogue],[1.07], [yendor@rogueforge.net], [urogue]) |
273 | 6 AC_CONFIG_HEADERS([config.h]) |
7 AC_CONFIG_FILES([Makefile]) | |
8 | |
9 # Checks for programs. | |
10 AC_PROG_CC | |
11 # Checks for libraries. | |
12 MP_WITH_CURSES | |
13 # Checks for header files. | |
14 AC_HEADER_STDC | |
284 | 15 AC_CHECK_HEADERS([pwd.h errno.h fcntl.h limits.h nlist.h stdlib.h string.h sys/ioctl.h termios.h unistd.h utmp.h utmpx.h term.h ncurses/term.h process.h arpa/inet.h]) |
273 | 16 |
17 # Checks for typedefs, structures, and compiler characteristics. | |
18 AC_TYPE_UID_T | |
19 AC_TYPE_SIZE_T | |
20 AC_STRUCT_TM | |
21 # Checks for library functions. | |
22 AC_FUNC_FORK | |
23 AC_PROG_GCC_TRADITIONAL | |
24 AC_FUNC_LSTAT | |
25 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK | |
26 AC_TYPE_SIGNAL | |
27 AC_FUNC_STAT | |
28 AC_FUNC_VPRINTF | |
29 AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr nlist _spawnl spawnl getpwuid loadav getloadavg strerror setgid setuid getuid getgid]) | |
30 AC_PROG_INSTALL | |
31 | |
32 # Programs to process the documentation | |
275
aa0eefcd7df6
UltraRogue: build and install documentation in the Makefile.
John "Elwin" Edwards
parents:
273
diff
changeset
|
33 AC_CHECK_PROG([NROFF], [nroff], [nroff],) |
aa0eefcd7df6
UltraRogue: build and install documentation in the Makefile.
John "Elwin" Edwards
parents:
273
diff
changeset
|
34 AC_CHECK_PROG([GROFF], [groff], [groff],) |
aa0eefcd7df6
UltraRogue: build and install documentation in the Makefile.
John "Elwin" Edwards
parents:
273
diff
changeset
|
35 AC_CHECK_PROG([COLCRT], [colcrt], [colcrt],) |
273 | 36 |
294
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
37 if test "x$GROFF" != "x" ; then |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
38 DOCS_GROFF= |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
39 DOCS_NROFF=.no-nroff |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
40 DOCS_NONE=.none |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
41 elif test "x$(NROFF)" != "x" && test "x$(COLCRT)" != "x" ; then |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
42 DOCS_GROFF=.no-groff |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
43 DOCS_NROFF= |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
44 DOCS_NONE=.none |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
45 else |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
46 DOCS_GROFF=.no-groff |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
47 DOCS_NROFF=.no-nroff |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
48 DOCS_NONE= |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
49 fi |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
50 |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
51 AC_SUBST(DOCS_GROFF) |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
52 AC_SUBST(DOCS_NROFF) |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
53 AC_SUBST(DOCS_NONE) |
fe6b7a1a6dfc
Improve the documentation build process.
John "Elwin" Edwards
parents:
288
diff
changeset
|
54 |
273 | 55 AC_ARG_WITH(program-name, AC_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="urogue"] ) |
56 PROGRAM=$progname | |
57 AC_SUBST(PROGRAM) | |
58 | |
59 AC_ARG_ENABLE(setgid, AC_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@]),[],[]) | |
60 AC_MSG_CHECKING([if using setgid execute bit]) | |
61 if test "x$enable_setgid" = "xno" ; then | |
62 GROUPOWNER= | |
63 elif test "x$enable_setgid" = "xyes" ; then | |
64 GROUPOWNER=games | |
65 elif test "x$enable_setgid" = "x" ; then | |
66 GROUPOWNER= | |
67 else | |
68 GROUPOWNER=$enable_setgid | |
69 fi | |
70 | |
71 if test "x$GROUPOWNER" != "x" ; then | |
72 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable]) | |
73 AC_MSG_RESULT([$GROUPOWNER]) | |
74 else | |
75 AC_MSG_RESULT([no]) | |
76 fi | |
77 | |
78 AC_SUBST(GROUPOWNER) | |
79 | |
80 AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[]) | |
81 AC_MSG_CHECKING([for scoreboard file]) | |
82 if test "x$enable_scorefile" = "xno" ; then | |
83 SCOREFILE= | |
84 elif test "x$enable_scorefile" = "xyes" ; then | |
85 SCOREFILE=$progname.scr | |
86 elif test "x$enable_scorefile" = "x" ; then | |
87 SCOREFILE=$progname.scr | |
88 else | |
89 SCOREFILE=$enable_scorefile | |
90 fi | |
91 | |
92 if test "x$SCOREFILE" != "x" ; then | |
93 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard]) | |
94 AC_MSG_RESULT([$SCOREFILE]) | |
95 else | |
96 AC_MSG_RESULT([disabled]) | |
97 fi | |
98 | |
99 AC_SUBST(SCOREFILE) | |
100 | |
101 AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[]) | |
102 AC_MSG_CHECKING([for log file]) | |
103 if test "x$enable_logfile" = "xno" ; then | |
104 LOGFILE= | |
105 elif test "x$enable_logfile" = "xyes" ; then | |
106 LOGFILE=$progname.log | |
107 elif test "x$enable_logfile" = "x" ; then | |
108 LOGFILE=$progname.log | |
109 else | |
110 LOGFILE=$enable_logfile | |
111 fi | |
112 | |
113 if test "x$LOGFILE" != "x" ; then | |
114 AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log]) | |
115 AC_MSG_RESULT([$LOGFILE]) | |
116 else | |
117 AC_MSG_RESULT([disabled]) | |
118 fi | |
119 | |
120 AC_SUBST(LOGFILE) | |
121 | |
122 AC_ARG_ENABLE([savedir],[AC_HELP_STRING([--enable-savedir=SAVEDIR], [enable systemwide location for saved games])],[],[enable_savedir="no"]) | |
123 AC_MSG_CHECKING([for save directory]) | |
124 if test "x$enable_savedir" = "xno" ; then | |
125 SAVEDIR= | |
126 elif test "x$enable_savedir" = "xyes" -o "x$enable_savedir" = "x"; then | |
127 if test "x$GROUPOWNER" != "x"; then | |
128 SAVEDIR="/var/local/games/roguelike/${progname}save/" | |
129 else | |
130 SAVEDIR="$progname/" | |
131 fi | |
132 else | |
133 SAVEDIR="$enable_savedir" | |
134 fi | |
135 | |
136 if test "x$SAVEDIR" != "x" ; then | |
137 AC_DEFINE_UNQUOTED([SAVEDIR], ["$SAVEDIR"], [Define to systemwide directory for storing saved games]) | |
138 AC_MSG_RESULT([$SAVEDIR]) | |
139 else | |
140 AC_MSG_RESULT([disabled]) | |
141 fi | |
142 | |
143 AC_SUBST(SAVEDIR) | |
144 | |
145 AC_ARG_ENABLE([chardir],[AC_HELP_STRING([--enable-chardir=CHARDIR], [enable systemwide location for character files])],[],[enable_chardir="no"]) | |
146 AC_MSG_CHECKING([for character directory]) | |
147 if test "x$enable_chardir" = "xno" ; then | |
148 CHARDIR= | |
149 elif test "x$enable_chardir" = "xyes" -o "x$enable_chardir" = "x"; then | |
150 if test "x$GROUPOWNER" != "x"; then | |
151 CHARDIR="/var/local/games/roguelike/${progname}char/" | |
152 else | |
153 CHARDIR="$progname/" | |
154 fi | |
155 else | |
156 CHARDIR="$enable_chardir" | |
157 fi | |
158 | |
159 if test "x$CHARDIR" != "x" ; then | |
160 AC_DEFINE_UNQUOTED([CHARDIR], ["$CHARDIR"], [Define to systemwide directory for storing character files]) | |
161 AC_MSG_RESULT([$CHARDIR]) | |
162 else | |
163 AC_MSG_RESULT([disabled]) | |
164 fi | |
165 | |
166 AC_SUBST(CHARDIR) | |
167 | |
168 AC_ARG_ENABLE([wizardmode],[AC_HELP_STRING([--enable-wizardmode], [enable availability of wizard mode @<:@default=no@:>@])],[],[]) | |
169 AC_MSG_CHECKING([if wizard mode is enabled]) | |
170 if test "x$enable_wizardmode" = "xno" ; then | |
171 AC_MSG_RESULT([no]) | |
172 elif test "x$enable_wizardmode" = "x" ; then | |
173 AC_MSG_RESULT([no]) | |
174 else | |
175 AC_DEFINE([WIZARD], [], [Define to include wizard mode]) | |
176 AC_MSG_RESULT([yes]) | |
177 fi | |
178 | |
288
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
179 AC_ARG_ENABLE([memdebug],[AC_HELP_STRING([--enable-memdebug], [enable built-in memory checking @<:@default=no@:>@])],[],[]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
180 AC_MSG_CHECKING([if memory checking is enabled]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
181 if test "x$enable_memdebug" = "xno" ; then |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
182 AC_MSG_RESULT([no]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
183 elif test "x$enable_memdebug" = "x" ; then |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
184 AC_MSG_RESULT([no]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
185 else |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
186 AC_DEFINE([MEM_DEBUG], [], [Define to enable built-in memory checking]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
187 AC_MSG_RESULT([yes]) |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
188 fi |
b8919055c2fc
UltraRogue: compile out the built-in memory checking.
John "Elwin" Edwards
parents:
287
diff
changeset
|
189 |
273 | 190 AC_OUTPUT |