In article <40D80D94.50000 / weirichhouse.org>,
Jim Weirich  <jim / weirichhouse.org> wrote:
>Phil Tomson wrote:
>> Jim,
>> 
>> Thanks, this helps explain a lot about Rake.
>> 
>> You guessed correctly that ncvhdl is a compiler.  ncelab is sort of like a 
>> linker.  Unfortuneatly each .vhd file doesn't compile to a 
>> corresponding .vhdo file (object file) - that would be nice.  All of the 
>> comilation units get put into a package file in a different directory - the 
>> same package file, so each .vhd file gets compiled and added to the 
>> project's .pkg file which makes it hard to figure out if you really need to 
>> recompile a particular .vhd file (not Rake's problem, though, this is  a 
>> problem with the compiler/linker tool and it would present a problem for 
>> make as well).
>
>You could embed ncvhdl into a script that produces a .vhdo file whose 
>only purpose is to provide a time stamp for rake to key off of.  A 
>little kludgey, but if compile times are long it might be worth it.

That's probably a reasonable way to do it.

>
>Here's another idea.  Is there any way to get the time that a particular 
>file was added package file?  Perhaps the package file has internally 
>embedded dates and time?  If so, and you can write some ruby code to 
>pull that information out, then you could extend the FileTask object by 
>overriding the timestamp method.  That would be a really cool use of 
>rake that went beyond the capabilities of make.

That would be cool, but the .pak file is binary.  I tried to do some 
searching in it, but didn't find any of the strings that I looked for nor 
anything else that was intelligible.

Probably creating .vhdo files as you suggested would be the way to go.

Phil