Yes, using the TOP variable helped.  Now I can think about how to handle 
the explicit
dependencies that I have in the Tupfiles.  The generator may produce more or
less generated files based on its specification input and explicitly 
stating them
(especially in the consumers) is going to be difficult to automate.

On Friday, November 14, 2014 12:57:44 PM UTC-8, Freddie Chopin wrote:
>
> On 11/14/2014 08:48 PM, [email protected] <javascript:> wrote: 
> > Although I didn't mention it in the earlier post, I also tried using 
> > the " | One.h " in my initial experiments.  I also tried the explicit 
> > path.  When I try the explicit path, I get: 
> > 
> > * 1) [0.001s] build-default/progs/basic/src 
> > tup error: Expected node 'basic' to be in directory 
> > 'build-default/progs/basic/src', but it is not there. 
> > tup error: Failed to find directory ID for dir 
> > './basic/libgen/src/One.h' relative to 63 
> > tup error: Error parsing Tupfile line 2 
> >   Line was: ': main.cpp | $(TUP_CWD)/basic/libgen/src/One.h |> g++ 
> > -Wall $(INCFLAGS) -g -c main.cpp |> main.o' 
> > 
> > Still no luck in making TUP happy with this setup. 
>
> OK, I seem to be asleep today (; 
>
> In your Tuprules.tup file placed in "top" folder of your project place 
> this: 
>
> TOP = $(TUP_CWD) 
>
> Now your rule should look like: 
>
> : main.cpp | $(TOP)/basic/libgen/src/One.h |> g++ -Wall $(INCFLAGS) -g 
> -c main.cpp |> main.o 
>
> The reason is that "TUP_CWD" in any tupfile is basically "." folder, so 
> nothin useful. But if you use it in Tuprules.tup to initialize a 
> variable, then this variable will hold the path to "top of your project" 
> anywhere you use it. 
>
> Regards, 
> FCh 
>

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