我已经为一个子项目制作了bjam文件。这个子项目包含一些源代码和头文件。构建的结果是一个静态库。我想从另一个项目中使用此子项目。有没有一种方法可以避免显式地指定到子项目头的路径?
例如:
# Jamfile for sub-library
project sublib
: requirements <include>../headers/include
: source-location ../ ;
lib sublib : [ glob src/*.cpp ] : <link>static ;我希望boost-build自动将上面的"../headers/include“添加到下一个jam-file中。但是现在我需要明确地指定它
# Jamfile for my root project
use-project /sublib : path_to_sublib/sublib-folder ;
project rootproject
: requirements <include>root_project_headers/
<include>path_to_sublib/headers/include/ # explicit declaration
<library>//sublib
<define>_VARIADIC_MAX=10
: source-location ../../ ;
exe root-executable : [ glob src/*.cpp ] ;有可能吗?这些jam文件在这里从我原来的简化了。这些文件对我很有用。
附注:我在文档中找到了usage-requirements属性,但我没有找到一种方法来让它工作。我尝试了我能想象到的所有变体。
发布于 2014-11-14 19:35:45
子项目Jamfile
lib subproj
: subproj.cpp
: <include>.
<link>static
:
: <include>.
;项目Jamfile
exe proj
: <source files>
/subproj//subproj
;这对我很有效。
https://stackoverflow.com/questions/22174289
复制相似问题