annotate urogue/configure.ac @ 291:5b6855d5d089

Fix a portability issue with md_hasclreol(). Some games' implementation of md_hasclreol() poked around in ncurses internals, which does not work for some ncurses build configuration. Most games did not actually call md_hasclreol(), so it was removed. There is a standard terminfo function which can retrieve the value of the clr_eol capability, so this was used for rogue5.
author John "Elwin" Edwards
date Wed, 27 Dec 2017 10:26:06 -0500
parents b8919055c2fc
children fe6b7a1a6dfc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
273
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
1 # -*- Autoconf -*-
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
2 # Process this file with autoconf to produce a configure script.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
3
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
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
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
6 AC_CONFIG_HEADERS([config.h])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
7 AC_CONFIG_FILES([Makefile])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
8
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
9 # Checks for programs.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
10 AC_PROG_CC
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
11 # Checks for libraries.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
12 MP_WITH_CURSES
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
13 # Checks for header files.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
14 AC_HEADER_STDC
284
6376b514a30b Fix more header-related warnings.
John "Elwin" Edwards
parents: 275
diff changeset
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
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
16
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
17 # Checks for typedefs, structures, and compiler characteristics.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
18 AC_TYPE_UID_T
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
19 AC_TYPE_SIZE_T
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
20 AC_STRUCT_TM
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
21 # Checks for library functions.
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
22 AC_FUNC_FORK
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
23 AC_PROG_GCC_TRADITIONAL
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
24 AC_FUNC_LSTAT
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
25 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
26 AC_TYPE_SIGNAL
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
27 AC_FUNC_STAT
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
28 AC_FUNC_VPRINTF
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
29 AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr nlist _spawnl spawnl getpwuid loadav getloadavg strerror setgid setuid getuid getgid])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
30 AC_PROG_INSTALL
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
31
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
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
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
36
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
37 AC_ARG_WITH(program-name, AC_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="urogue"] )
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
38 PROGRAM=$progname
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
39 AC_SUBST(PROGRAM)
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
40
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
41 AC_ARG_ENABLE(setgid, AC_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@]),[],[])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
42 AC_MSG_CHECKING([if using setgid execute bit])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
43 if test "x$enable_setgid" = "xno" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
44 GROUPOWNER=
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
45 elif test "x$enable_setgid" = "xyes" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
46 GROUPOWNER=games
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
47 elif test "x$enable_setgid" = "x" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
48 GROUPOWNER=
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
49 else
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
50 GROUPOWNER=$enable_setgid
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
51 fi
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
52
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
53 if test "x$GROUPOWNER" != "x" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
54 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
55 AC_MSG_RESULT([$GROUPOWNER])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
56 else
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
57 AC_MSG_RESULT([no])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
58 fi
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
59
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
60 AC_SUBST(GROUPOWNER)
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
61
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
62 AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
63 AC_MSG_CHECKING([for scoreboard file])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
64 if test "x$enable_scorefile" = "xno" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
65 SCOREFILE=
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
66 elif test "x$enable_scorefile" = "xyes" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
67 SCOREFILE=$progname.scr
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
68 elif test "x$enable_scorefile" = "x" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
69 SCOREFILE=$progname.scr
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
70 else
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
71 SCOREFILE=$enable_scorefile
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
72 fi
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
73
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
74 if test "x$SCOREFILE" != "x" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
75 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
76 AC_MSG_RESULT([$SCOREFILE])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
77 else
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
78 AC_MSG_RESULT([disabled])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
79 fi
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
80
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
81 AC_SUBST(SCOREFILE)
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
82
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
83 AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
84 AC_MSG_CHECKING([for log file])
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
85 if test "x$enable_logfile" = "xno" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
86 LOGFILE=
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
87 elif test "x$enable_logfile" = "xyes" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
88 LOGFILE=$progname.log
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
89 elif test "x$enable_logfile" = "x" ; then
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
90 LOGFILE=$progname.log
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
91 else
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
92 LOGFILE=$enable_logfile
51ddbe7b992d UltraRogue: begin autoconfiscation.
John "Elwin" Edwards
parents:
diff changeset
93 fi
51ddbe7b992d UltraRogue: begin autoconfiscation.