Flags for actions toolset.link and toolset.link.dll

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Flags for actions toolset.link and toolset.link.dll

Mark Evans-2
Someone correct me if this is a mistaken observation.

The stock toolsets/generators use "actions link" to build a program and "actions link.dll" to build a shared library (and "actions archive" to build a static archive).  The inheritance relationship between link and link.dll to me is unfortunate because there may be some flags that apply to building a program that you don't want to be inherited (by link.dll) when building a library.  It seems to me to make more sense to employ say "actions link.exe" for building EXE type - thus providing a hook to discriminate EXE flags from LIB flags - if that makes any sense.  BB2 gives me the freedom to do just this but I thought it was worth mentioning for the benefit of other toolset implementers that come along.

Does this make any sense to the experts?



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: Flags for actions toolset.link and toolset.link.dll

Vladimir Prus
Hi Mark,

> The stock toolsets/generators use "actions link" to build a program and
> "actions link.dll" to build a shared library (and "actions archive" to
> build a static archive).  The inheritance relationship between link and
> link.dll to me is unfortunate because there may be some flags that apply to
> building a program that you don't want to be inherited (by link.dll) when
> building a library.  It seems to me to make more sense to employ say
> "actions link.exe" for building EXE type - thus providing a hook to
> discriminate EXE flags from LIB flags - if that makes any sense.  BB2 gives
> me the freedom to do just this but I thought it was worth mentioning for
> the benefit of other toolset implementers that come along.
>
> Does this make any sense to the experts?

Yes, this sounds reasonable. FWIW, that is  done for the compile actions -- we
have compile.c and compile.c++ and it's possible to set flags on just one of
those rules -- though I don't think it's ever used.

Maybe you can file an enhancement request in the issue tracker:

   http://zigzag.cs.msu.su/boost.build/newticket

and mention the use case you have where this link -> link.dll inheritance
cause problems for you?

Don't forget to specify your email in the ticket, so that you are notified on
future changes.

Thanks,
Volodya




_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build