问题描述
我想有条件地将库(及其替代品)用于目标。我不想在任何地方添加诸如<usefoo>yes:<library>foo
之类的条件,而是希望创建一个传播的功能。但是,b2会因随后的卡纸而产生错误。
import feature ;
feature.feature usefoo : yes : propagated composite optional ;
feature.compose <usefoo>yes : <library>foo ;
lib foo : : : : <include>foo <define>USE_FOO ;
lib foo : : <toolset>gcc-10 : : <include>foo_gcc10 <define>USE_FOO ;
lib bar ;
# Undesirable because there may be lots of bars.
# lib bar : : <usefoo>yes:<library>foo ;
exe test1 : test.cc : <library>bar ;
exe test2 : test.cc : <usefoo>yes <library>bar ;
error: Recursion in main target references
error: the following target are being built currently:
error: ./test2 ./bar ./foo ./foo
我也不能在<usefoo>yes
中放入foo的要求。看来feature.compose
不接受条件性要求。正确的方法是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)