[Omake] SVN Commit: OMake Build System [0.9.8.x] (Rev. 11162)
Aleksey Nogin
nogin at metaprl.org
Fri Jun 29 11:25:07 PDT 2007
On 28.06.2007 18:18, Jason J. Hickey wrote:
> The following program now works as expected.
Cool, thanks!
> .STATIC: :key: $x
BTW, is the ":key:" syntax documented somewhere? I grepped for :key: in
omake-doc and I do not see anything. Perhaps it should be added to the
"Special dependencies" section in doc/src/omake-rules.tex (as well as in
the ection documenting the .STATIC sections).
Also, is there a reason to use :key: instead of overloading the :value:
keyword? Is it the intention that the variations in :key: dependencies
cause a new value to be saved along with the old one, while the
variations in the "normal" dependencies (including the :value: ones)
cause the old value to be overwritten? Note that this is not what
happens - if I replace the ":key:" with ":value:" in your example, it
acts as if there were no dependencies at all!
> Of course, .STATIC rules are only for values saved between runs. We also
> need the memo function.
I would propose to add a ".MEMO: ..." (or may be ".LAZY_MEMO:" or
".LAZY:"?) syntax that is identical to the ".STATIC" one, with the only
difference that ".MEMO" sections would not be saved in the files. The
two forms could then easily share the implementation, where an
additional boolean flag would be used to indicate, whether .omakedb
load/save should be attempted. On "load", we'd then also take the
conjunction of the flag with the "opt_flush_static".
Aleksey
More information about the OMake-Devel
mailing list