我有一个genrule
输出包含 C++ 头文件的目录。我也有一个cxx_library
使用genrule
. 的headers
字段cxx_library
如下所示:
...
headers = [
':my-headers',
],
...
问题是我的 C++ 源文件包含这样的标题:
#include "my_header.h"
但是 Buck 是这样准备临时区域的:
my-cxx-library#default,private-headers/out
out
包含我生成的标题的文件夹的别名在哪里。
因此,为了使用标题,我必须像这样包含它们:
#include "out/my_header.h"
该库不是我自己的,所以我不想更改源代码。相反,我想使用类似 a 的东西subdir_glob
来包含:my-headers/out
.
我试过这个:
...
headers = subdir_glob([
(':my-headers/out', '**/*.h'),
]),
...
但是,似乎以这种方式完成时,字符串:my-headers
不会被解析为:my-headers
.
buck中是否有可以将规则扩展到其输出路径的函数?