>
> This may be pedantic, but there is no dependency between the Tupfiles, 
> only the rules defined by the Tupfiles.  See my comment below for the 
> explanation.
>
 
I know this is what is supposed to be the case, however what I was 
attempting to understand is why these implicit dependencies don't actually 
exist.

Either Tupfile can create the node in the database if it does not exist.  
> I'm not sure, but I think there may be a "ghost" node or something similar 
> for nodes created for dependencies before it is known if it is a generated 
> or pre-existing file.  When the rule that creates the node is parsed, the 
> database information is updated.
>
>
> What I was expecting was some kind of "forward reference" node to be 
created. However. The behaviour doesn't *appear* to be consistent with 
that. If there was a system of "forward declarations" and "linking", then I 
would expect all Tupfiles to be parsed before any errors were generated 
about a rule referencing a file as an input that doesn't exist. However I 
*appear* to get such errors immediately. 

I think that what actually happens is that as it is parsing a Tupfile that 
references a file that apparently doesn't exist, it pauses and parses the 
Tupfile in that directory if it hasn't done so already, to see if the file 
is generated. Hopefully it guards again circular dependencies. There is a 
function "parse_dependent_tupfiles" in the code. So it would appear that 
Tupfiles *do* in fact have dependencies.

-- 
-- 
tup-users mailing list
email: [email protected]
unsubscribe: [email protected]
options: http://groups.google.com/group/tup-users?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"tup-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to