[Omake] SVN Commit: OMake Build System [0.9.8.x] (Rev. 9345)
Jason Hickey
jyh at cs.caltech.edu
Mon Jun 19 08:59:03 PDT 2006
Aleksey Nogin wrote:
> Also, I think that the space of reasonable options is a bit different.
> The complete set of choices is:
> 1) whether to print the output while the command is executed
> 2) successful executions:
> a) whether to [re]print the whole thing in a single block when it is
> finished
> 3) failed executions:
> a) whether to [re]print the whole thing in a single block when it is
> finished
> b) whether to [re]print the whole thing in a single block when OMake
> is finished (or is in the no-op FAM loop).
It seems close. I was mainly aiming to collapse the space into the
"useful" modes, but we could perhaps add finer control.
--divert-only => not 1 and 2a
--divert-repeat => 2a+3a
--divert* => 3b
There is a policy that output is never discarded.
> - if both (1) and (2a) are disabled, we get the "really quiet" mode,
> where only the output of the failed commands is printed). This is good!
I worry that discarding output can be surprising. I'm imagining some
scenario like:
foo: "Warning: Foo.x is defined inconsistently" (but compilation
succeeds)
bar: "Error: Foo.x was defined inconsistently" (compilation fails)
> - I would claim that it does not make much sense to enable (2a) without
> (3a) (as the --divert-only will be doing according to the docs). The
> output from the failed commands is normally more important and
> postponing it until later only makes it impossible to start fixing bugs
> while OMake is still running.
Otherwise, it seems the main thing missing is the ability to disable 3b
when diversions are active.
> P.S. Also, I think that we should be more consistent in adding --no-...
> forms to all these options. This way it's easier to make some of these
> enabled by default in some circumstances.
I agree, I thought Lm_arg had a way to do this, but apparently Justin
never had a chance to add it (before leaving for the the nether
regions:). It seems pretty easy to add.
> P.P.S. How about making "-j" imply "disable 1, enable 2a/3a" and making
> "-k/-p/-P" imply "enable 3b"?
Seems reasonable. Disabling 1 can be a bad idea because the prompt for
interactive commands (like latex) disappears.
Jason
--
Jason Hickey http://www.cs.caltech.edu/~jyh
Caltech Computer Science Tel: 626-395-6568 FAX: 626-792-4257
More information about the OMake-Devel
mailing list