With gnulib commit
f8fe25fab60e3, AM_PROG_AR is called
automatically from GL_EARLY macro, which brings its definition
into aclocal.m4. Sufficiently new enough AM_PROG_AR uses guarding
AC_BEFORE([AM_PROG_AR], [LT_INIT]) call.
Existence of 'LT_INIT' string inside aclocal.m4 however broke
bootstrap's self-defensive libtool_check_for_bogus_macros
function.
* build-aux/no-bogus-m4-defines: New aux helper using m4 for
aclocal.m4 pre-processing. As this is only bootstrap/dist time
assertion, we don't have to be too much careful (and the AC_BEFORE
pushdef is OK for now).
* boostrap.conf (libtool_check_for_bogus_macros): Use
no-bogus-m4-defines helper to detect bogus macros.
* Makefile.am: Likewise.
* gnulib: Sync with upstream.
* build-aux/git-log-fix: Fix typo.
* gl/build-aux/extract-trace: Fix the script timestamp.
* bootstrap: Sync with extract-trace.
libtool_m4 = $(srcdir)/$(macro_dir)/libtool.m4
ltversion_in = $(srcdir)/$(macro_dir)/ltversion.in
ltversion_m4 = $(srcdir)/$(macro_dir)/ltversion.m4
+no_bogus_macros = $(srcdir)/$(aux_dir)/no-bogus-m4-defines
options_parser = $(srcdir)/$(aux_dir)/options-parser
EXTRA_DIST += $(extract_trace) $(funclib_sh) $(inline_source) \
$(libtoolize_in) $(ltmain_in) $(ltmain_sh) \
- $(ltversion_in) $(ltversion_m4) $(options_parser)
+ $(ltversion_in) $(ltversion_m4) $(no_bogus_macros) \
+ $(options_parser)
## These are the replacements that need to be made at bootstrap time,
## because they must be static in distributed files, and not accidentally
## ...and similarly for .serial.
$(git_commit_count) > $(dotserial)
## Ensure aclocal has not wrongly picked up old macro definitions.
- @for macro in LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL; do \
- if grep "$$macro" '$(srcdir)/aclocal.m4' '$(lt_aclocal_m4)'; then \
- echo "Bogus $$macro macro contents in an aclocal.m4 file." >&2; \
- exit 1; \
- else :; fi; \
- done
+ $(no_bogus_macros)
distcheck-hook: syntax-check
test extract-trace = "$progname" && . `echo "$0" |${SED-sed} 's|[^/]*$||'`/options-parser
# Set a version string.
-scriptversion=2015-01-20.17; # UTC
+scriptversion=2015-09-18.21; # UTC
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
libtool_check_for_bogus_macros ()
{
$debug_cmd
-
- $opt_dry_run ||
- for macro in LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL; do
- if grep $macro aclocal.m4 libltdl/aclocal.m4; then
- func_fatal_error "Bogus $macro macro contents in an aclocal.m4 file"
- else :; fi
- done
+ $require_build_aux
+ $build_aux/no-bogus-m4-defines || exit 1
}
func_add_hook func_fini libtool_check_for_bogus_macros
# option. It specifies what changes to make to each given SHA1's commit
# log and metadata, using Perl-eval'able expressions.
+0f84217752fe50155f1f00fd14efbbbbdfaaed24
+s|Subjecŧ|Subject|
+
8c2154fb4e80967b50b98c7327ff1465d3315f3f
# Date: Tue Nov 18 16:14:35 2014 +0000
# Fox a resent smelling mystique.
--- /dev/null
+#! /bin/sh
+
+# no-bogus-m4-defines - detect wrong m4 definitions
+# -------------------------------------------------
+# Try to catch the case where 'aclocal' pulls installed libtool
+# macro file contents from another version of libtool into the
+# current package 'aclocal.m4'. Currently used by 'make dist'
+# and by ./bootstrap (bootstrap.conf).
+#
+# Copyright (C) 2015 Free Software Foundation, Inc.
+#
+# This file is part of GNU Libtool.
+#
+# GNU Libtool is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# Please report bugs or propose patches to bug-libtool@gnu.org.
+
+. `echo "$0" |${SED-sed} 's|[^/]*$||'`/funclib.sh
+# source this for "GNU m4" detection methods
+. `echo "$0" |${SED-sed} 's|[^/]*$||'`/extract-trace
+
+$require_gnu_m4
+
+bogus_macros='LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL'
+
+bogus_macros_grep=''
+for macro in $bogus_macros; do
+ func_append bogus_macros_grep "/$macro/p;"
+done
+
+clean_false_alarms="pushdef(\`AC_BEFORE', \`')"
+
+bogus_macros_check_output=`$ECHO "$clean_false_alarms" \
+ |$M4 - aclocal.m4 libltdl/aclocal.m4 \
+ |$SED -n "$bogus_macros_grep"`
+
+exit_val=0
+for macro in $bogus_macros; do
+ case $bogus_macros_check_output in
+ *$macro*)
+ func_error "Bogus $macro macro definition in an aclocal.m4 file"
+ exit_val=1
+ ;;
+ esac
+done
+
+exit $exit_val
test extract-trace = "$progname" && . `echo "$0" |${SED-sed} 's|[^/]*$||'`/options-parser
# Set a version string.
-scriptversion=2015-01-20.17; # UTC
+scriptversion=2015-09-18.21; # UTC
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-Subproject commit 82b86107d7f249e9396a65dd1a103f3227f1854e
+Subproject commit a5a1569d1953536af019636c49bd3e7a5cbbbde2