The extra \; parameter in the find command causes it to fail immediately and
not clean any config.cache:
$ find . -name config.cache -exec rm -f {} \; \;
find: paths must precede expression: `;'
This is benign in most cases but the binutils is also using this Makefile.tpl
and
as the result its 'make distclean' can leave config.cache files around, which
fails subsequent attempts to configure and build it.
I have modified the Makefile.tpl and regenerated Makefile.in from it. For
testing
I ran a config/make/make distclean loop.
---
Makefile.in | 2 +-
Makefile.tpl | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 8ac778a0e09..e95d3107d7b 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -2740,7 +2740,7 @@ local-distclean:
-rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null
-rmdir c++tools fastjar gcc gnattools gotools 2>/dev/null
-rmdir libcc1 libiberty texinfo zlib 2>/dev/null
- -find . -name config.cache -exec rm -f {} \; \; 2>/dev/null
+ -find . -name config.cache -exec rm -f {} \; 2>/dev/null
local-maintainer-clean:
@echo "This command is intended for maintainers to use;"
diff --git a/Makefile.tpl b/Makefile.tpl
index 431ce5ceb9c..7797dca3de9 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -979,7 +979,7 @@ local-distclean:
-rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null
-rmdir c++tools fastjar gcc gnattools gotools 2>/dev/null
-rmdir libcc1 libiberty texinfo zlib 2>/dev/null
- -find . -name config.cache -exec rm -f {} \; \; 2>/dev/null
+ -find . -name config.cache -exec rm -f {} \; 2>/dev/null
local-maintainer-clean:
@echo "This command is intended for maintainers to use;"
--
2.47.3