From d150eb438baa62ef3965ef4dc1f9f342ed839a18 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 28 Feb 2022 13:16:44 -0800 Subject: [PATCH] Work around merge-gnulib glitch from fresh checkout * admin/merge-gnulib: In a fresh checkout, run gnulib-tool twice, instead of merely running autogen.sh twice. --- admin/merge-gnulib | 54 +++++++++++++++++++++++++++------------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/admin/merge-gnulib b/admin/merge-gnulib index fec469c017..7219fadd47 100755 --- a/admin/merge-gnulib +++ b/admin/merge-gnulib @@ -102,34 +102,44 @@ gnulib_srcdir= exit 1 } -# gnulib-tool has problems with a bare checkout (Bug#32452#65). -test -f configure || ./autogen.sh || exit - # Old caches can confuse autoconf when some Gnulib-related changes take effect. rm -fr autom4te.cache || exit +# gnulib-tool has problems with a bare checkout (Bug#32452#91). +if test -f configure; then + passes='1' +else + passes='1 2' +fi + avoided_flags= for module in $AVOIDED_MODULES; do avoided_flags="$avoided_flags --avoid=$module" done -"$gnulib_srcdir"/gnulib-tool --dir="$src" $GNULIB_TOOL_FLAGS \ +for pass in $passes; do + case $pass in + 2) echo 'Running gnulib-tool again to work around Bug#32452#91.' >&2 + esac + + "$gnulib_srcdir"/gnulib-tool --dir="$src" $GNULIB_TOOL_FLAGS \ $avoided_flags $GNULIB_MODULES && -rm -- "$src"lib/gl_openssl.h \ - "$src"lib/stdio-read.c "$src"lib/stdio-write.c \ - "$src"m4/fcntl-o.m4 \ - "$src"m4/gl-openssl.m4 \ - "$src"m4/gnulib-cache.m4 "$src"m4/gnulib-tool.m4 \ - "$src"m4/manywarnings-c++.m4 \ - "$src"m4/warn-on-use.m4 "$src"m4/wint_t.m4 && -cp -- "$gnulib_srcdir"/build-aux/texinfo.tex "$src"doc/misc && -cp -- "$gnulib_srcdir"/build-aux/config.guess \ - "$gnulib_srcdir"/build-aux/config.sub \ - "$gnulib_srcdir"/build-aux/install-sh \ - "$gnulib_srcdir"/build-aux/move-if-change \ - "$src"build-aux && -cp -- "$gnulib_srcdir"/lib/af_alg.h \ - "$gnulib_srcdir"/lib/save-cwd.h \ - "$src"lib && -{ test -z "$src" || cd "$src"; } && -./autogen.sh + rm -- "$src"lib/gl_openssl.h \ + "$src"lib/stdio-read.c "$src"lib/stdio-write.c \ + "$src"m4/fcntl-o.m4 \ + "$src"m4/gl-openssl.m4 \ + "$src"m4/gnulib-cache.m4 "$src"m4/gnulib-tool.m4 \ + "$src"m4/manywarnings-c++.m4 \ + "$src"m4/warn-on-use.m4 "$src"m4/wint_t.m4 && + cp -- "$gnulib_srcdir"/build-aux/texinfo.tex "$src"doc/misc && + cp -- "$gnulib_srcdir"/build-aux/config.guess \ + "$gnulib_srcdir"/build-aux/config.sub \ + "$gnulib_srcdir"/build-aux/install-sh \ + "$gnulib_srcdir"/build-aux/move-if-change \ + "$src"build-aux && + cp -- "$gnulib_srcdir"/lib/af_alg.h \ + "$gnulib_srcdir"/lib/save-cwd.h \ + "$src"lib && + { test -z "$src" || cd "$src"; } && + ./autogen.sh || exit +done -- 2.32.0