0
build.jam中:如何有条件地向boost.build中的源添加文件?
project : usage-requirements <include>. ;
alias PUB : : : : <use>/ProjectA//PUB
<use>/ProjectB//PUB ;
lib LIB : [ glob *.c : feature.c ]
: <link>static
<use>/ProjectA//PUB
<use>/ProjectB//PUB ;
我想补充的目标,将增加feature.c的来源和定义USE_FEATURE。我尝试了几个不同的东西,但没有一个看起来像我想要的那样工作。
alias LIB_WITH_FEAT : LIB feature.c : <define>USE_FEATURE ;
alias LIB_WITH_FEAT : LIB : <source>feature.c <define>USE_FEATURE ;
不会将feature.c或USE_FEATURE添加到构建中。但不提供任何错误或警告。它只是建立LIB。
lib LIB_WITH_FEAT : feature.c LIB : <define>USE_FEATURE ;
给出“警告:无法构建LIB_WITH_FEAT”。虽然如果它工作,我不认为它会成为我想要的,因为它会尝试单独构建LIB,并且LIB需要USE_FEATURE与feature.c一起正常工作。
您的问题是非常不清楚..你想添加feature.c到什么? – GrafikRobot 2015-02-11 21:50:43
对不起,您可以构建目标LIB来构建库,但是有些项目需要使用Feature X构建库。Feature X的实现位于feature.c中,并且主库中的调用由USE_FEATURE守卫包装。我想添加一个目标来构建库,如LIB目标,但也包括源文件中的feature.c文件并定义USE_FEATURE。 – 2015-02-12 14:31:02
我的答案下面是否做你想要的? – GrafikRobot 2015-02-19 16:59:55