From: Mike Frysinger Date: Sun, 31 Oct 2021 04:49:39 +0000 (-0400) Subject: sim: tighten up stamp rules X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=65f42b88ffaeac1ea70e2b468c301363213e1326;p=binutils-gdb.git 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. --- diff --git a/sim/bpf/Makefile.in b/sim/bpf/Makefile.in index e50e5c5de7a..05a246e670a 100644 --- a/sim/bpf/Makefile.in +++ b/sim/bpf/Makefile.in @@ -166,7 +166,8 @@ $(srcdir)/sem-be.c $(srcdir)/decode-be.c $(srcdir)/decode-be.h: \ stamp-mloop: stamp-mloop-le stamp-mloop-be stamp-mloop-le: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop-le.c eng-le.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -scache -prefix bpfbf_ebpfle -cpu bpfbf \ -infile $(srcdir)/mloop.in -outfile-suffix -le $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng-le.hin eng-le.h @@ -176,7 +177,8 @@ mloop-le.c eng-le.h: stamp-mloop-le @true stamp-mloop-be: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop-be.c eng-be.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -scache -prefix bpfbf_ebpfbe -cpu bpfbf \ -infile $(srcdir)/mloop.in -outfile-suffix -be $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng-be.hin eng-be.h diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in index ced77f4b2cc..706531e8fa1 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. diff --git a/sim/cris/Makefile.in b/sim/cris/Makefile.in index d47fe71865d..6125fc87bed 100644 --- a/sim/cris/Makefile.in +++ b/sim/cris/Makefile.in @@ -70,7 +70,8 @@ CRISV10F_INCLUDE_DEPS = \ # than the apparent; some "mono" feature is work in progress)? mloopv10f.c engv10.h: stamp-v10fmloop stamp-v10fmloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloopv10f.c engv10.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -no-fast -pbb -switch semcrisv10f-switch.c \ -cpu crisv10f -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin engv10.h @@ -89,7 +90,8 @@ mloopv32f.c engv32.h: stamp-v32fmloop # We depend on stamp-v10fmloop to get serialization to avoid # racing with it for the same temporary file-names when "make -j". stamp-v32fmloop: stamp-v10fmloop $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloopv32f.c engv32.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -no-fast -pbb -switch semcrisv32f-switch.c \ -cpu crisv32f -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin engv32.h diff --git a/sim/frv/Makefile.in b/sim/frv/Makefile.in index 640da02ab6a..e709e37ee74 100644 --- a/sim/frv/Makefile.in +++ b/sim/frv/Makefile.in @@ -57,7 +57,8 @@ FRVBF_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloop.c eng.h: stamp-mloop stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop.c eng.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -scache -parallel-generic-write -parallel-only \ -cpu frvbf -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h diff --git a/sim/iq2000/Makefile.in b/sim/iq2000/Makefile.in index bbc659049ae..4f85dc76235 100644 --- a/sim/iq2000/Makefile.in +++ b/sim/iq2000/Makefile.in @@ -57,7 +57,8 @@ IQ2000BF_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloop.c eng.h: stamp-mloop stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop.c eng.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -fast -pbb -switch sem-switch.c \ -cpu iq2000bf -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h diff --git a/sim/lm32/Makefile.in b/sim/lm32/Makefile.in index 587039cc161..2daf74d637b 100644 --- a/sim/lm32/Makefile.in +++ b/sim/lm32/Makefile.in @@ -38,7 +38,8 @@ LM32BF_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloop.c eng.h: stamp-mloop stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop.c eng.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -fast -pbb -switch sem-switch.c \ -cpu lm32bf -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h diff --git a/sim/m32r/Makefile.in b/sim/m32r/Makefile.in index 9add7f88c56..7b0ed1e0b93 100644 --- a/sim/m32r/Makefile.in +++ b/sim/m32r/Makefile.in @@ -59,7 +59,8 @@ M32RBF_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloop.c eng.h: stamp-mloop ; @true stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop.c eng.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -fast -pbb -switch sem-switch.c \ -cpu m32rbf -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h @@ -75,7 +76,8 @@ M32RXF_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloopx.c engx.h: stamp-xmloop ; @true stamp-xmloop: $(srcdir)/../common/genmloop.sh mloopx.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloopx.c engx.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -no-fast -pbb -parallel-write -switch semx-switch.c \ -cpu m32rxf -infile $(srcdir)/mloopx.in \ -outfile-suffix x @@ -92,7 +94,8 @@ M32R2F_INCLUDE_DEPS = \ # FIXME: Use of `mono' is wip. mloop2.c eng2.h: stamp-2mloop ; @true stamp-2mloop: $(srcdir)/../common/genmloop.sh mloop2.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop2.c eng2.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -no-fast -pbb -parallel-write -switch sem2-switch.c \ -cpu m32r2f -infile $(srcdir)/mloop2.in \ -outfile-suffix 2 diff --git a/sim/or1k/Makefile.in b/sim/or1k/Makefile.in index e6fb632cf91..8f447fdc291 100644 --- a/sim/or1k/Makefile.in +++ b/sim/or1k/Makefile.in @@ -72,7 +72,8 @@ OR1K32BF_INCLUDE_DEPS = \ mloop.c eng.h: stamp-mloop ; @true stamp-mloop: $(srcdir)/../common/genmloop.sh mloop.in Makefile - $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ + $(ECHO_STAMP) mloop.c eng.h + $(SILENCE) $(SHELL) $(srccom)/genmloop.sh -shell $(SHELL) \ -mono -fast -pbb -switch sem-switch.c \ -cpu or1k32bf -infile $(srcdir)/mloop.in $(SILENCE) $(SHELL) $(srcroot)/move-if-change eng.hin eng.h