[Omake] Testing whether a target has been defined

Jason Hickey jyh at cs.caltech.edu
Sun Jun 18 11:26:07 PDT 2006


malc wrote:
> I wonder why rule behaves the way it does, consider following:
> 
> <OMakeroot>
> .SUBDIRS: .
>     old-rule = $(rule)
>     rule(p1, p2, p3, p4, p5, p6) =
>         old-rule($(p1), $(p2), $(p3), $(p4), $(p5), $(p6))
>         export
>     a: :value: $`(println $@)
>         touch $@
>     .DEFAULT: a
> </OMakeroot>
> 
> Works just fine, but only when :value: is evaluated lazily.

That is a good point.  The rule function was defined to pass "an array 
of arrays of length 2" as stated in the docs.  But all arrays in OMake 
are one-dimensional, so this didn't make sense.

I've committed a change.  The options (p5) are now passed as a Map to 
give a proper association between option names and option values.

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 mailing list