Mercurial > hg > early-roguelike
comparison arogue7/configure.ac @ 156:3e1146666ae5
arogue7, xrogue: begin using autoconf.
File locations can be customized via './configure'. 'make install'
does not work yet. Options for wizard mode and load checks may not do
what is intended.
Fun fact: there's an enlightening epigraph in the introduction to the
autoconf manual.
author | John "Elwin" Edwards |
---|---|
date | Thu, 04 Jun 2015 10:41:39 -0400 |
parents | |
children | 5238b835d661 |
comparison
equal
deleted
inserted
replaced
155:1af259ac4ed2 | 156:3e1146666ae5 |
---|---|
1 # -*- Autoconf -*- | |
2 # Process this file with autoconf to produce a configure script. | |
3 | |
4 AC_PREREQ(2.56) | |
5 AC_INIT([ARogue],[7.7.1], [yendor@rogueforge.net]) | |
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 | |
15 AC_CHECK_HEADERS([pwd.h errno.h fcntl.h limits.h stdlib.h string.h sys/ioctl.h sys/utsname.h termios.h unistd.h utmp.h term.h ncurses/term.h process.h]) | |
16 | |
17 # Checks for typedefs, structures, and compiler characteristics. | |
18 AC_TYPE_SIZE_T | |
19 AC_STRUCT_TM | |
20 # Checks for library functions. | |
21 AC_FUNC_FORK | |
22 AC_PROG_GCC_TRADITIONAL | |
23 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK | |
24 AC_TYPE_SIGNAL | |
25 AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr _spawnl spawnl getpwuid loadav strerror setgid setuid getuid getgid]) | |
26 AC_PROG_INSTALL | |
27 | |
28 AC_ARG_WITH(program-name, AC_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="arogue7"] ) | |
29 PROGRAM=$progname | |
30 AC_SUBST(PROGRAM) | |
31 | |
32 AC_ARG_ENABLE(setgid, AC_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@]),[],[]) | |
33 AC_MSG_CHECKING([if using setgid execute bit]) | |
34 if test "x$enable_setgid" = "xno" ; then | |
35 GROUPOWNER= | |
36 elif test "x$enable_setgid" = "xyes" ; then | |
37 GROUPOWNER=games | |
38 elif test "x$enable_setgid" = "x" ; then | |
39 GROUPOWNER= | |
40 else | |
41 GROUPOWNER=$enable_setgid | |
42 fi | |
43 | |
44 if test "x$GROUPOWNER" != "x" ; then | |
45 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable]) | |
46 AC_MSG_RESULT([$GROUPOWNER]) | |
47 else | |
48 AC_MSG_RESULT([no]) | |
49 fi | |
50 | |
51 AC_SUBST(GROUPOWNER) | |
52 | |
53 AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[]) | |
54 AC_MSG_CHECKING([for scoreboard file]) | |
55 if test "x$enable_scorefile" = "xno" ; then | |
56 SCOREFILE= | |
57 elif test "x$enable_scorefile" = "xyes" ; then | |
58 SCOREFILE=$progname.scr | |
59 elif test "x$enable_scorefile" = "x" ; then | |
60 SCOREFILE=$progname.scr | |
61 else | |
62 SCOREFILE=$enable_scorefile | |
63 fi | |
64 | |
65 if test "x$SCOREFILE" != "x" ; then | |
66 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard]) | |
67 AC_MSG_RESULT([$SCOREFILE]) | |
68 else | |
69 AC_MSG_RESULT([disabled]) | |
70 fi | |
71 | |
72 AC_SUBST(SCOREFILE) | |
73 | |
74 AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[]) | |
75 AC_MSG_CHECKING([for log file]) | |
76 if test "x$enable_logfile" = "xno" ; then | |
77 LOGFILE= | |
78 elif test "x$enable_logfile" = "xyes" ; then | |
79 LOGFILE=$progname.log | |
80 elif test "x$enable_logfile" = "x" ; then | |
81 LOGFILE=$progname.log | |
82 else | |
83 LOGFILE=$enable_logfile | |
84 fi | |
85 | |
86 if test "x$LOGFILE" != "x" ; then | |
87 AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log]) | |
88 AC_MSG_RESULT([$LOGFILE]) | |
89 else | |
90 AC_MSG_RESULT([disabled]) | |
91 fi | |
92 | |
93 AC_SUBST(LOGFILE) | |
94 | |
95 AC_ARG_ENABLE([savedir],[AC_HELP_STRING([--enable-savedir=SAVEDIR], [enable systemwide location for saved games])],[],[enable_savedir="no"]) | |
96 AC_MSG_CHECKING([for save directory]) | |
97 if test "x$enable_savedir" = "xno" ; then | |
98 SAVEDIR= | |
99 elif test "x$enable_savedir" = "xyes" -o "x$enable_savedir" = "x"; then | |
100 if text "x$GROUPOWNER" != "x"; then | |
101 SAVEDIR="/var/local/games/roguelike/${progname}save/" | |
102 else | |
103 SAVEDIR="$progname/" | |
104 fi | |
105 else | |
106 SAVEDIR="$enable_savedir" | |
107 fi | |
108 | |
109 if test "x$SAVEDIR" != "x" ; then | |
110 AC_DEFINE_UNQUOTED([SAVEDIR], ["$SAVEDIR"], [Define to systemwide directory for storing saved games]) | |
111 AC_MSG_RESULT([$SAVEDIR]) | |
112 else | |
113 AC_MSG_RESULT([disabled]) | |
114 fi | |
115 | |
116 AC_SUBST(SAVEDIR) | |
117 | |
118 AC_ARG_ENABLE([wizardmode],[AC_HELP_STRING([--enable-wizardmode], [enable availability of wizard mode @<:@default=no@:>@])],[],[]) | |
119 AC_MSG_CHECKING([if wizard mode is enabled]) | |
120 if test "x$enable_wizardmode" = "xno" ; then | |
121 AC_MSG_RESULT([no]) | |
122 elif test "x$enable_wizardmode" = "x" ; then | |
123 AC_MSG_RESULT([no]) | |
124 else | |
125 AC_DEFINE([WIZARD], [], [Define to include wizard mode]) | |
126 AC_MSG_RESULT([yes]) | |
127 fi | |
128 | |
129 AC_ARG_ENABLE([limitscore],[AC_HELP_STRING([--enable-limitscore], [limit scores to one per class per uid @<:@default=no@:>@])],[],[]) | |
130 AC_MSG_CHECKING([if limiting scores]) | |
131 if test "x$enable_limitscore" = "xno" ; then | |
132 AC_MSG_RESULT([no]) | |
133 elif test "x$enable_limitscore" = "x" ; then | |
134 AC_MSG_RESULT([no]) | |
135 else | |
136 AC_DEFINE([LIMITSCORE], [], [Define to limit scores to one per class per uid]) | |
137 AC_MSG_RESULT([yes]) | |
138 fi | |
139 | |
140 AC_ARG_ENABLE([maxusers],[AC_HELP_STRING([--enable-maxusers], [enable maxuser @<:@default=no@:>@])],[],[]) | |
141 AC_MSG_CHECKING([runtime execution limit (maximum online system users)]) | |
142 if test "x$enable_maxusers" = "xyes" ; then | |
143 AC_DEFINE([MAXUSERS], [100], [Define if maxusers feature should be enabled]) | |
144 AC_MSG_RESULT([100]) | |
145 elif test "x$enable_maxusers" = "x" ; then | |
146 AC_MSG_RESULT([unlimited]) | |
147 elif test "x$enable_maxusers" = "xno" ; then | |
148 AC_MSG_RESULT([unlimited]) | |
149 else | |
150 AC_DEFINE_UNQUOTED([MAXUSERS], [$enable_maxusers], [Define if maxusers feature should be enabled]) | |
151 AC_MSG_RESULT([$enable_maxusers]) | |
152 fi | |
153 | |
154 AC_OUTPUT |