我为一个子项目制作了 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 ] ;
可能吗?这些果酱文件是从我原来的文件中简化而来的。这些文件对我有用。
PS我在文档中找到了usage-requirements属性,但我没有找到让它工作的方法。我尝试了所有我能想象到的变体。