1998-09-27 Ben Elliston <bje@cygnus.com>

* Makefile.in (all): Generate frozen .m4 files at build time.
	(install): Do not freeze .m4 files. Install pre-frozen .m4f files
	using $(INSTALL_DATA).
	(.m4.m4f): Freeze files if m4 supports stored internal state.
	Contributed by Karl Heuer <kwzh@gnu.org>.
This commit is contained in:
Ben Elliston 1998-09-27 03:46:21 +00:00
parent 51ff9de9f4
commit 8e4ce29cd8
3 changed files with 42 additions and 20 deletions

View File

@ -1,5 +1,11 @@
1998-09-27 Ben Elliston <bje@cygnus.com>
* Makefile.in (all): Generate frozen .m4 files at build time.
(install): Do not freeze .m4 files. Install pre-frozen .m4f files
using $(INSTALL_DATA).
(.m4.m4f): Freeze files if m4 supports stored internal state.
Contributed by Karl Heuer <kwzh@gnu.org>.
* install-sh: Import latest version from the FSF.
* mkinstalldirs: Likewise.

View File

@ -32,6 +32,10 @@ PERL = @PERL@
# Programs that are ALWAYS installed (and are created in the build dir).
ASCRIPTS = autoconf autoheader autoreconf autoupdate ifnames
# M4 input that is frozen.
M4FROZEN = autoconf.m4f autoheader.m4f
# All programs, including those only installed if you have perl.
SCRIPTS = $(ASCRIPTS) @SCRIPTS@
@ -78,10 +82,10 @@ editsh = sed -e 's,@''datadir''@,$(acdatadir),g' -e \
-e 's,@''SHELL''@,$(SHELL),g'
editpl = sed -e 's,@''datadir''@,$(acdatadir),g' -e 's,@''PERL''@,$(PERL),g'
all: ${SCRIPTS} info
all: ${SCRIPTS} ${M4FROZEN} info
.SUFFIXES:
.SUFFIXES: .sh .pl
.SUFFIXES: .sh .pl .m4 .m4f
.sh:
rm -f $@ $@.tmp
@ -91,6 +95,14 @@ all: ${SCRIPTS} info
rm -f $@ $@.tmp
$(editpl) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
.m4.m4f:
@case `$(M4) --help </dev/null 2>&1` in \
*reload-state*) echo freezing $*.m4; \
$(M4) -F $*.m4f -I${srcdir} ${srcdir}/$*.m4 ;; \
*traditional*) ;; \
*) echo Error: Autoconf requires GNU m4 1.1 or later; exit 1 ;; \
esac
info: autoconf.info @standards_info@ INSTALL
# Use --no-split to avoid creating filenames > 14 chars.
@ -125,16 +137,12 @@ installdirs:
$(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir)
install: all $(M4FILES) acconfig.h installdirs install-info
@case `$(M4) --help < /dev/null 2>&1` in \
*reload-state*) echo installing frozen m4 files; \
$(M4) -F $(acdatadir)/autoconf.m4f -I${srcdir} ${srcdir}/autoconf.m4 ; \
$(M4) -F $(acdatadir)/autoheader.m4f -I${srcdir} ${srcdir}/autoheader.m4 ;; \
*traditional*) ;; \
*) echo Error: Autoconf requires GNU m4 1.1 or later; exit 1 ;; \
esac
for p in $(ASCRIPTS); do \
$(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
done
for i in $(M4FROZEN); do \
$(INSTALL_DATA) $$i $(acdatadir)/$$i; \
done
for i in $(M4FILES) acconfig.h; do \
$(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
done

View File

@ -32,6 +32,10 @@ PERL = @PERL@
# Programs that are ALWAYS installed (and are created in the build dir).
ASCRIPTS = autoconf autoheader autoreconf autoupdate ifnames
# M4 input that is frozen.
M4FROZEN = autoconf.m4f autoheader.m4f
# All programs, including those only installed if you have perl.
SCRIPTS = $(ASCRIPTS) @SCRIPTS@
@ -78,10 +82,10 @@ editsh = sed -e 's,@''datadir''@,$(acdatadir),g' -e \
-e 's,@''SHELL''@,$(SHELL),g'
editpl = sed -e 's,@''datadir''@,$(acdatadir),g' -e 's,@''PERL''@,$(PERL),g'
all: ${SCRIPTS} info
all: ${SCRIPTS} ${M4FROZEN} info
.SUFFIXES:
.SUFFIXES: .sh .pl
.SUFFIXES: .sh .pl .m4 .m4f
.sh:
rm -f $@ $@.tmp
@ -91,6 +95,14 @@ all: ${SCRIPTS} info
rm -f $@ $@.tmp
$(editpl) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@
.m4.m4f:
@case `$(M4) --help </dev/null 2>&1` in \
*reload-state*) echo freezing $*.m4; \
$(M4) -F $*.m4f -I${srcdir} ${srcdir}/$*.m4 ;; \
*traditional*) ;; \
*) echo Error: Autoconf requires GNU m4 1.1 or later; exit 1 ;; \
esac
info: autoconf.info @standards_info@ INSTALL
# Use --no-split to avoid creating filenames > 14 chars.
@ -125,16 +137,12 @@ installdirs:
$(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir)
install: all $(M4FILES) acconfig.h installdirs install-info
@case `$(M4) --help < /dev/null 2>&1` in \
*reload-state*) echo installing frozen m4 files; \
$(M4) -F $(acdatadir)/autoconf.m4f -I${srcdir} ${srcdir}/autoconf.m4 ; \
$(M4) -F $(acdatadir)/autoheader.m4f -I${srcdir} ${srcdir}/autoheader.m4 ;; \
*traditional*) ;; \
*) echo Error: Autoconf requires GNU m4 1.1 or later; exit 1 ;; \
esac
for p in $(ASCRIPTS); do \
$(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
done
for i in $(M4FROZEN); do \
$(INSTALL_DATA) $$i $(acdatadir)/$$i; \
done
for i in $(M4FILES) acconfig.h; do \
$(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
done