[jamming] unexplained $(LOCATE) behavior

Paul Forgey paulf at metainfo.com
Tue May 18 01:23:02 PDT 2004

On May 17, 2004, at 10:57 PM, Vladimir Prus wrote:

> I think that's a bug in jam, but, on the other hand, maybe you should 
> add
> dependency from "a" to "b"?

Adding the following two lines solved it:

     Depends $(1) : $(2) ;
     NotFile $(2) ; # because we know to MkDir $(2:G=dir), not $(2)

What I'm doing is locating a directory and file hierarchy under 
$(LOCATE_TARGET) to stage an install package.

Between Vladimir's response and another very helpful person off the 
list, I'm now seeing what should have been obvious.  It was when I 
added grist to the directories that things started to go wrong.  I 
added the grist to make my MkDir's not step on the MkDir's invoked from 
Jambase from the larger project going on.

When I added grist, that broke the dependency between $(1) and $(2), 
causing the independent target warning.  And also, because of what 
Vladimir pointed out, causing the goofy binding.

I deal with a project using thousands of source files spread across 
several directories.  I know what the grist is for, believe me.  This 
may be an example of me not being my sharpest, but there are other ways 
it got me before.  There's got to be a better way..

More information about the jamming mailing list