dnl *@--NOTICE--@* Common File Distribution
dnl $Id$
-dnl --- *@-mdw_REQUIRE-@* ---
-dnl
-dnl Author: Mark Wooding
-dnl
-dnl Synopsis: mdw_REQUIRE(MACRO, ARGS...)
-dnl
-dnl Arguments: MACRO = name of a macro which should have been called
-dnl ARGS = arguments to pass
-dnl
-dnl Use: Like `AC_REQUIRE', only it handles arguments.
-
-m4_define([_m4_divert(mdwdvt_REQUIRE)], 54633)
-AC_DEFUN([mdw_REQUIRE],
-[ifdef([AC_PROVIDE_$1], ,
-[AC_DIVERT_PUSH([mdwdvt_REQUIRE])dnl
-indir($@)
-AC_DIVERT_POP()dnl
-])])
-
dnl --- *@-mdw_CURSES-@* ---
dnl
dnl Author: Mark Wooding
dnl AC_CHECK_FUNCS.
AC_DEFUN([mdw_CURSES],
-[mdw_CHECK_MANYLIBS(newwin, ncurses curses, AC_DEFINE(HAVE_CURSES))
+[mdw_CHECK_MANYLIBS([newwin], [ncurses curses],
+ [AC_DEFINE([HAVE_CURSES], [1],
+ [Define if you have a curses library.])])
if test $mdw_cv_lib_newwin != no; then
AC_CHECK_HEADERS([ncurses.h ncurses/ncurses.h curses.h], [break])
if test "$ac_cv_header_ncurses_h" = "no" &&
test "$ac_cv_header_ncurses_ncurses_h" = "no" &&
test "$ac_cv_header_curses_h" = "no"; then
AC_MSG_WARN([couldn't find a \`curses' header. Assuming \`curses.h'.])
- AC_DEFINE(HAVE_CURSES_H)
+ AC_DEFINE([HAVE_CURSES_H], [1], [Define if you have a `curses.h' header.])
fi
AC_CHECK_FUNCS(wresize)
fi])
#endif],
[mdw_cv_ssize_t=yes], [mdw_cv_ssize_t=no])])
if test $mdw_cv_ssize_t = no; then
- AC_DEFINE(ssize_t, int)
+ AC_DEFINE([ssize_t], [int], [Define to `int' if your system doesn't have ssize_t.])
fi])
dnl --- *@-mdw_DECL_ENVIRON-@* ---
AC_DEFUN([mdw_DECL_ENVIRON],
[AC_CACHE_CHECK([for declaration of \`environ'], mdw_cv_environ,
-[AC_EGREP_CPP(environ,
+[AC_EGREP_CPP([\<environ\>],
[#include <sys/types.h>
#if HAVE_UNISTD_H
#include <unistd.h>
#include <stddef.h>
#endif], [mdw_cv_environ=yes], [mdw_cv_environ=no])])
if test $mdw_cv_environ = yes; then
- AC_DEFINE(DECL_ENVIRON)
+ AC_DEFINE([DECL_ENVIRON], [1],
+ [Define if you have the `environ' vector of environment variables.])
fi])
dnl --- *@-mdw_CHECK_MANYLIBS-@* ---
dnl right?
AC_DEFUN([mdw__PYTHON_VERSION],
-[$1 -c 'from sys import *; v = argv[1]; vv = v.split("."); x = 0
+[changequote(<:, :>)dnl
+test -x $1 && dnl
+"$1" -c 'from sys import *; v = argv[1]; vv = v.split("."); x = 0
for i in range(len(vv)): x = x | (int(vv[i]) << (24 - i * 8))
-exit(x > hexversion)' $2])
+exit(x > hexversion)' $2dnl
+changequote([, ])])
dnl --- *@-mdw_PROG_PYTHON-@* ---
dnl
[AC_CACHE_CHECK([for Python version $1 or later], mdw_cv_prog_python,
[mdw_cv_prog_python="none"
for p in `echo "$PATH:/usr/local/bin" | tr ":" " "`; do
- case $p in /*) ;; *) p=`pwd`/$p ;; esac
+ case "$p" in /*) ;; *) p=`pwd`/$p ;; esac
if mdw__PYTHON_VERSION(["$p/python"], $1); then
mdw_cv_prog_python="$p/python"
break
dnl not, an error is raised and configuration is aborted.
AC_DEFUN([mdw_CHECK_PYTHON],
-[mdw_REQUIRE([mdw_PROG_PYTHON], [$1])
+[AC_REQUIRE([mdw_PROG_PYTHON], [mdw_PROG_PYTHON([$1])])
AC_MSG_CHECKING([whether Python ($PYTHON) works])
if test "$PYTHON" != "none" && mdw__PYTHON_VERSION("$PYTHON", $1); then
AC_MSG_RESULT([yes])
dnl AC_DEFUN relies on `[', `]' being quotes, so I have to drop down a level.
AC_DEFUN([mdw__PERL_VERSION], [mdw__PERL_VERSION_hack([$1], [$2])])
-changequote(<<, >>)
-define(<<mdw__PERL_VERSION_hack>>, <<$1 -e 'exit ($] < $2);' >&5 2>&5>>)
+changequote(<:, :>)
+define(<:mdw__PERL_VERSION_hack:>,
+<:test -x $1 && $1 -e 'exit ($] < $2);' >&5 2>&5:>)
changequote([, ])
dnl --- *@-mdw_PROG_PERL-@* ---
[AC_CACHE_CHECK([for Perl version $1 or later], mdw_cv_prog_perl,
[mdw_cv_prog_perl="none"
for p in `echo "$PATH:/usr/local/bin" | tr ":" " "`; do
- case $p in /*) ;; *) p=`pwd`/$p ;; esac
+ case "$p" in /*) ;; *) p=`pwd`/$p ;; esac
if mdw__PERL_VERSION(["$p/perl"], $1); then
mdw_cv_prog_perl="$p/perl"
break
dnl not, an error is raised and configuration is aborted.
AC_DEFUN([mdw_CHECK_PERL],
-[mdw_REQUIRE([mdw_PROG_PERL], [$1])
+[AC_REQUIRE([mdw_PROG_PERL], [mdw_PROG_PERL([$1])])
AC_MSG_CHECKING([whether Perl ($PERL) works])
if test "$PERL" != "none" && mdw__PERL_VERSION("$PERL", $1); then
AC_MSG_RESULT([yes])
AC_DEFUN([mdw_PERLLIB_CHECK],
[AC_REQUIRE([mdw__PERLLIB_INIT])
-mdw_REQUIRE([mdw_CHECK_PERL], 5)
+AC_REQUIRE([mdw_CHECK_PERL], [mdw_PROG_PERL([5])])
AC_CACHE_CHECK([for Perl library $1], mdw_cv_perllib_$1,
[if $PERL -e 'use $1;' >&5 2>&5; then
mdw_cv_perllib_$1="yes"
dnl Use: Configures an mgLib client program.
AC_DEFUN([mdw_MGLIB],
-[mdw_REQUIRE([mdw_MLIB], [1.6.0])
+[AC_REQUIRE([mdw_MLIB], [mdw_MLIB([2.0.3])])
mdw_LIB_CONFIG(mgLib, mgLib, $@)])
dnl --- *@-mdw_CATACOMB-@* ---
dnl Use: Configures the program as a Catacomb client.
AC_DEFUN([mdw_CATACOMB],
-[mdw_REQUIRE([mdw_MLIB], [1.6.0])
+[AC_REQUIRE([mdw_MLIB], [mdw_MLIB([2.0.3])])
mdw_LIB_CONFIG(catacomb, Catacomb, $@)])
dnl --- *@-mdw_PK-@* ---
dnl Use: Configures the program as a PK client.
AC_DEFUN([mdw_PK],
-[mdw_REQUIRE([mdw_MLIB], [1.6.0])
+[AC_REQUIRE([mdw_MLIB], [mdw_MLIB([2.0.3])])
mdw_LIB_CONFIG(pk, PK, $@)])
dnl --- *@-mdw_OPT_NDEBUG-@* ---
[AC_ARG_ENABLE(debugging,
[ --disable-debugging spews vast swathes of useless information],
[if test "$enableval" = "no"; then
- AC_DEFINE(NDEBUG, 1)
+ AC_DEFINE([NDEBUG], [1],
+ [Define to turn off assertions and other debugging. Not recommended.])
fi])])
dnl --- *@-mdw_OPT_EFENCE-@* ---
[AC_ARG_ENABLE(tracing,
[ --disable-tracing disable output of trace information],
[if test "$enableval" = "no"; then
- AC_DEFINE(NTRACE, 1)
+ AC_DEFINE([NTRACE], [1], [Define to turn off tracing.])
fi])])
dnl --- *@-mdw_OPT_mLib_TRACK-@* ---
[AC_REQUIRE([mdw_OPT_TRACE])
AC_ARG_ENABLE(track,
[ --enable-track enable tracking of malloc and free],
-[AC_DEFINE(TRACK_ENABLE, 1)])
+[AC_DEFINE([TRACK_ENABLE], [1],
+ [Define to turn on memory tracking. Doesn't work properly.])])
AC_ARG_ENABLE(blame-$1,
[ --enable-blame-$1
track malloc contexts while in $1],
-[AC_DEFINE(TRACK_BLAME, 1)])])
+[AC_DEFINE([TRACK_BLAME], [1],
+ [Define to track mallocs in this code.])])])
dnl --- *@-mdw_OPT_mLib_DEBUG-@* ---
dnl
dnl Use: Provides all of the above debugging options.
AC_DEFUN([mdw_OPT_mLib_DEBUG],
-[mdw_REQUIRE([mdw_OPT_NDEBUG])
-mdw_REQUIRE([mdw_OPT_mLib_TRACK], [$1])])
+[AC_REQUIRE([mdw_OPT_NDEBUG])
+AC_REQUIRE([mdw_OPT_mLib_TRACK], [mdw_OPT_mLib_TRACK([$1])])])
dnl --- *@-mdw_DEFINE_PATHS-@*
dnl
dnl Author: Mark Wooding
dnl
-dnl Synopsis: mdw_DEFINE_FILES(CODE)
+dnl Synopsis: mdw_DEFINE_PATHS(CODE)
dnl
dnl Arguments: CODE = shell script code to execute
dnl
*) break;; dnl
esac; done; dnl
echo "$t"`])
-AC_DEFUN([mdw_DEFINE_PROG], [AC_DEFINE_UNQUOTED([$1], ["mdw_PROG([$2])"])])
-AC_DEFUN([mdw_DEFINE_PATH], [AC_DEFINE_UNQUOTED([$1], ["mdw_PATH([$2])"])])
+AC_DEFUN([mdw_DEFINE_PROG],
+ [AC_DEFINE_UNQUOTED([$1], ["mdw_PROG([$2])"],
+ [Program name for $2.])])
+AC_DEFUN([mdw_DEFINE_PATH], [AC_DEFINE_UNQUOTED([$1], ["mdw_PATH([$2])"],
+ [Pathname for $2.])])
dnl --- *@-mdw_DIR_TEXMF-@* ---
dnl