[jamming] Building Objects - Need to reference with grist when using them in another jam file?

John Waugh john.waugh at gmail.com
Thu Dec 18 12:53:54 PST 2008


On Thu, Dec 18, 2008 at 7:23 AM, Diane Holt <holt.diane at gmail.com> wrote:
> Oh, sorry -- I read this too quickly -- I missed that you were building them
> out to PRODUCT_LIB_DIR. In that case, I'd recommend writing a wrapper rule
> around Objects (which I assume is what you're using to compile the source
> files), that sets SOURCE_GRIST to whatever you want it to be. Then you can
> list just the simple filenames in LibraryFromObjects.
>

If I understand the original question, it looks like there can be
objects of the same name in various 'framework' directories, so he
couldn't just use the base filenames in LibraryFromObjects. There
would be no way to distinguish if it was 'object_2' from framework2 or
framework3 (reading the example LibraryFromObjects statement very
closely).

There needs to be some way to distinguish between low-level objects
from the top-level library creation step.
It does seem to me like you need to use the gristed (ie unique) names
at some point...

You could do something like this:

LibraryFromObjects component_1$(SUFLIB) :
                    [FrameworkObjects framework_1 : object_1 object_8 object_32]
                    [FrameworkObjects framework_2 : object_2 object_99]
                    [FrameworkObjects framework_3 : object_2 object_42
object_60]
                    ;

And then put the logic of generating the full gristed names inside the
FrameworkObjects rule.
Not really changing anything, but maybe a little more readable/maintainable.

-John



More information about the jamming mailing list