Hi Daniel,
> I am trying to use <implicit-dependency> to bring
in a header generated by
> the msvc mc generator.
>
> The person who helped me figure this out told me I had
to include both
> <implicit-dependency>msg
> <dependency>msg
>
> This seemed a bit odd to me, but the dependant won't
compile unless either
> <dependency> is given or the msg target is built
first.
>
> Does this seem right? Is there a bug with
<implicit-dependency>?
>
> Attached is a test case (requires msvc toolkit).
Thanks for providing the testcase! But you forgot to tell
how to use it
If I run "bjam", the "msg" target is
built, just because it's part of the same
Jamfile and is not marked as "explicit".
I suppose you meant running "bjam test". There are
points to make:
1. The '<implicit-dependency>' won't automatically
build 'msg'. It just means
'I think there's header in 'msg' that this target depends
on'. This is by
design (though if you think that's wrong design, I'm open to
arguments).
2. The *header* should be automatically generated, because
it's used from
'log.cpp'. It's not generated, and that's a bug. Pretty
subtle one, because
if you say "bjam", the dependency between
generated header and the
including .cpp file will be correctly found, so this bug
does not reproduce
on whole-project builds.
I attach a patch to fix that issue. It will soon be
committed, but I'd need to
write tests first so this might take more time.
- Volodya
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
a>
|