[libbacktrace] Fix and simplify xcoff_%.c pattern rule
authorTom de Vries <tdevries@suse.de>
Mon, 28 Jan 2019 22:21:19 +0000 (22:21 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Mon, 28 Jan 2019 22:21:19 +0000 (22:21 +0000)
When generating xcoff_%.c, the last command is a sed command.  In case of a
sed failure, this will leave an incomplete file, which will appear as up to
date to make, so consequently it will not be regenerated.  Fix this by
sedding into a temporary file instead.

Also, use $< to access the prerequisite xcoff.c, instead of spelling out the
file name once more.

2019-01-28  Tom de Vries  <tdevries@suse.de>

* Makefile.am (xcoff_%.c): Generate sed result into temporary file.
Use $< to access prerequisite.
* Makefile.in: Regenerate.

From-SVN: r268344

libbacktrace/ChangeLog
libbacktrace/Makefile.am
libbacktrace/Makefile.in

index b26b78148cf6f0e8f722b9bb5047b16870e5e668..9097401014bbf6f35f92230e3e5187bf38d4b4ec 100644 (file)
@@ -1,3 +1,9 @@
+2019-01-28  Tom de Vries  <tdevries@suse.de>
+
+       * Makefile.am (xcoff_%.c): Generate sed result into temporary file.
+       Use $< to access prerequisite.
+       * Makefile.in: Regenerate.
+
 2019-01-25  Nathan Sidwell  <nathan@acm.org>
 
        * elf.c (elf_add): Pass "" filename to recursive call with
index 997a535dff45ec820183547170aa35a5c0c7641a..0d5b3193e2549c902f73fdcd368750309cc9d6cb 100644 (file)
@@ -108,8 +108,9 @@ xcoff_%.c: xcoff.c
        REPLACE='#undef BACKTRACE_XCOFF_SIZE\
        #define BACKTRACE_XCOFF_SIZE'; \
        $(SED) "s/^$$SEARCH\$$/$$REPLACE $*/" \
-               $(srcdir)/xcoff.c \
-               > $@
+               $< \
+               > $@.tmp
+       mv $@.tmp $@
 
 test_elf_SOURCES = test_format.c testlib.c
 test_elf_LDADD = libbacktrace_noformat.la elf.lo
index f04577066f81dd665bfe3b031392635eeab1406f..b25ac92aeda0864f4de303ed25fd9be4d1d05881 100644 (file)
@@ -1754,8 +1754,9 @@ uninstall-am:
 @NATIVE_TRUE@  REPLACE='#undef BACKTRACE_XCOFF_SIZE\
 @NATIVE_TRUE@  #define BACKTRACE_XCOFF_SIZE'; \
 @NATIVE_TRUE@  $(SED) "s/^$$SEARCH\$$/$$REPLACE $*/" \
-@NATIVE_TRUE@          $(srcdir)/xcoff.c \
-@NATIVE_TRUE@          > $@
+@NATIVE_TRUE@          $< \
+@NATIVE_TRUE@          > $@.tmp
+@NATIVE_TRUE@  mv $@.tmp $@
 
 @NATIVE_TRUE@instrumented_alloc.lo: alloc.c