[GRASS-dev] [GRASS GIS] #1887: improve signal to noise ratio in the build logs

#1887: improve signal to noise ratio in the build logs
-------------------------+--------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: enhancement | Status: new
Priority: normal | Milestone: 6.4.4
Component: Compiling | Version: svn-trunk
Keywords: make | Platform: Linux
      Cpu: x86-64 |
-------------------------+--------------------------------------------------
Hi,

currently the build logs are highly cluttered with warning messages such
as:

{{{
Make/Grass.make:423: warning: overriding commands for target ...
Make/Grass.make:414: warning: ignoring old commands for target ...
Make/Script.make:47: warning: overriding commands for target `install'
Make/Rules.make:99: warning: ignoring old commands for target `install'
}}}

e.g. using the 6.4.3svn wxGUI g.extension.py to install an addon shell
script creates this output in the GUI output window:
{{{
Fetching <r3.in.xyz> from GRASS-Addons SVN (be patient)...
Compiling...
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:423: warning: overriding
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:414: warning: ignoring old
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:423: warning: overriding
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:414: warning: ignoring old
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:423: warning: overriding
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:414: warning: ignoring old
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
/bin/sh: cannot create
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/locale/scriptstrings/r3.in.xyz_to_translate.c: Directory
nonexistent
sed: couldn't flush stdout: Broken pipe
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:423: warning: overriding
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:414: warning: ignoring old
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:423: warning: overriding
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Grass.make:414: warning: ignoring old
commands for target `/home/hamish/grassdata/ll_wgs84/hb/.tmp
/debSqx86-vm/29440.0/r3.in.xyz/bin'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
Installing...
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Script.make:47: warning: overriding
commands for target `install'
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/include/Make/Rules.make:99: warning: ignoring old
commands for target `install'
Updating metadata file...
Installation of <r3.in.xyz> successfully finished
}}}

but if you "grep -v 'warning: .* commands for target'" away the useless
warnings that gets reduced to this:

{{{
Fetching <r3.in.xyz> from GRASS-Addons SVN (be patient)...
Compiling...
/bin/sh: cannot create
/home/hamish/dev/grass/svn/grass64svn/dist.i486-pc-linux-
gnu/locale/scriptstrings/r3.in.xyz_to_translate.c: Directory
nonexistent
sed: couldn't flush stdout: Broken pipe
Installing...
Updating metadata file...
Installation of <r3.in.xyz> successfully finished
}}}

... much more informative and you have a much better chance to spot any
real errors which may have happened along the way.

  * what does it mean?
  * if it is benign, can we make it go away without masking any real
problems?

thanks,
Hamish

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/1887&gt;
GRASS GIS <http://grass.osgeo.org>

#1887: improve signal to noise ratio in the build logs
-------------------------+--------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: enhancement | Status: new
Priority: normal | Milestone: 6.4.4
Component: Compiling | Version: svn-trunk
Keywords: make | Platform: Linux
      Cpu: x86-64 |
-------------------------+--------------------------------------------------

Comment(by glynn):

Replying to [ticket:1887 hamish]:

> what does it mean?

It means that you have multiple rules (with commands) for a single target
(in this case, the "install" target). The last rule defined is used, any
others are ignored.

> if it is benign, can we make it go away without masking any real
problems?

The "install" target in Rules.make recursively runs "make install" for
each directory in $(INSTALL_SUBDIRS). AFAICT, nothing ever sets that
variable, so the target is pointless.

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/1887#comment:1&gt;
GRASS GIS <http://grass.osgeo.org>

#1887: improve signal to noise ratio in the build logs
-------------------------+--------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: enhancement | Status: new
Priority: normal | Milestone: 6.4.4
Component: Compiling | Version: svn-trunk
Keywords: make | Platform: Linux
      Cpu: x86-64 |
-------------------------+--------------------------------------------------

Comment(by hamish):

> Replying to [ticket:1887 hamish]:
> > if it is benign, can we make it go away without masking any
> > real problems?

Replying to [comment:1 glynn]:
> The "install" target in Rules.make recursively runs "make install"
> for each directory in $(INSTALL_SUBDIRS). AFAICT, nothing ever
> sets that variable, so the target is pointless.

see r38564, r38565. apparently it was for the i.pr/ collection of modules
in addons svn.

How to install groups of modules (like gipe or i.pr) using an automatic
download+compile tool like g.extension.* is still an open question.

Hamish

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/1887#comment:2&gt;
GRASS GIS <http://grass.osgeo.org>

#1887: improve signal to noise ratio in the build logs
-------------------------+--------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: enhancement | Status: new
Priority: normal | Milestone: 6.4.3
Component: Compiling | Version: svn-trunk
Keywords: make | Platform: Linux
      Cpu: x86-64 |
-------------------------+--------------------------------------------------
Changes (by neteler):

  * milestone: 6.4.4 => 6.4.3

Comment:

Replying to [comment:2 hamish]:
> see r38564, r38565. apparently it was for the i.pr/ collection of
modules in addons svn.

Since that fails anyway, these changes may be reverted.
Target back to 6.4.3

Markus

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/1887#comment:3&gt;
GRASS GIS <http://grass.osgeo.org>

#1887: improve signal to noise ratio in the build logs
--------------------------+-------------------------------------------------
  Reporter: hamish | Owner: grass-dev@…
      Type: enhancement | Status: closed
  Priority: normal | Milestone: 6.4.3
Component: Compiling | Version: svn-trunk
Resolution: fixed | Keywords: make
  Platform: Linux | Cpu: x86-64
--------------------------+-------------------------------------------------
Changes (by hamish):

  * status: new => closed
  * resolution: => fixed

Comment:

duplicate install target removed from devbr6 & relbr64 with r55249,
r55251.

Hamish

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/1887#comment:4&gt;
GRASS GIS <http://grass.osgeo.org>