aboutsummaryrefslogtreecommitdiff
path: root/sim/common
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2021-10-31 00:49:39 -0400
committerMike Frysinger <vapier@gentoo.org>2021-10-31 00:49:39 -0400
commit65f42b88ffaeac1ea70e2b468c301363213e1326 (patch)
treee37123577d982d65100922fe98a687a9e2eb463d /sim/common
parentb6143d31625b3869a6715c7479cf665272162b6f (diff)
downloadgdb-65f42b88ffaeac1ea70e2b468c301363213e1326.zip
gdb-65f42b88ffaeac1ea70e2b468c301363213e1326.tar.gz
gdb-65f42b88ffaeac1ea70e2b468c301363213e1326.tar.bz2
sim: tighten up stamp rules
Add a new ECHO_STAMP helper and convert existing stamp code over to it. This is mostly common rules and cgen mloop rules.
Diffstat (limited to 'sim/common')
-rw-r--r--sim/common/Make-common.in44
1 files changed, 24 insertions, 20 deletions
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index ced77f4..706531e 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -45,6 +45,12 @@ srcsim = $(srcdir)/..
include $(srcroot)/gdb/silent-rules.mk
+ifeq ($(V),0)
+ECHO_STAMP = @echo " GEN "
+else
+ECHO_STAMP = @:
+endif
+
# Helper code from gnulib.
GNULIB_PARENT_DIR = ../..
include $(GNULIB_PARENT_DIR)/gnulib/Makefile.gnulib.inc
@@ -240,7 +246,7 @@ remote_sim_h = $(srcroot)/include/sim/sim.h
all: libsim.a run$(EXEEXT) .gdbinit
libsim.a: $(LIB_OBJS)
- rm -f libsim.a
+ $(SILENCE) rm -f libsim.a
$(ECHO_AR) $(AR) $(AR_FLAGS) libsim.a $(LIB_OBJS)
$(ECHO_RANLIB) $(RANLIB) libsim.a
@@ -261,10 +267,11 @@ gentmap: gentmap.o
targ-vals.h targ-map.c: stamp-tvals
stamp-tvals: gentmap
- rm -f tmp-tvals.h tmp-tmap.c
- ./gentmap -h >tmp-tvals.h
+ $(ECHO_STAMP) targ-vals.h
+ $(SILENCE) ./gentmap -h >tmp-tvals.h
$(SILENCE) $(SHELL) $(srcroot)/move-if-change tmp-tvals.h targ-vals.h
- ./gentmap -c >tmp-tmap.c
+ $(ECHO_STAMP) targ-tmap.c
+ $(SILENCE) ./gentmap -c >tmp-tmap.c
$(SILENCE) $(SHELL) $(srcroot)/move-if-change tmp-tmap.c targ-map.c
$(SILENCE) touch $@
@@ -411,19 +418,16 @@ endif
# FIXME This is one very simple-minded way of generating the file hw-config.h
hw-config.h: stamp-hw ; @true
stamp-hw: Makefile.in $(srccom)/Make-common.in $(config.status) Makefile
- rm -f tmp-hw.h
- echo "/* generated by Makefile */" > tmp-hw.h
- sim_hw="$(SIM_HW_DEVICES)"; \
- for hw in $$sim_hw ; do \
- echo "extern const struct hw_descriptor dv_$${hw}_descriptor[];" ; \
- done >> tmp-hw.h
- echo "const struct hw_descriptor *hw_descriptors[] = {" >> tmp-hw.h
- sim_hw="$(SIM_HW_DEVICES)"; \
- for hw in $$sim_hw ; do \
- echo " dv_$${hw}_descriptor," ; \
- done >> tmp-hw.h
- echo " NULL," >> tmp-hw.h
- echo "};" >> tmp-hw.h
+ $(ECHO_STAMP) hw-config.h
+ $(SILENCE) ( \
+ sim_hw="$(SIM_HW_DEVICES)" ; \
+ echo "/* generated by Makefile */" ; \
+ printf "extern const struct hw_descriptor dv_%s_descriptor[];\n" $$sim_hw ; \
+ echo "const struct hw_descriptor *hw_descriptors[] = {" ; \
+ printf " dv_%s_descriptor,\n" $$sim_hw ; \
+ echo " NULL," ; \
+ echo "};" \
+ ) > tmp-hw.h
$(SILENCE) $(SHELL) $(srcroot)/move-if-change tmp-hw.h hw-config.h
$(SILENCE) touch $@
@@ -434,8 +438,8 @@ test-hw-events: $(srccom)/hw-events.c libsim.a
# See sim_pre_argv_init and sim_module_install in sim-module.c for more details.
modules.c: stamp-modules ; @true
stamp-modules: Makefile $(SIM_OBJS:.o=.c)
- @echo Generating $@
- @LANG=C ; export LANG ; \
+ $(ECHO_STAMP) modules.c
+ $(SILENCE) LANG=C ; export LANG ; \
LC_ALL=C ; export LC_ALL ; \
sed -n -e '/^sim_install_/{s/^\(sim_install_[a-z_0-9A-Z]*\).*/\1/;p}' $^ | sort >$@.l-tmp
@set -e; (\
@@ -450,7 +454,7 @@ stamp-modules: Makefile $(SIM_OBJS:.o=.c)
echo 'const int sim_modules_detected_len = ARRAY_SIZE (sim_modules_detected);'; \
) >$@.tmp
$(SILENCE) $(SHELL) $(srcroot)/move-if-change $@.tmp modules.c
- @rm -f $@.l-tmp $@.tmp
+ $(SILENCE) rm -f $@.l-tmp $@.tmp
$(SILENCE) touch $@
# CGEN support.