diff --git a/ChangeLog b/ChangeLog index bcfde9b8..b7b1b854 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +1999-03-30 Paul D. Smith + + * configure.in: Don't put build.sh here, since build.sh.in doesn't + exist initially. This cause autoreconf and automake to fail when + run on a clean CVS checkout. Instead, we create build.sh in the + Makefile (see below). + + * Makefile.am: Remove BUILT_SOURCES; this is no longer relevant. + Put those files directly into EXTRA_DIST so they're distributed. + Create a local build rule to create build.sh. + Create a local maintainer-clean rule to delete all the funky + maintainers files. + + * maintMakefile: Makefile.in depends on README, since automake + fails if it doesn't exist. Also don't remove glob/Makefile.in + here, as it causes problems. + 1999-03-26 Paul D. Smith * configure.in: Substitute GLOBLIB if we need the link the diff --git a/Makefile.am b/Makefile.am index caf555ee..d3eafc60 100644 --- a/Makefile.am +++ b/Makefile.am @@ -17,9 +17,7 @@ man_MANS = make.1 INCLUDES = -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" -BUILT_SOURCES = README build.sh.in - -EXTRA_DIST = $(BUILT_SOURCES) $(man_MANS) README.customs remote-cstms.c\ +EXTRA_DIST = README build.sh.in $(man_MANS) README.customs remote-cstms.c\ make-stds.texi texinfo.tex SCOPTIONS SMakefile\ README.Amiga Makefile.ami config.ami make.lnk amiga.c amiga.h\ README.DOS Makefile.DOS configure.bat dosbuild.bat configh.dos\ @@ -33,6 +31,13 @@ MOSTLYCLEANFILES = loadavg.c CLEANFILES = loadavg +# --------------- Local BUILD Section + +build.sh: $(top_builddir)/config.status $(srcdir)/build.sh.in + cd $(top_builddir) \ + && CONFIG_FILES=build.sh.in CONFIG_HEADERS= $(SHELL) ./config.status + + # --------------- Local INSTALL Section # If necessary, change the gid of the app and turn on the setgid flag. @@ -125,6 +130,12 @@ check-regression: all cd $$testdir && ./run_make_tests -make $$here/make $(MAKETESTFLAGS) +# --------------- Local CLEAN section + +maintainer-clean-local: + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + + # --------------- Maintainer's Section @MAINT_MAKEFILE@ diff --git a/configure.in b/configure.in index 8251a8aa..4e46187a 100644 --- a/configure.in +++ b/configure.in @@ -181,7 +181,11 @@ if test -r $srcdir/maintMakefile; then fi AC_SUBST_FILE(MAINT_MAKEFILE) -AC_OUTPUT(Makefile glob/Makefile build.sh) +dnl build.sh is also an AC_OUTPUT, but we can't specify it here because +dnl it's built from build.template and autoconf will crap out. So, we +dnl build it in the makefiles themselves. + +AC_OUTPUT(Makefile glob/Makefile) case "$make_badcust" in yes) echo diff --git a/maintMakefile b/maintMakefile index 26ba9381..939e19f5 100644 --- a/maintMakefile +++ b/maintMakefile @@ -1,5 +1,6 @@ # Maintainer-only makefile segment. This contains things that are relevant -# only if you have the full copy of the GNU make sources, not a dist copy. +# only if you have the full copy of the GNU make sources from the CVS +# tree, not a dist copy. # # Find the glob source files... this might be dangerous, but we're maintainers! @@ -10,6 +11,11 @@ globhdr := $(wildcard glob/*.h) TEMPLATES = README README.DOS config.ami configh.dos config.h.W32 config.h-vms MTEMPLATES = Makefile.DOS SMakefile +# We need this to ensure that README is created on time to avoid errors +# by automake. +# +Makefile.in: README + # General rule for turning a .template into a regular file. # $(TEMPLATES) : % : %.template configure.in @@ -62,8 +68,7 @@ build.sh.in: build.template Makefile.am maintMakefile # # And _I_ want them to be removed ;) # -maintFILES = configure aclocal.m4 config.h.in Makefile.in stamp-h.in \ - glob/Makefile.in +maintFILES = configure aclocal.m4 config.h.in Makefile.in stamp-h.in MAINTAINERCLEANFILES = $(maintFILES) $(TEMPLATES) $(MTEMPLATES) NMakefile \ missing build.sh.in .dep_segment