Skip to content

Commit

Permalink
bootstrap: Use an absolute path for ACBOOTDIR.
Browse files Browse the repository at this point in the history
If we use a relative path for ACBOOTDIR, Automake can’t tell the
difference between Autoconf’s configure script’s aclocal.m4
inclusions (…/m4/*.m4) and the guts of Autoconf
itself (…/lib/autoconf/*.m4) so it puts both of them into
$(am__aclocal_m4_deps).  This would be harmless, except that the
guts-of-Autoconf files are named *relative to $ACBOOTDIR*, which
means Make can’t find them later.  And this is why a build from a
clean git checkout always starts by regenerating aclocal.m4 and
configure again.

Using an absolute path for ACBOOTDIR gives automake enough of a clue
what’s going on (see the heuristic circa 5500 of current automake.in,
commented “Some modified versions of autoconf don’t use frozen files…”)
for it to produce the same value for $(am__aclocal_m4) that it would
if we were running an installed Autoconf.
  • Loading branch information
zackw committed Mar 12, 2023
1 parent d4566c8 commit ddf21ca
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,7 @@ PACKAGE_TARNAME='<<not available>>'

# Root for temporary partial installation tree.
ACBOOTDIR=$(mktemp -d acboot.XXXXXXXXXX)
ACBOOTDIR=$(realpath $ACBOOTDIR)

# dosubst options infile outfile -- performs the substitutions that
# config.status would perform on INFILE, creating OUTFILE. INFILE is
Expand Down

0 comments on commit ddf21ca

Please sign in to comment.