This is the mail archive of the
ecos-devel@sourceware.org
mailing list for the eCos project.
Re: Verbose modes for eCos makefiles
- From: John Dallaway <john at dallaway dot org dot uk>
- To: Sergei Gavrikov <sergei dot gavrikov at gmail dot com>
- Cc: eCos Developers <ecos-devel at ecos dot sourceware dot org>
- Date: Sun, 21 Aug 2011 21:41:08 +0100
- Subject: Re: Verbose modes for eCos makefiles
- References: <alpine.DEB.2.00.1108131612030.17695@vostro>
Hi Sergei
Sergei Gavrikov wrote:
> It was added a few checks for "V" variable (a verbose level) in eCos
> ``rules.mak`` file and the level of the verbosity is set in a top most
> eCos ``makefile`` (which is auto-generated). The level of verbosity can
> be set from a command line as ``make V=x`` where "x" can be set to 0, 1,
> or 2)
>
> V=0 - silent build (it is equal to a call ``make --silent``)
> V=1 - "semi-silence", when ``make`` outputs a kind of work is
> doing now
> V=2 - full output (it is equal to "old" call of ``make``)
>
> Default level is 1 (semi-silence). IMHO, it is right value and it is no
> need to type ``make V=1`` every time.
>
> Pros (V=1):
>
> - He/she will be know what is running.
> - He/she will be know/learn an order the build process.
> - He/she will see any warnings and possible they will sent us the
> patches to fix it :-)
>
> % make tests
> ...
> CC strtoul.c
> LINK strtoul
> CC memchr.c
> /home/sg/repo/ecos-hg/packages/language/c/libc/string/current/tests/memchr.c: In function âmainâ:
> /home/sg/repo/ecos-hg/packages/language/c/libc/string/current/tests/memchr.c:107: warning: assignment discards qualifiers from pointer target type
> LINK memchr
> ...
I can appreciate that the "semi-silent" output you are proposing makes
warning messages stand out more clearly, but this appears to be the only
benefit. The existing output already indicates what is running and the
order of the build process. Have I missed something?
> Cons:
>
> - It is needed to re-built ``ecosconfig`` to get it working.
>
> NOTE: Only a few lines were added to only one source
> host/tools/configtool/common/common/build.cxx
>
> - Very few people work with command-line and they need to know about
> V=x (V=2).
> - eCos ConfigTool (may be "semi-silence" is odd for it, not tested).
I would also be concerned about the processing overhead on Cygwin hosts
and the possiblility of unexpected output when using multiple eCos
repositories or older eCos host tools.
Is your proposal based on another build system you have used?
John Dallaway
eCos maintainer
http://www.dallaway.org.uk/john