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