如何将生成的源放在Bazel中的私有包含路径中?
如果我将如何将生成的源放在Bazel中的私有包含路径中?,bazel,Bazel,如果我将genrule输出放入cc\u库,如何将其放入私有包含路径 假设我有一个文件.c,如下所示: #include <config.h> #包括 下面是一个构建脚本,它说明了问题: genrule( name = "config", outs = ["config.h"], cmd = "touch $@", ) cc_library( name = "lib",
genrule
输出放入cc\u库
,如何将其放入私有包含路径
假设我有一个文件.c
,如下所示:
#include <config.h>
#包括
下面是一个构建脚本,它说明了问题:
genrule(
name = "config",
outs = ["config.h"],
cmd = "touch $@",
)
cc_library(
name = "lib",
srcs = [
":config",
"file.c",
],
copts = [
"-isystem",
# <- what goes here?
],
)
genrule(
name=“config”,
outs=[“config.h”],
cmd=“touch$@”,
)
图书馆(
name=“lib”,
srcs=[
“:config”,
“file.c”,
],
科普特人=[
“-isystem”,
#可以使用copts中的$(GENDIR)
“生成变量”:
cc_library(
name = "mylib",
copts = ["-I", "$(GENDIR)/path/to/package"],
)
不幸的是,必须对包的路径进行硬编码,因为当前不支持$(RULEDIR)
变量。可以使用$(GENDIR)
copts中的$(make variable)
:
cc_library(
name = "mylib",
copts = ["-I", "$(GENDIR)/path/to/package"],
)
不幸的是,必须对包的路径进行硬编码,因为当前不支持$(RULEDIR)
变量