public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: gdb-patches@sourceware.org
Subject: [PATCH v2] sim: switch modules.c & version.c to stamp files
Date: Tue, 15 Jun 2021 17:07:12 -0400	[thread overview]
Message-ID: <20210615210712.7347-1-vapier@gentoo.org> (raw)
In-Reply-To: <87a6nqgabf.fsf@tromey.com>

This fixes remaking of these files and avoids unnecessary rebuilds.

Also add both to `make clean` to match other stamp files.
---
 sim/ChangeLog             | 4 ++++
 sim/Makefile.in           | 8 +++++---
 sim/common/ChangeLog      | 7 +++++++
 sim/common/Make-common.in | 6 ++++--
 sim/common/local.mk       | 8 ++++++--
 5 files changed, 26 insertions(+), 7 deletions(-)

diff --git a/sim/ChangeLog b/sim/ChangeLog
index 8df4fde31aac..79e9656f36d1 100644
--- a/sim/ChangeLog
+++ b/sim/ChangeLog
@@ -1,3 +1,7 @@
+2021-06-15  Mike Frysinger  <vapier@gentoo.org>
+
+	* Makefile.in: Regenerate.
+
 2021-06-14  Mike Frysinger  <vapier@gentoo.org>
 
 	* configure.ac: Call AM_SILENT_RULES.
diff --git a/sim/Makefile.in b/sim/Makefile.in
index b5a2c2608dbc..3ba80a463812 100644
--- a/sim/Makefile.in
+++ b/sim/Makefile.in
@@ -730,7 +730,8 @@ AM_MAKEFLAGS = SIM_PRIMARY_TARGET=$(SIM_PRIMARY_TARGET)
 # NB: libcommon.a isn't used directly by ports.  We need a target for common
 # objects to be a part of, and ports use the individual objects directly.
 noinst_LIBRARIES = common/libcommon.a $(am__append_2)
-CLEANFILES = testsuite/common/bits-gen testsuite/common/bits32m0.c \
+CLEANFILES = common/version.c common/version.c-stamp \
+	testsuite/common/bits-gen testsuite/common/bits32m0.c \
 	testsuite/common/bits32m31.c testsuite/common/bits64m0.c \
 	testsuite/common/bits64m63.c
 DISTCLEANFILES = 
@@ -1584,9 +1585,10 @@ nltvals:
 	$(abs_srcdir)/common/gennltvals.py --cpp "$(CPP)" --output nltvals.def --srcroot $(srcroot)
 	$(SHELL) $(srcroot)/move-if-change nltvals.def $(abs_srcdir)/common/nltvals.def
 
-common/version.c: $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcdir)/common/create-version.sh
+common/version.c: common/version.c-stamp ; @true
+common/version.c-stamp: $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcdir)/common/create-version.sh
 	$(AM_V_GEN)$(SHELL) $(srcdir)/common/create-version.sh $(srcroot)/gdb $@.tmp
-	$(AM_V_at)$(SHELL) $(srcroot)/move-if-change $@.tmp $@
+	$(AM_V_at)$(SHELL) $(srcroot)/move-if-change $@.tmp $(@:-stamp=)
 	$(AM_V_at)touch $@
 
 # Alias for developers.
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index 14914dc04169..7e2170314ae7 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,10 @@
+2021-06-15  Mike Frysinger  <vapier@gentoo.org>
+
+	* Make-common.in: Add stamp-modules rule to avoid rebuilds.
+	(clean): Delete modules.c files.
+	* local.mk: Add version.c-stamp rule to avoid rebuilds.
+	(CLEANFILES): Add version.c files.
+
 2021-06-14  Mike Frysinger  <vapier@gentoo.org>
 
 	* local.mk (%D%/version.c): Use AM_V_GEN & AM_V_at wrappers.
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index 3dab9ca1fd14..12fb233c5ee4 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -465,7 +465,8 @@ test-hw-events: $(srccom)/hw-events.c libsim.a
 		$(srccom)/hw-events.c libsim.a $(EXTRA_LIBS)
 
 # See sim_pre_argv_init and sim_module_install in sim-module.c for more details.
-modules.c: Makefile $(SIM_OBJS:.o=.c)
+modules.c: stamp-modules ; @true
+stamp-modules: Makefile $(SIM_OBJS:.o=.c)
 	@echo Generating $@
 	@LANG=C ; export LANG ; \
 	LC_ALL=C ; export LC_ALL ; \
@@ -481,7 +482,7 @@ modules.c: Makefile $(SIM_OBJS:.o=.c)
 	echo '};'; \
 	echo 'const int sim_modules_detected_len = ARRAY_SIZE (sim_modules_detected);'; \
 	) >$@.tmp
-	$(SHELL) $(srcroot)/move-if-change $@.tmp $@
+	$(SHELL) $(srcroot)/move-if-change $@.tmp modules.c
 	@rm -f $@.l-tmp $@.tmp
 	touch $@
 
@@ -543,6 +544,7 @@ mostlyclean clean: $(SIM_EXTRA_CLEAN)
 	rm -f *.[oa] *~ core
 	rm -f run$(EXEEXT) libsim.a
 	rm -f hw-config.h stamp-hw
+	rm -f modules.c stamp-modules
 	rm -f gentmap targ-map.c targ-vals.h stamp-tvals
 	if [ ! -f Make-common.in ] ; then \
 		rm -f $(BUILT_SRC_FROM_COMMON) ; \
diff --git a/sim/common/local.mk b/sim/common/local.mk
index fc1149789a3c..25c7e5beb1f9 100644
--- a/sim/common/local.mk
+++ b/sim/common/local.mk
@@ -38,7 +38,11 @@ noinst_LIBRARIES += %D%/libcommon.a
 	%D%/sim-load.c \
 	%D%/version.c
 
-%D%/version.c: $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcdir)/%D%/create-version.sh
+%D%/version.c: %D%/version.c-stamp ; @true
+%D%/version.c-stamp: $(srcroot)/gdb/version.in $(srcroot)/bfd/version.h $(srcdir)/%D%/create-version.sh
 	$(AM_V_GEN)$(SHELL) $(srcdir)/%D%/create-version.sh $(srcroot)/gdb $@.tmp
-	$(AM_V_at)$(SHELL) $(srcroot)/move-if-change $@.tmp $@
+	$(AM_V_at)$(SHELL) $(srcroot)/move-if-change $@.tmp $(@:-stamp=)
 	$(AM_V_at)touch $@
+
+CLEANFILES += \
+	%D%/version.c %D%/version.c-stamp
-- 
2.31.1


      parent reply	other threads:[~2021-06-15 21:07 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-08 16:35 [PATCH/committed] sim: touch modules target Mike Frysinger
2021-05-08 20:49 ` Tom Tromey
2021-05-09 19:56   ` Mike Frysinger
2021-06-15  0:39   ` [PATCH] sim: switch modules.c & version.c to stamp files Mike Frysinger
2021-06-15 20:08     ` Tom Tromey
2021-06-15 21:01       ` Mike Frysinger
2021-06-15 21:07       ` Mike Frysinger [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210615210712.7347-1-vapier@gentoo.org \
    --to=vapier@gentoo.org \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).