From 0ee8858e7aeca5ba5f702204daad2ddd290ef229 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 6 May 2022 08:45:46 +0930 Subject: [PATCH] bfd targmatch.h makefile rule I hit this just now with a make -j build after touching config.bfd. mv: cannot stat 'targmatch.new': No such file or directory make[2]: *** [Makefile:2336: targmatch.h] Error 1 make[2]: *** Waiting for unfinished jobs.... Fix that by not removing the target of the rule, a practice that seems likely to cause parallel running of the rule recipe. The bug goes back to 1997, the initial c0734708814c commit. * Makefile.am (targmatch.h): rm the temp file, not targmatch.h. * Makefile.in: Regenerate. --- bfd/Makefile.am | 2 +- bfd/Makefile.in | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bfd/Makefile.am b/bfd/Makefile.am index f2f70590e88..92ff15b36ee 100644 --- a/bfd/Makefile.am +++ b/bfd/Makefile.am @@ -801,7 +801,7 @@ libbfd.a: stamp-lib ; @true # vector names. It is built from config.bfd. It is not compiled by # itself, but is included by targets.c. targmatch.h: config.bfd targmatch.sed - $(AM_V_at)rm -f targmatch.h + $(AM_V_at)rm -f targmatch.new $(AM_V_GEN)$(SED) -f $(srcdir)/targmatch.sed < $(srcdir)/config.bfd > targmatch.new $(AM_V_at)mv -f targmatch.new targmatch.h diff --git a/bfd/Makefile.in b/bfd/Makefile.in index 3068560c48b..b5f0c0a5c89 100644 --- a/bfd/Makefile.in +++ b/bfd/Makefile.in @@ -2331,7 +2331,7 @@ libbfd.a: stamp-lib ; @true # vector names. It is built from config.bfd. It is not compiled by # itself, but is included by targets.c. targmatch.h: config.bfd targmatch.sed - $(AM_V_at)rm -f targmatch.h + $(AM_V_at)rm -f targmatch.new $(AM_V_GEN)$(SED) -f $(srcdir)/targmatch.sed < $(srcdir)/config.bfd > targmatch.new $(AM_V_at)mv -f targmatch.new targmatch.h -- 2.30.2