List Info

Thread: Selective propagation of features




Selective propagation of features
country flaguser name
Romania
2007-09-23 09:08:58
Hi there,



I think it would be very useful to be able to specify
features that
are propagated, but only to the targets that have declared
their
acceptance of (= dependency on) those features.

For example, one might want to build two versions of her
application:
ANSI and Unicode; she declares:

  feature charset : ansi unicode : symmetric propagated ;

However, she also wants to link with a library that does not
care
about "charset" (eg: a Boost library); it is
unnecessary to build
that library in two versions (= sub-directories)
(charset-ansi and
charset-unicode); thus, the feature should not be propagated
to it.



The workarounds that I have come up with so far are
unsatisfactory;
they do not scale well when multiple features/projects are
involved;
for example:

  feature charset : neutral ansi unicode : propagated ;
  ...
  exe Main : Main.cpp /boost//regex/<charset>neutral



I think a better solution might look like this:

  feature charset : ansi unicode :
propagated-only-to-supportive-targets ;
  ...
  lib Lib1 : Alfa.cpp :
<supports-propagation-of>charset ;
  lib Lib2 : Beta.cpp ;
  exe Main : Main.cpp Lib1 Lib2 : <charset>unicode ;



Can this be implemented (if so, how) ? Or do you know a
better
work-around ?



Thank you for your time.



-- 
Best regards,
 Adder

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

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )