annotate rogue4/configure.ac @ 182:1fe660009fd3

rogue4: don't try to close the scorefile if it isn't open. The MSVC library uses a debug assertion to prevent closing file descriptors that are negative. This is always the case with the scoreboard file descriptor if the scoreboard has been compiled out.
author John "Elwin" Edwards
date Fri, 31 Jul 2015 20:12:33 -0400
parents 5238b835d661
children 0e99eade579c
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 # May not be needed for the documentation
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
9 AC_CONFIG_FILES([Makefile rogue.6 rogue.me])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
10
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
11 # Checks for programs.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
12 AC_PROG_CC
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
13 # Checks for libraries.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
14 MP_WITH_CURSES
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
15 # Checks for header files.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
16 AC_HEADER_STDC
122
65f3da34578a rogue4, arogue5: improve portability.
John "Elwin" Edwards
parents: 93
diff changeset
17 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
18
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
19 # Checks for typedefs, structures, and compiler characteristics.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
20 AC_TYPE_UID_T
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
21 AC_TYPE_SIZE_T
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
22 AC_STRUCT_TM
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
23 # Checks for library functions.
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
24 AC_FUNC_FORK
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
25 AC_PROG_GCC_TRADITIONAL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
26 AC_FUNC_LSTAT
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
27 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
28 AC_TYPE_SIGNAL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
29 AC_FUNC_STAT
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
30 AC_FUNC_VPRINTF
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
31 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
32 AC_PROG_INSTALL
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
33
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
34 # Programs to process the documentation
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
35 AC_CHECK_PROG([NROFF], [nroff], [nroff],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
36 AC_CHECK_PROG([GROFF], [groff], [groff],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
37 AC_CHECK_PROG([COLCRT], [colcrt], [colcrt],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
38 AC_CHECK_PROG([TBL], [tbl], [tbl],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
39 AC_CHECK_PROG([SED], [sed], [sed],)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
40
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
41 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
42 PROGRAM=$progname
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
43 AC_SUBST(PROGRAM)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
44
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
45 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
46 AC_MSG_CHECKING([if using setgid execute bit])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
47 if test "x$enable_setgid" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
48 GROUPOWNER=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
49 elif test "x$enable_setgid" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
50 GROUPOWNER=games
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
51 elif test "x$enable_setgid" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
52 GROUPOWNER=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
53 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
54 GROUPOWNER=$enable_setgid
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
55 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
56
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
57 if test "x$GROUPOWNER" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
58 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
59 AC_MSG_RESULT([$GROUPOWNER])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
60 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
61 AC_MSG_RESULT([no])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
62 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
63
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
64 AC_SUBST(GROUPOWNER)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
65
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
66 AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
67 AC_MSG_CHECKING([for scoreboard file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
68 if test "x$enable_scorefile" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
69 SCOREFILE=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
70 elif test "x$enable_scorefile" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
71 SCOREFILE=$progname.scr
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
72 elif test "x$enable_scorefile" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
73 SCOREFILE=$progname.scr
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
74 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
75 SCOREFILE=$enable_scorefile
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
76 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
77
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
78 if test "x$SCOREFILE" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
79 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
80 AC_MSG_RESULT([$SCOREFILE])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
81 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
82 AC_MSG_RESULT([disabled])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
83 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
84
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
85 AC_SUBST(SCOREFILE)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
86
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
87 AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
88 AC_MSG_CHECKING([for log file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
89 if test "x$enable_logfile" = "xno" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
90 LOGFILE=
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
91 elif test "x$enable_logfile" = "xyes" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
92 LOGFILE=$progname.log
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
93 elif test "x$enable_logfile" = "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
94 LOGFILE=$progname.log
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
95 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
96 LOGFILE=$enable_logfile
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
97 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
98
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
99 if test "x$LOGFILE" != "x" ; then
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
100 AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
101 AC_MSG_RESULT([$LOGFILE])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
102 else
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
103 AC_MSG_RESULT([disabled])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
104 fi
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
105
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
106 AC_SUBST(LOGFILE)
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
107
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
108 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
109 AC_MSG_CHECKING([for scoreboard lockfile file])
a1dc75e38e73 rogue4: ported to autoconf.
elwin
parents:
diff changeset
110 if test "x$enable_lockfile" = "xno" ; then