170 lines
5 KiB
Text
170 lines
5 KiB
Text
# -*- Autoconf -*-
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
AC_PREREQ(2.56)
|
|
AC_INIT([UltraRogue],[1.07], [yendor@rogueforge.net])
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_FILES([Makefile])
|
|
|
|
# Checks for programs.
|
|
AC_PROG_CC
|
|
# Checks for libraries.
|
|
MP_WITH_CURSES
|
|
# Checks for header files.
|
|
AC_HEADER_STDC
|
|
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])
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
AC_TYPE_UID_T
|
|
AC_TYPE_SIZE_T
|
|
AC_STRUCT_TM
|
|
# Checks for library functions.
|
|
AC_FUNC_FORK
|
|
AC_PROG_GCC_TRADITIONAL
|
|
AC_FUNC_LSTAT
|
|
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
|
|
AC_TYPE_SIGNAL
|
|
AC_FUNC_STAT
|
|
AC_FUNC_VPRINTF
|
|
AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr nlist _spawnl spawnl getpwuid loadav getloadavg strerror setgid setuid getuid getgid])
|
|
AC_PROG_INSTALL
|
|
|
|
# Programs to process the documentation
|
|
AC_CHECK_PROG([NROFF], [nroff], [nroff],)
|
|
AC_CHECK_PROG([GROFF], [groff], [groff],)
|
|
AC_CHECK_PROG([COLCRT], [colcrt], [colcrt],)
|
|
|
|
AC_ARG_WITH(program-name, AC_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="urogue"] )
|
|
PROGRAM=$progname
|
|
AC_SUBST(PROGRAM)
|
|
|
|
AC_ARG_ENABLE(setgid, AC_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@]),[],[])
|
|
AC_MSG_CHECKING([if using setgid execute bit])
|
|
if test "x$enable_setgid" = "xno" ; then
|
|
GROUPOWNER=
|
|
elif test "x$enable_setgid" = "xyes" ; then
|
|
GROUPOWNER=games
|
|
elif test "x$enable_setgid" = "x" ; then
|
|
GROUPOWNER=
|
|
else
|
|
GROUPOWNER=$enable_setgid
|
|
fi
|
|
|
|
if test "x$GROUPOWNER" != "x" ; then
|
|
AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable])
|
|
AC_MSG_RESULT([$GROUPOWNER])
|
|
else
|
|
AC_MSG_RESULT([no])
|
|
fi
|
|
|
|
AC_SUBST(GROUPOWNER)
|
|
|
|
AC_ARG_ENABLE([scorefile],[AC_HELP_STRING([--enable-scorefile=SCOREFILE], [enable scoreboard with given filename])],[],[])
|
|
AC_MSG_CHECKING([for scoreboard file])
|
|
if test "x$enable_scorefile" = "xno" ; then
|
|
SCOREFILE=
|
|
elif test "x$enable_scorefile" = "xyes" ; then
|
|
SCOREFILE=$progname.scr
|
|
elif test "x$enable_scorefile" = "x" ; then
|
|
SCOREFILE=$progname.scr
|
|
else
|
|
SCOREFILE=$enable_scorefile
|
|
fi
|
|
|
|
if test "x$SCOREFILE" != "x" ; then
|
|
AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard])
|
|
AC_MSG_RESULT([$SCOREFILE])
|
|
else
|
|
AC_MSG_RESULT([disabled])
|
|
fi
|
|
|
|
AC_SUBST(SCOREFILE)
|
|
|
|
AC_ARG_ENABLE([logfile],[AC_HELP_STRING([--enable-logfile=LOGFILE], [enable logfile with given filename])],[],[])
|
|
AC_MSG_CHECKING([for log file])
|
|
if test "x$enable_logfile" = "xno" ; then
|
|
LOGFILE=
|
|
elif test "x$enable_logfile" = "xyes" ; then
|
|
LOGFILE=$progname.log
|
|
elif test "x$enable_logfile" = "x" ; then
|
|
LOGFILE=$progname.log
|
|
else
|
|
LOGFILE=$enable_logfile
|
|
fi
|
|
|
|
if test "x$LOGFILE" != "x" ; then
|
|
AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log])
|
|
AC_MSG_RESULT([$LOGFILE])
|
|
else
|
|
AC_MSG_RESULT([disabled])
|
|
fi
|
|
|
|
AC_SUBST(LOGFILE)
|
|
|
|
AC_ARG_ENABLE([savedir],[AC_HELP_STRING([--enable-savedir=SAVEDIR], [enable systemwide location for saved games])],[],[enable_savedir="no"])
|
|
AC_MSG_CHECKING([for save directory])
|
|
if test "x$enable_savedir" = "xno" ; then
|
|
SAVEDIR=
|
|
elif test "x$enable_savedir" = "xyes" -o "x$enable_savedir" = "x"; then
|
|
if test "x$GROUPOWNER" != "x"; then
|
|
SAVEDIR="/var/local/games/roguelike/${progname}save/"
|
|
else
|
|
SAVEDIR="$progname/"
|
|
fi
|
|
else
|
|
SAVEDIR="$enable_savedir"
|
|
fi
|
|
|
|
if test "x$SAVEDIR" != "x" ; then
|
|
AC_DEFINE_UNQUOTED([SAVEDIR], ["$SAVEDIR"], [Define to systemwide directory for storing saved games])
|
|
AC_MSG_RESULT([$SAVEDIR])
|
|
else
|
|
AC_MSG_RESULT([disabled])
|
|
fi
|
|
|
|
AC_SUBST(SAVEDIR)
|
|
|
|
AC_ARG_ENABLE([chardir],[AC_HELP_STRING([--enable-chardir=CHARDIR], [enable systemwide location for character files])],[],[enable_chardir="no"])
|
|
AC_MSG_CHECKING([for character directory])
|
|
if test "x$enable_chardir" = "xno" ; then
|
|
CHARDIR=
|
|
elif test "x$enable_chardir" = "xyes" -o "x$enable_chardir" = "x"; then
|
|
if test "x$GROUPOWNER" != "x"; then
|
|
CHARDIR="/var/local/games/roguelike/${progname}char/"
|
|
else
|
|
CHARDIR="$progname/"
|
|
fi
|
|
else
|
|
CHARDIR="$enable_chardir"
|
|
fi
|
|
|
|
if test "x$CHARDIR" != "x" ; then
|
|
AC_DEFINE_UNQUOTED([CHARDIR], ["$CHARDIR"], [Define to systemwide directory for storing character files])
|
|
AC_MSG_RESULT([$CHARDIR])
|
|
else
|
|
AC_MSG_RESULT([disabled])
|
|
fi
|
|
|
|
AC_SUBST(CHARDIR)
|
|
|
|
AC_ARG_ENABLE([wizardmode],[AC_HELP_STRING([--enable-wizardmode], [enable availability of wizard mode @<:@default=no@:>@])],[],[])
|
|
AC_MSG_CHECKING([if wizard mode is enabled])
|
|
if test "x$enable_wizardmode" = "xno" ; then
|
|
AC_MSG_RESULT([no])
|
|
elif test "x$enable_wizardmode" = "x" ; then
|
|
AC_MSG_RESULT([no])
|
|
else
|
|
AC_DEFINE([WIZARD], [], [Define to include wizard mode])
|
|
AC_MSG_RESULT([yes])
|
|
fi
|
|
|
|
AC_MSG_CHECKING([whether to docdir is defined])
|
|
if test "x$docdir" = "x" ; then
|
|
AC_MSG_RESULT([docdir undefined])
|
|
docdir=\${datadir}/doc/\${PACKAGE_TARNAME}
|
|
AC_SUBST(docdir)
|
|
else
|
|
AC_MSG_RESULT([docdir defined])
|
|
fi
|
|
|
|
AC_OUTPUT
|