[Cook] Re: cook making links

Jerry Pendergraft jerry at endocardial.com
Sun Nov 14 01:28:25 EST 2004


Thanks much, I really do read the manual, and I do use the (exists) for
version.o kinda things - very handy. So I don't know how I missed that!

-- 
Jerry Pendergraft                        jerry.pendergraft at endocardial.com
Endocardial Solutions                    voice: 651-523-6935
1350 Energy Lane, Suite 110                fax: 651-644-7897
St Paul, MN 55108-5254                  mobile: 651-491-0163

On Sat, 13 Nov 2004, Peter Miller wrote:

> As of cook.2.17 there is a feature where you can set the type of edge
> that appears iun the dependency graph.  This is documented in the User
> Guide in a section about making links:
> 
>         two: one(weak)
>         {
>             ln one two;
>         }
> 
> This tells cook to use a weak time constraint
> 
>     up-to-date = (mtime(need) <= mtime(target));
> 
> rather than the default "strict" constraint
>     
>     up-to-date =  (mtime(need) < mtime(target));
> 
> There is a third edge type "exists" where the target is only considered
> out of date if the ingredient does not exist and has to be created. 
> This is handy for things like version strings that change with every
> change set, but aren't enough to cause a recompile in their own right.
> 
> You can mix and match edge types
> 
>      target: one.o(strict) two.o(weak) three.o(exists)
>      {
>            gcc -o [target] [need];
>      }
> 
> If you don't define an edge type, it defaults to "(strict)"
> 
> 




More information about the Cook-users mailing list