1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
AC_INIT
AC_CONFIG_SRCDIR([src/main.cc])
AM_INIT_AUTOMAKE(devtodo,0.1.20)
# We don't want the util source to be made into a shared lib as it's
# only used locally
AC_DISABLE_SHARED
AM_PROG_LIBTOOL
AC_PROG_CXX
AC_PROG_INSTALL
AC_PROG_LN_S
AC_LANG([C++])
# Extra options
AC_ARG_ENABLE(debug,
[ --enable-debug enable debugging CXXFLAGS (-Wall -g) [off]],
[case "${enableval}" in
yes) debug=true; CXXFLAGS="-Wall -g" ;;
no) debug=false ;;
*) AC_MSG_ERROR(--enable-debug expects either yes or no) ;;
esac], [debug=false])
AM_CONDITIONAL(DEBUG, test x$debug = xtrue)
# Don't use termcap to obtain window size
AC_ARG_WITH(termcap, [ --without-termcap don't use termcap to obtain terminal width])
if test "${with_termcap}_" = _ -o "${with_termcap}_" = yes; then
AC_DEFINE(USETERMCAP, 1, [ Use termcap to get terminal width])
fi
# Check for various headers and functions - although I'm not doing anything
# with them yet
AC_CHECK_HEADERS(regex.h string utility iterator stdexcept list map vector \
typeinfo ctype.h stack iostream fstream ctime)
AC_CHECK_FUNCS(regcomp ctime time unlink isatty strncmp)
dnl The autoconf test for strftime is broken now (due to gcc 3.3 bug?):
dnl Gcc 3.3 testprog = ``extern "C" char strftime;'', build with g++ test.cc
dnl breaks with:
dnl test.cc:1: error: nonnull argument with out-of-range operand number
dnl (arg 1, operand 3)
AC_MSG_CHECKING(for strftime)
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM([#include <time.h>],
[[
char * s;
time_t t = time(NULL);
size_t x = strftime(s, 5, "%a", localtime(&t));
]]
)],
[
AC_DEFINE(HAVE_STRFTIME, 1, [Define to 1 if you have the 'strftime' func
tion.])
AC_MSG_RESULT(yes)
],
[AC_MSG_RESULT(no)])
# Check for readline - modified heavily from librep
# check for terminal library
# this is a very cool solution from octave's configure.in
unset tcap
for termlib in ncurses curses termcap terminfo termlib; do
AC_CHECK_LIB(${termlib}, tputs, [tcap="$tcap -l$termlib"])
case "$tcap" in
*-l${termlib}*)
break
;;
esac
done
AC_CHECK_LIB(readline, readline,[READLINE_LIBS="-lreadline $tcap"], , $tcap)
if test -z "$READLINE_LIBS"; then
AC_MSG_ERROR([Can't find readline libraries])
fi
AC_SUBST(READLINE_LIBS)
SYSCONFDIR="`eval echo $sysconfdir`"
AC_DEFINE_UNQUOTED(SYSCONFDIR, "$SYSCONFDIR", [System configuration directory])
AC_SUBST(SYSCONFDIR)
AC_CHECK_PROG(HAVE_CRASH_CONFIG, crash-config, yes)
AC_SUBST(HAVE_CRASH_CONFIG)
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([Makefile src/Makefile util/Makefile doc/Makefile doc/devtodo.1 makepackages.sh devtodo.spec devtodo.list])
AC_OUTPUT
chmod +x makepackages.sh
|