X-Git-Url: https://git.distorted.org.uk/~mdw/cfd/blobdiff_plain/6c1c6588c05ab80588c447e306ff22a7bc4628fe..7a1aef7de38475e27c12b9ed6f4a74811d0fe70b:/aclocal.glob diff --git a/aclocal.glob b/aclocal.glob index b185537..d899953 100644 --- a/aclocal.glob +++ b/aclocal.glob @@ -1,6 +1,6 @@ dnl -*-fundamental-*- *@--GLOB-HEADER--@* dnl -dnl $Id: aclocal.glob,v 1.5 1999/07/27 18:27:37 mdw Exp $ +dnl $Id: aclocal.glob,v 1.12 2001/02/04 01:18:52 mdw Exp $ dnl dnl Common library of autoconf macros dnl @@ -28,6 +28,28 @@ dnl Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. dnl----- Revision history --------------------------------------------------- dnl dnl $Log: aclocal.glob,v $ +dnl Revision 1.12 2001/02/04 01:18:52 mdw +dnl Overhaul the mLib debugging options. +dnl +dnl Revision 1.11 2001/01/20 12:03:08 mdw +dnl Remove redundant stuff. +dnl +dnl Revision 1.10 2000/10/14 16:32:15 mdw +dnl Fixes from upstream. +dnl +dnl Revision 1.9 2000/08/15 21:37:49 mdw +dnl New initialization macro for libraries, and a new base client macro for +dnl finding libraries with an appropriate version. +dnl +dnl Revision 1.8 1999/11/26 01:23:17 mdw +dnl And support for MXD (not yet released). +dnl +dnl Revision 1.7 1999/11/11 20:03:58 mdw +dnl Add support for mgLib too. +dnl +dnl Revision 1.6 1999/11/11 17:49:33 mdw +dnl New macros for configuring clients of mLib and Catacomb. +dnl dnl Revision 1.5 1999/07/27 18:27:37 mdw dnl Fix typo in header line for mdw_DECL_ENVIRON. dnl @@ -46,13 +68,13 @@ dnl dnl----- Common files distribution --------------------------- *@--NOTICE--@* dnl -dnl $Id: aclocal.glob,v 1.5 1999/07/27 18:27:37 mdw Exp $ +dnl $Id: aclocal.glob,v 1.12 2001/02/04 01:18:52 mdw Exp $ -dnl --- *@-AC_PROG_CC_STDC-@* --- +dnl --- *@-AM_PROG_CC_STDC-@* --- dnl dnl Author: Franc,ois Pinard dnl -dnl Synopsis: AC_PROG_CC_STDC +dnl Synopsis: AM_PROG_CC_STDC dnl dnl Arguments: --- dnl @@ -297,7 +319,7 @@ dnl certain things. But this isn't really a big deal. # serial 1 AC_DEFUN(AM_INIT_AUTOMAKE, -[AC_REQUIRE([AM_PROG_INSTALL]) +[AC_REQUIRE([AC_PROG_INSTALL]) PACKAGE=[$1] AC_SUBST(PACKAGE) VERSION=[$2] @@ -309,8 +331,8 @@ fi ifelse([$3],, AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") AC_DEFINE_UNQUOTED(VERSION, "$VERSION")) -AM_SANITY_CHECK -AC_ARG_PROGRAM +AC_REQUIRE([AM_SANITY_CHECK]) +AC_REQUIRE([AC_ARG_PROGRAM]) dnl FIXME This is truly gross. missing_dir=`cd $ac_aux_dir && pwd` AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) @@ -318,26 +340,7 @@ AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) -AC_PROG_MAKE_SET]) - -dnl --- *@-AM_PROG_INSTALL-@* --- -dnl -dnl Author: Franc,ois Pinard -dnl -dnl Synopsis: AM_PROG_INSTALL -dnl -dnl Arguments: --- -dnl -dnl Use: Calls `AC_PROG_INSTALL' to find an installer. Then it sets -dnl `INSTALL_SCRIPT' to a suitable value if necessary. - -# serial 1 - -AC_DEFUN(AM_PROG_INSTALL, -[AC_PROG_INSTALL -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL} -m 755' -AC_SUBST(INSTALL_SCRIPT)dnl -]) +AC_REQUIRE([AC_PROG_MAKE_SET])]) dnl --- *@-AM_PROG_LEX-@* --- dnl @@ -622,7 +625,7 @@ dnl set `U' to be `_' and `ANSI2KNR' to be `./ansi2knr'. # serial 1 AC_DEFUN(fp_C_PROTOTYPES, -[AC_REQUIRE([fp_PROG_CC_STDC]) +[AC_REQUIRE([AM_PROG_CC_STDC]) AC_MSG_CHECKING([for function prototypes]) if test "$ac_cv_prog_cc_stdc" != no; then AC_MSG_RESULT(yes) @@ -981,35 +984,6 @@ main() { /* Under Solaris 2.4, strtod returns the wrong value for the terminating character under some conditions. */ - -## @defmac AC_FUNC_STRTOD -## @maindex FUNC_STRTOD -## @ovindex LIBOBJS -## If the @code{strtod} function is not available, or does not work -## correctly (like the one on SunOS 5.4), add @samp{strtod.o} to output -## variable @code{LIBOBJS}. -## @end defmac - -AC_DEFUN(AM_FUNC_STRTOD, -[AC_CACHE_CHECK(for working strtod, am_cv_func_strtod, -[AC_TRY_RUN([ -double strtod (); -int -main() -{ - { - /* Some versions of Linux strtod mis-parse strings with leading '+'. */ - char *string = " +69"; - char *term; - double value; - value = strtod (string, &term); - if (value != 69 || term != (string + 4)) - exit (1); - } - - { - /* Under Solaris 2.4, strtod returns the wrong value for the - terminating character under some conditions. */ char *string = "NaN"; char *term; strtod (string, &term); @@ -1066,7 +1040,7 @@ dnl dnl Use: Like `AC_REQUIRE', only it handles arguments. AC_DEFUN(mdw_REQUIRE, -[ifdef([AC_PROVIDED_$1], , +[ifdef([AC_PROVIDE_$1], , [AC_DIVERT_PUSH(builtin(eval, AC_DIVERSION_CURRENT - 1))dnl indir($@) AC_DIVERT_POP()dnl @@ -1161,12 +1135,15 @@ dnl --- *@-mdw_CHECK_MANYLIBS-@* --- dnl dnl Author: Mark Wooding dnl -dnl Synopsis: mdw_CHECK_MANYLIBS(FUNC, LIBS, [IF-FOUND], [IF-NOT-FOUND]) +dnl Synopsis: mdw_CHECK_MANYLIBS(FUNC, LIBS, [IF-FOUND], [IF-NOT-FOUND], +dnl [INCLUDES], [ARGS]) dnl dnl Arguments: FUNC = a function to try to find dnl LIBS = a whitespace-separated list of libraries to search dnl IF-FOUND = what to do when the function is found dnl IF-NOT-FOUND = what to do when the function isn't found +dnl INCLUDES = other include files to add +dnl ARGS = arguments to pass the function dnl dnl Use: Searches for a library which defines FUNC. It first tries dnl without any libraries; then it tries each library specified @@ -1181,10 +1158,10 @@ AC_DEFUN(mdw_CHECK_MANYLIBS, [AC_CACHE_CHECK([for library containing $1], [mdw_cv_lib_$1], [mdw_save_LIBS="$LIBS" mdw_cv_lib_$1="no" -AC_TRY_LINK(,[$1()], [mdw_cv_lib_$1="none required"]) +AC_TRY_LINK([$5], [$1($6)], [mdw_cv_lib_$1="none required"]) test "$mdw_cv_lib_$1" = "no" && for i in $2; do LIBS="-l$i $mdw_save_LIBS" -AC_TRY_LINK(,[$1()], +AC_TRY_LINK([$5], [$1($6)], [mdw_cv_lib_$1="-l$i" break]) done @@ -1351,6 +1328,133 @@ if test "$GXX" = "yes"; then CXXFLAGS="$CXXFLAGS ifelse([$3], [], [-fhandle-exceptions], [$3])" fi]) +dnl *@-mdw_INIT_LIB-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_INIT_LIB(LIB, NAME, VERSION, [PACKAGE]) +dnl +dnl Arguments: LIB = the name of the library (and the package) +dnl NAME = a presentable version of the library's name +dnl VERSION = version of the library +dnl PACKAGE = package name to pass on to AM_INIT_AUTOMAKE +dnl +dnl Use: Sets up various useful variables. This macro calls +dnl AM_INIT_AUTOMAKE, which might be considered useful. It also +dnl provides variables for the use of `lib-config.in'. + +AC_DEFUN([mdw_INIT_LIB], +[AM_INIT_AUTOMAKE(ifelse([$4], [], [$1], [$4]), [$3]) +LIBRARY="$1" AC_SUBST(LIBRARY) +LIBNAME="$2" AC_SUBST(LIBNAME)]) + +dnl *@-mdw_LIB_CONFIG-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_LIB_CONFIG(LIB, NAME, VERSION, IF-FOUND, IF-NOT-FOUND) +dnl +dnl Arguments: LIB = the name of the library (and its configuration program) +dnl NAME = a presentable version of the library's name +dnl VERSION = version of library required +dnl IF-FOUND = what to do if found +dnl IF-NOT-FOUND = what to do if not found +dnl +dnl Use: Configures a library client program, using a configuration +dnl script provided by the library maintainer. +dnl +dnl The default version is 1.0.0pre0; the default action is to +dnl add everything to the CFLAGS and LIBS variables, and complain +dnl if the library couldn't be found. +dnl +dnl The variable LIB_VERSION contains the version number of +dnl the library; LIB_CFLAGS is the C compiler flags required +dnl and LIB_LIBS is the linker flags. + +AC_DEFUN([mdw_LIB_CONFIG], +[pushdef([upname], translit([$1], [a-z], [A-Z]))dnl +AC_MSG_CHECKING([for $2 library]) +if $1-config --check $3 >/dev/null 2>&1; then + upname[]_VERSION=`$1-config --version` + upname[]_CFLAGS=`$1-config --cflags` + upname[]_LIBS=`$1-config --libs` + AC_SUBST(upname[]_VERSION) + AC_SUBST(upname[]_CFLAGS) + AC_SUBST(upname[]_LIBS) + ifelse([$4], [], + [CFLAGS="$CFLAGS $upname[]_CFLAGS" + LIBS="$upname[]_LIBS $LIBS"], + $4) + AC_MSG_RESULT([$upname[]_VERSION]) +else + ifelse([$5], [], + AC_MSG_ERROR([$2 library not found or too old.]), + $5) + AC_MSG_RESULT([not found]) +fi]) + +dnl *@-mdw_MLIB-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_MLIB(VERSION, IF-FOUND, IF-NOT-FOUND +dnl +dnl Arguments: VERSION = version of library required +dnl IF-FOUND = what to do if found +dnl IF-NOT-FOUND = what to do if not found +dnl +dnl Use: Configures an mLib client program. + +AC_DEFUN([mdw_MLIB], [mdw_LIB_CONFIG(mLib, mLib, $@)]) + +dnl *@-mdw_MGLIB-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_MGLIB(VERSION, IF-FOUND, IF-NOT-FOUND +dnl +dnl Arguments: VERSION = version of library required +dnl IF-FOUND = what to do if found +dnl IF-NOT-FOUND = what to do if not found +dnl +dnl Use: Configures an mgLib client program. + +AC_DEFUN([mdw_MGLIB], +[mdw_REQUIRE([mdw_MLIB], [1.6.0]) +mdw_LIB_CONFIG(mgLib, mgLib, $@)]) + +dnl *@-mdw_CATACOMB-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_CATACOMB([VERSION], [IF-FOUND], [IF-NOT-FOUND]) +dnl +dnl Arguments: VERSION = version of Catacomb required +dnl IF-FOUND = what to do if found +dnl IF-NOT-FOUND = what to do if not found +dnl +dnl Use: Configures the program as a Catacomb client. + +AC_DEFUN([mdw_CATACOMB], +[mdw_REQUIRE([mdw_MLIB], [1.6.0]) +mdw_LIB_CONFIG(catacomb, Catacomb, $@)]) + +dnl *@-mdw_PK-@* +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_PK([VERSION], [IF-FOUND], [IF-NOT-FOUND]) +dnl +dnl Arguments: VERSION = version of PK required +dnl IF-FOUND = what to do if found +dnl IF-NOT-FOUND = what to do if not found +dnl +dnl Use: Configures the program as a PK client. + +AC_DEFUN([mdw_PK], +[mdw_REQUIRE([mdw_MLIB], [1.6.0]) +mdw_LIB_CONFIG(pk, PK, $@)]) + dnl --- *@-mdw_OPT_NDEBUG-@* --- dnl dnl Author: Mark Wooding @@ -1359,16 +1463,15 @@ dnl Synopsis: mdw_OPT_NDEBUG dnl dnl Arguments: --- dnl -dnl Use: Turns off the `NDEBUG' flag if the user wants to do -dnl debugging. +dnl Use: Turns on the `NDEBUG' flag, to disable useful things like +dnl assertions. AC_DEFUN(mdw_OPT_NDEBUG, [AC_ARG_ENABLE(debugging, -[ --enable-debugging spews vast swathes of useless information], +[ --disable-debugging spews vast swathes of useless information], [if test "$enableval" = "no"; then AC_DEFINE(NDEBUG, 1) -fi], -[AC_DEFINE(NDEBUG, 1)])]) +fi])]) dnl --- *@-mdw_OPT_EFENCE-@* --- dnl @@ -1387,42 +1490,66 @@ AC_DEFUN(mdw_OPT_EFENCE, AC_CHECK_LIB(efence, malloc) fi])]) -dnl --- *@-mdw_OPT_mLib_DEBUG-@* --- +dnl --- *@-mdw_OPT_TRACE-@* --- dnl dnl Author: Mark Wooding dnl -dnl Synopsis: mdw_OPT_mLib_DEBUG(PROGRAM) +dnl Synopsis: mdw_OPT_TRACE dnl dnl Arguments: --- dnl -dnl Use: Provides options for mLib debugging. In particular, the +dnl Use: Turns on the `NTRACE' flag, to disable useful things like +dnl trace outputs. + +AC_DEFUN(mdw_OPT_TRACE, +[AC_ARG_ENABLE(tracing, +[ --disable-tracing disable output of trace information], +[if test "$enableval" = "no"; then + AC_DEFINE(NTRACE, 1) +fi])]) + +dnl --- *@-mdw_OPT_mLib_TRACK-@* --- +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_OPT_mLib_TRACK(PROGRAM) +dnl +dnl Arguments: PROGRAM = name of this program or package. +dnl +dnl Use: Controls the unsupported mLib memory tracker. The dnl following are defined: dnl -dnl --enable-tracing turns off the NTRACE variable dnl --enable-track turns on malloc tracking dnl --enable-blame-PROGRAM tracks malloc contexts in PROGRAM dnl -dnl There must be a separate `blame' option, so that the various -dnl blame options work properly. - -AC_DEFUN(mdw_OPT_mLib_DEBUG, -[mdw_OPT_NDEBUG -mdw_OPT_EFENCE - -AC_ARG_ENABLE(tracing, -[ --enable-tracing enable output of tracing information], -[if test "$enableval" = "no"; then - AC_DEFINE(NTRACE, 1) -fi], -[AC_DEFINE(NTRACE, 1)]) +dnl There must be a separate `blame' option for each program, +dnl so that the various blame options in a hierarchy get +dnl propagated properly. This is an obsolete feature from the +dnl days when mLib was provided as a subdirectory of other +dnl packages. +AC_DEFUN(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_ARG_ENABLE(blame-$1, [ --enable-blame-$1 track malloc contexts while in $1], [AC_DEFINE(TRACK_BLAME, 1)])]) +dnl --- *@-mdw_OPT_mLib_DEBUG-@* --- +dnl +dnl Author: Mark Wooding +dnl +dnl Synopsis: mdw_OPT_mLib_DEBUG(PROGRAM) +dnl +dnl Arguments: PROGRAM = name of this program or package. +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])]) + dnl----- That's all, folks --------------------------------- *@--GLOB-END--@*