Inspired by the recent poppler move from autoconf to cmake for its
build system, the following.
Given that poppler didn't compile on at least two arches, I found that
cmake is pretty much terse in its output, especially when errors are
encountered. Often it is important to know how the compiler or linker
was invoked, to be able to (quickly) resolve the issue at hand. Cmake
doesn't seem to report such call by default, it needs VERBOSE=1 to be
set in the environment in order to do so.
I recently proposed to enable this by default for cmake, but got some
negative feedback for that. Hence, I'd like to know the opinion of more
people on the issue.
In the past we have had verbose build systems, that printed a lot of
messages. Portage even analyses this output to look for common
problems. Newer buildsystems (like cmake), or just newer insights (like
gnustep makefiles, linux kernel, git, ...) suppress more messages
leading to reduced output.
- should we leave defaults of build systems as is, keeping some very
verbose and others very terse?
- should we always enable verbosity such that we can analyse logs, both
by Portage as well as in bugs when something apparently went wrong?
- should make the output level consistent for all build systems?
I think verbosity is useful when debugging problems. Portage's --jobs
feature nicely allows to hide the "ugly" output (even with --jobs=1),
still storing the log for when something goes wrong, while eliminating
the need to look at it all the time.
So what do you think? Pros, cons?
Gentoo on a different level