annotate rogue4/configure.ac @ 245:e7aab31362af

Rogue V[345], Super-Rogue: Fix violet fungi/venus flytraps. Violet fungi (renamed venus flytraps in Rogue V5) do an increasing amount of damage each time they hit. If they miss, you still suffer the same number of HP. This worked by keeping a counter and printing new damage strings into monsters[5].m_stats.s_dmg, which is the "prototype" of that particular monster. Each individual monster has its own damage string. Apparently these were once char *, pointing to the same string as the prototype. When the s_dmg member was changed to be an internal char array, changing the prototype's damage string no longer had any effect on actual monsters. As a result, flytraps did no damage on a hit, or only one point in V5. The mechanism for doing damage on a miss continued to work. This has been fixed by overwriting the individual monster's damage string instead of the prototype's. It is now no longer necessary to reset the damage string when the flytrap is killed. The method for resetting it when the hero teleports away had to be modified. Comments referencing the long-unused xstr have been removed.
author John "Elwin" Edwards
date Sun, 01 May 2016 19:39:56 -0400
parents 0e99eade579c
children c222f9d56776
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
51
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
1 # -*- Autoconf -*-
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
2 # Process this file with autoconf to produce a configure script.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
3
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
4 AC_PREREQ(2.56)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
5 AC_INIT([Rogue],[5.2.2], [yendor@rogueforge.net])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
6 AC_CONFIG_SRCDIR([armor.c])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
7 AC_CONFIG_HEADERS([config.h])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
8 AC_CONFIG_FILES([Makefile rogue.6 rogue.me])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
9
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
10 # Checks for programs.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
11 AC_PROG_CC
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
12 # Checks for libraries.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
13 MP_WITH_CURSES
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
14 # Checks for header files.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
15 AC_HEADER_STDC
122
65f3da34578a rogue4, arogue5: improve portability.
John "Elwin" Edwards
parents: 93
diff changeset
16 AC_CHECK_HEADERS([arpa/inet.h sys/utsname.h pwd.h fcntl.h limits.h nlist.h stdlib.h string.h sys/ioctl.h termios.h unistd.h utmpx.h term.h ncurses/term.h process.h])
51
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
17
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
18 # Checks for typedefs, structures, and compiler characteristics.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
19 AC_TYPE_UID_T
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
20 AC_TYPE_SIZE_T
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
21 AC_STRUCT_TM
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
22 # Checks for library functions.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
23 AC_FUNC_FORK
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
24 AC_PROG_GCC_TRADITIONAL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
25 AC_FUNC_LSTAT
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
26 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
27 AC_TYPE_SIGNAL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
28 AC_FUNC_STAT
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
29 AC_FUNC_VPRINTF
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
30 AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr nlist _spawnl spawnl getpwuid loadav getloadavg strerror setgid setuid getuid getgid])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
31 AC_PROG_INSTALL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
32
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
33 # Programs to process the documentation
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
34 AC_CHECK_PROG([NROFF], [nroff], [nroff],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
35 AC_CHECK_PROG([GROFF], [groff], [groff],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
36 AC_CHECK_PROG([COLCRT], [colcrt], [colcrt],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
37 AC_CHECK_PROG([TBL], [tbl], [tbl],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
38
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
39 AC_ARG_WITH(program-name, AC_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="rogue4"] )
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
40 PROGRAM=$progname
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
41 AC_SUBST(PROGRAM)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
42
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
43 AC_ARG_ENABLE(setgid, AC_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
44 AC_MSG_CHECKING([if using setgid execute bit])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
45 if test "x$enable_setgid" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
46 GROUPOWNER=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
47 elif test "x$enable_setgid" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
48 GROUPOWNER=games
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
49 elif test "x$enable_setgid" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
50 GROUPOWNER=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
51 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
52 GROUPOWNER=$enable_setgid
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
53 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
54
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
55 if test "x$GROUPOWNER" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
56 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
57 AC_MSG_RESULT([$GROUPOWNER])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
58 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
59 AC_MSG_RESULT([no])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
60 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
61
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
62 AC_SUBST(GROUPOWNER)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
63
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
64 AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
65 AC_MSG_CHECKING([for scoreboard file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
66 if test "x$enable_scorefile" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
67 SCOREFILE=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
68 elif test "x$enable_scorefile" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
69 SCOREFILE=$progname.scr
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
70 elif test "x$enable_scorefile" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
71 SCOREFILE=$progname.scr
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
72 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
73 SCOREFILE=$enable_scorefile
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
74 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
75
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
76 if test "x$SCOREFILE" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
77 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
78 AC_MSG_RESULT([$SCOREFILE])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
79 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
80 AC_MSG_RESULT([disabled])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
81 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
82
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
83 AC_SUBST(SCOREFILE)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
84
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
85 AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
86 AC_MSG_CHECKING([for log file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
87 if test "x$enable_logfile" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
88 LOGFILE=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
89 elif test "x$enable_logfile" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
90 LOGFILE=$progname.log
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
91 elif test "x$enable_logfile" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
92 LOGFILE=$progname.log
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
93 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
94 LOGFILE=$enable_logfile
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
95 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
96
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
97 if test "x$LOGFILE" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
98 AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
99 AC_MSG_RESULT([$LOGFILE])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
100 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
101 AC_MSG_RESULT([disabled])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
102 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
103
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
104 AC_SUBST(LOGFILE)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
105
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
106 AC_ARG_ENABLE([lockfile],[AC_HELP_STRING([--enable-lockfile=LOCKFILE], [enable scoreboard lockfile with given filename])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
107 AC_MSG_CHECKING([for scoreboard lockfile file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
108 if test "x$enable_lockfile" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
109 LOCKFILE=
a1dc75e38e73 rogue4: ported to autoconf.