binutils-gdb/gdb/silent-rules.mk
Andrew Burgess 76bbe1f597 gdb/build: apply silent-rules.mk to the data-directory Makefile.in
This commit makes use of gdb/silent-rules.mk in the data-directory
Makefile.in.  I've only updated the rules that actually generate
things, I've not touched the install or uninstall rules, this matches
gdb/Makefile.in.

I've not managed to completely silence all of the recipe output, the
mkinstalldirs command outputs some diagnostic text which looks like
this:

    GEN    stamp-python
  mkdir -p -- ./python/gdb
  mkdir -p -- ./python/gdb/command
  mkdir -p -- ./python/gdb/dap
  mkdir -p -- ./python/gdb/function
  mkdir -p -- ./python/gdb/printer

I have a patch for mkinstalldirs that fixes this (by adding a new
--silent command line flag), but that patch needs to be submitted to
automake, then an updated mkinstalldirs sync'd to the gcc repository,
and then copied into the binutils-gdb repository... so I'm leaving
that for a future project.

Then the guild compiler also emits some diagnostic output, which looks
like this:

    GEN    stamp-guile
  mkdir -p -- ./guile/.
  mkdir -p -- ./guile/gdb
  wrote `./gdb.go'
  wrote `gdb/experimental.go'
  wrote `gdb/iterator.go'
  wrote `gdb/printing.go'
  wrote `gdb/support.go'
  wrote `gdb/types.go'

The 'wrote' lines are from the guild compiler.  The only way to
silence these would be to redirect stdout to /dev/null I think.  I did
prototype this, but wasn't 100% convinced about that part of the
patch, so I've decided to leave that for another day.

I did need to add a new SILENT_ECHO variable to silent-rules.mk, this
is set to a suitable 'echo' command to use within recipes.  When we
are in silent mode then I use the 'true' command, while in verbose
mode we actually use 'echo'.

So, other than the issues outlined above, the output when building the
data-directory is now greatly reduced, and more inline with the output
when building in the gdb/ directory.

There should be no change in what is actually built after this commit.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
2024-04-08 10:25:42 +01:00

28 lines
832 B
Makefile

# If V is undefined or V=0 is specified, use the silent/verbose/compact mode.
V ?= 0
ifeq ($(V),0)
ECHO_CXX = @echo " CXX $@";
ECHO_CC = @echo " CC $@";
ECHO_CXXLD = @echo " CXXLD $@";
ECHO_CCLD = @echo " CCLD $@";
ECHO_REGDAT = @echo " REGDAT $@";
ECHO_GEN = @echo " GEN $@";
ECHO_GEN_XML_BUILTIN = \
@echo " GEN xml-builtin.c";
ECHO_GEN_XML_BUILTIN_GENERATED = \
@echo " GEN xml-builtin-generated.c";
ECHO_INIT_C = @echo " GEN init.c"
ECHO_SIGN = @echo " SIGN gdb";
ECHO_YACC = @echo " YACC $@";
ECHO_LEX = @echo " LEX $@";
ECHO_AR = @echo " AR $@";
ECHO_RANLIB = @echo " RANLIB $@";
SILENCE = @
# Silence libtool.
SILENT_FLAG = --silent
# Used in shell snippets instead of 'echo'.
SILENT_ECHO = true
else
SILENT_ECHO = echo
endif