From 36612ff6684f7957981bc588dcf12df8a1e4d4e8 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 22 Feb 1997 22:30:16 +0000 Subject: [PATCH] macro fixes --- ChangeLog | 8 +++++++ TODO | 1 - automake.texi | 37 ++++++++++++++++------------- m4/ccstdc.m4 | 2 ++ m4/protos.m4 | 1 - tests/Makefile.in | 70 ++++++++++++++++++++++++++++--------------------------- version.texi | 2 +- 7 files changed, 68 insertions(+), 53 deletions(-) diff --git a/ChangeLog b/ChangeLog index dde2158..3053dd8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Sat Feb 22 15:22:31 1997 Tom Tromey + + * m4/protos.m4: Don't put any dependencies on AC_C_INLINE or + AC_C_CONST. + + * m4/ccstdc.m4: Force AM_PROG_CC_STDC to come before AC_C_INLINE + or AC_C_CONST. + Fri Feb 21 00:39:17 1997 Tom Tromey From The Crimson Binome: diff --git a/TODO b/TODO index 4149f65..a8496b9 100644 --- a/TODO +++ b/TODO @@ -240,7 +240,6 @@ Lex, yacc support: * Consider supporting syntax from autoconf "derived:source", eg: y.tab.c:perly.y for yacc and lex source -* allow generating c++ source from lex? Eg using flex? Multi-language support: * should have mapping of file extensions to languages diff --git a/automake.texi b/automake.texi index b3a3343..3035176 100644 --- a/automake.texi +++ b/automake.texi @@ -629,7 +629,7 @@ This is similar to @code{AC_CANONICAL_HOST}, but also defines the @item AC_FUNC_GETLOADAVG @item AC_FUNC_MEMCMP @item AC_STRUCT_ST_BLOCKS -@item AM_FUNC_FNMATCH +@item AC_FUNC_FNMATCH @item AM_FUNC_STRTOD @item AC_REPLACE_FUNCS @item AC_REPLACE_GNU_GETOPT @@ -640,12 +640,11 @@ that the appropriate source files are part of the distribution. Note that Automake does not come with any of the C sources required to use these macros, so @code{automake -a} will not install the sources. @xref{A Library} for more information. - @cvindex AC_FUNC_ALLOCA @cvindex AC_FUNC_GETLOADAVG @cvindex AC_FUNC_MEMCMP @cvindex AC_STRUCT_ST_BLOCKS -@cvindex AM_FUNC_FNMATCH +@cvindex AC_FUNC_FNMATCH @cvindex AC_FUNC_FNMATCH @cvindex AC_REPLACE_FUNCS @cvindex AC_REPLACE_GNU_GETOPT @@ -734,9 +733,10 @@ a variable in each generated @file{Makefile.in}. @section Auto-generating aclocal.m4 The @code{aclocal} program will automatically generate @file{aclocal.m4} -files based on the contents of @file{configure.in}. - -... explain why on earth you'd want to do this +files based on the contents of @file{configure.in}. This provides a +convenient way to get @code{automake}-provided macros, without having to +search around. Also, the @code{aclocal} mechanism is extensible for use +by other packages. @code{aclocal} accepts the following options: @@ -769,11 +769,6 @@ Print the version number of Automake and exit. @c consider generating this node automatically from m4 files. @table @code -@item AC_FUNC_FNMATCH -If the @code{fnmatch} function is not available, or does not work -correctly (like the one on SunOS 5.4), add @samp{fnmatch.o} to output -variable @code{LIBOBJS}. - @item AM_FUNC_STRTOD 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 @@ -1060,10 +1055,17 @@ yacc source file @file{foo.y}, automake will cause the intermediate file to be named @file{foo.c} (as opposed to @file{y.tab.c}, which is more traditional). -Yacc source files must end with the extension @samp{.y}. Lex source -files must have the extension @samp{.l}. You should never explicitly -mention the intermediate @samp{.c} file in any @samp{SOURCES} variable; -only list the source file. +The extension of a yacc source file is used to determine the extension +of the resulting @samp{C} or @samp{C++} file. Files with the extension +@samp{.y} will be turned into @samp{.c} files; likewise, @samp{.yy} will +become @samp{.cc}; @samp{.y++}, @samp{c++}; and @samp{.yxx}, +@samp{.cxx}. Likewise, lex source files can be used to generate +@samp{C} or @samp{C++}; the extensions @samp{.l}, @samp{.ll}, +@samp{.l++}, and @samp{.lxx} are recognized. + +You should never explicitly mention the intermediate (@samp{C} or +@samp{C++}) file in any @samp{SOURCES} variable; only list the source +file. The intermediate files generated by yacc (or lex) will be included in any distribution that is made. That way the user doesn't need to have @@ -1657,7 +1659,10 @@ be derived objects or source objects; the generated rule will look both in @var{srcdir} and @file{.}. The number of failures will be printed at the end of the run. The variable @code{TESTS_ENVIRONMENT} can be used to set environment variables for the test run; the environment variable -@code{srcdir} is set in the rule. +@code{srcdir} is set in the rule. If all your test programs are +scripts, you can also set @code{TESTS_ENVIRONMENT} to an invocation of +the shell (eg @samp{$(SHELL) -x}); this can be useful for debugging the +tests. @vindex TESTS @vindex TESTS_ENVIRONMENT diff --git a/m4/ccstdc.m4 b/m4/ccstdc.m4 index 727fea1..579c4f7 100644 --- a/m4/ccstdc.m4 +++ b/m4/ccstdc.m4 @@ -23,6 +23,8 @@ AC_DEFUN(AM_PROG_CC_STDC, [AC_REQUIRE([AC_PROG_CC]) +AC_BEFORE([$0], [AC_C_INLINE]) +AC_BEFORE([$0], [AC_C_CONST]) AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C) AC_CACHE_VAL(am_cv_prog_cc_stdc, [am_cv_prog_cc_stdc=no diff --git a/m4/protos.m4 b/m4/protos.m4 index 5c82294..350beb4 100644 --- a/m4/protos.m4 +++ b/m4/protos.m4 @@ -7,7 +7,6 @@ AC_DEFUN(AM_C_PROTOTYPES, [AC_REQUIRE([AM_PROG_CC_STDC]) -AC_BEFORE([$0], [AC_C_INLINE]) AC_MSG_CHECKING([for function prototypes]) if test "$am_cv_prog_cc_stdc" != no; then AC_MSG_RESULT(yes) diff --git a/tests/Makefile.in b/tests/Makefile.in index c641ec1..74d98b1 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.1l from Makefile.am +# Makefile.in generated automatically by automake 1.1g from Makefile.am # Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -37,33 +37,33 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ transform = @program_transform_name@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -PACKAGE = @PACKAGE@ PERL = @PERL@ TAR = @TAR@ -VERSION = @VERSION@ AUTOMAKE_OPTIONS = gnits -TESTS = mdate.test vtexi.test acoutput.test instexec.test checkall.test \ -acoutnoq.test acouttbs.test libobj.test proginst.test acoutqnl.test \ -confincl.test spelling.test prefix.test badprog.test depend.test exdir.test \ -canon.test installsh.test empty.test rulepat.test insh.test canon2.test \ -target.test extra.test noinst.test instman.test mkinstall.test auxdir.test \ -canon3.test mdate2.test subdir.test backsl.test package.test number.test \ -insh2.test outdir.test fpinstall.test fpinst2.test texinfo.test dejagnu.test \ -yacc.test mkinst2.test texinfo2.test ansi.test depacl.test depacl2.test \ -error.test colon.test vtexi2.test tags.test comment.test ansi2.test \ -man.test info.test obsolete.test lex.test scripts.test subdir2.test \ -exsource.test canon4.test dup.test defun.test cxxlink.test cxxnoc.test \ -order.test libobj2.test interp.test block.test libobj3.test dup2.test \ -gnits.test interp2.test colneq.test implicit.test spell.test spell2.test \ -confsub.test primary.test primary2.test depend2.test spell3.test \ -comment2.test vpath.test symlink.test discover.test acinclude.test req.test \ -acsilent.test distdir.test lex2.test libobj4.test libobj5.test version.test \ -ranlib.test confvar.test confvar2.test stdlib.test cxxo.test colon2.test \ -colon3.test remake.test output.test output2.test remake2.test output3.test \ -output4.test colneq2.test subst.test defun2.test +TESTS = mdate.test vtexi.test acoutput.test instexec.test \ +checkall.test acoutnoq.test acouttbs.test libobj.test proginst.test \ +acoutqnl.test confincl.test spelling.test prefix.test badprog.test \ +depend.test exdir.test canon.test installsh.test empty.test \ +rulepat.test insh.test canon2.test target.test extra.test noinst.test \ +instman.test mkinstall.test auxdir.test canon3.test mdate2.test \ +subdir.test backsl.test package.test number.test insh2.test \ +outdir.test fpinstall.test fpinst2.test texinfo.test dejagnu.test \ +yacc.test mkinst2.test texinfo2.test ansi.test depacl.test \ +depacl2.test error.test colon.test vtexi2.test tags.test comment.test \ +ansi2.test man.test info.test obsolete.test lex.test scripts.test \ +subdir2.test exsource.test canon4.test dup.test defun.test \ +cxxlink.test cxxnoc.test order.test libobj2.test interp.test \ +block.test libobj3.test dup2.test gnits.test interp2.test colneq.test \ +implicit.test spell.test spell2.test confsub.test primary.test \ +primary2.test depend2.test spell3.test comment2.test vpath.test \ +symlink.test discover.test acinclude.test req.test acsilent.test \ +distdir.test lex2.test libobj4.test libobj5.test version.test \ +ranlib.test confvar.test confvar2.test stdlib.test cxxo.test \ +colon2.test colon3.test remake.test output.test output2.test \ +remake2.test output3.test output4.test colneq2.test subst.test \ +defun2.test yaccpp.test EXTRA_DIST = defs $(TESTS) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -71,18 +71,20 @@ CONFIG_CLEAN_FILES = DIST_COMMON = ChangeLog Makefile.am Makefile.in +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) \ $(TEXINFOS) $(MANS) $(EXTRA_DIST) default: all -.SUFFIXES: -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL) - cd $(top_srcdir) && automake --gnits tests/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in + cd $(top_srcdir) && automake --strictness=gnits $(subdir)/Makefile + +Makefile: $(top_builddir)/config.status $(srcdir)/Makefile.in $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - tags: TAGS TAGS: @@ -120,8 +122,7 @@ check-TESTS: $(TESTS) fi info: dvi: -check: all - $(MAKE) check-TESTS +check: all check-TESTS installcheck: install-exec: $(NORMAL_INSTALL) @@ -157,16 +158,16 @@ maintainer-clean-generic: test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) mostlyclean: mostlyclean-generic -clean: clean-generic mostlyclean +clean: clean-generic mostlyclean -distclean: distclean-generic clean distclean-local +distclean: distclean-generic clean rm -f config.status -maintainer-clean: maintainer-clean-generic distclean +maintainer-clean: maintainer-clean-generic distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." -.PHONY: default tags distdir check-TESTS info dvi installcheck \ +.PHONY: default tags distdir check-TESTS info dvi check installcheck \ install-exec install-data install uninstall all installdirs \ mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean @@ -174,6 +175,7 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean distclean-local: rm -rf testSubdir +.SUFFIXES: # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/version.texi b/version.texi index 4da05c5..244d509 100644 --- a/version.texi +++ b/version.texi @@ -1,3 +1,3 @@ -@set UPDATED 21 February 1997 +@set UPDATED 22 February 1997 @set EDITION 1.1l @set VERSION 1.1l -- 2.7.4