kdesrc-build: stop after failure? --truly-verbose?

Michael Pyne mpyne at kde.org
Thu Feb 27 04:27:08 UTC 2014


On Wed, February 26, 2014 22:30:48 Milian Wolff wrote:
> Hey,
> 
> not sure this is the right list. I noticed that kdesrc-build happily
> continues building even when a module failed to build. Is this desired?

Yes, it's on purpose. The idea is that most people are not building KDE for 
the first time and don't need to have the whole compile aborted because mpyne 
committed a fail-to-build bug in juk or something.

> Couldn't instead the _full_ error log be cat'ed and the build stopped? Now,
> I have to hunt down the error log manually which is really cumbersome. If
> others think this behavior is good, could I vote for an additional cli
> argument to stop after any failure?

Yes, kdesrc-build can do (most) of this. I thought I documented it as a 
command line option but it turns out that it was a kdesrc-buildrc option.

But you can still reach it via command line by passing --stop-on-failure=1

As far as the error log file, its location gets output at the end (which will 
be very soon indeed if you pass --stop-on-failure), and I think dfaure might 
still have an open bug about reporting the logfile location immediately upon 
failure.

However, what I personally do is that I added a small bash function to my 
.bashrc, "errorLog", which does something like:

errorLog() {
  $EDITOR "~/log-kdesrc-build/latest/$1/error.log"
}

where ~/log-kdesrc-build should be wherever your log directory is (probably 
$srcdir/log). kdesrc-build maintains symlinks throughout the log directory to 
make it easy to find the last log set for a given module, and which log 
contains the error if the module failed (i.e. if you see an error.log in a 
specific log directory it means that module failed to build that run).

> Also, while at it, could we get a "truly verbose" flag, which actually
> outputs the output from whatever tool is currently running?

If you file a bug I'd probably implement it. --debug did this kind of thing 
(it might even still do it, but it would be too annoying to use here). I say 
"file a bug" only because it's guaranteed it'll drop off my plate otherwise.

> For me as a
> developer, its really annoying having to tail -f on some random log files
> to get my hands on the make output... How are other developers handling
> this?

I just watch the percentages in the kdesrc-build output personally. When I'm 
doing development I don't use kdesrc-build at all; I still retain my 'cs' and 
'cb' shell macros to switch between individual source/build dirs as needed and 
manually do my git-fu and make-n-shake so that I can see compiler warnings.

I'm sorry if it's been annoying to use but I'm always open to improvements 
(especially improvements with patches, but no one else seems to like Perl... 
;)

In the meantime there are other, better-documented, command line options which 
are useful. Documentation is available at http://kdesrc-build.kde.org/documentation/, and if you build kdesrc-build it should install 
a man page to $KDEDIR/share/man/man1 or thereabouts.

I've recently become a big fan of --resume-from (or -after), --stop-before (or 
-after) and --ignore-modules options myself. And always --pretend.

Regards,
 - Michael Pyne


More information about the Kde-frameworks-devel mailing list