Buck支持标头的名称与文件夹相同

Does Buck support headers with the same name as folders?

本文关键字:文件夹 支持 Buck      更新时间:2023-10-16

我试图用雄鹿构建特征。不幸的是,特征具有不寻常的标题结构:

Eigen/src/Cholesky/LLT.h
Eigen/src/Cholesky/LDLT.h
Eigen/src/Cholesky/...
Eigen/src/...
Eigen/Array
Eigen/Cholesky
Eigen/Core
Eigen/...
...

您可以在github上浏览仓库。

我需要在导出的标题中包括Eigen/CholeskyEigen/Cholesky/LLT.h,但Buck认为这是一个冲突:

prebuilt_cxx_library(
  name = 'eigen',
  header_only = True,
  header_namespace = 'Eigen', 
  exported_headers = subdir_glob([
    ('Eigen', '*'),
    ('Eigen/src', '**/*.h'),
  ]), 
  visibility = [
    'PUBLIC',
  ],
)

java.nio.file.FilealReadyExistSexception:.../eigen/buck-out/gen/eigen#默认值,标题/eigen/cholesky

我如何拥有与Buck的导出标头相同名称的文件夹和文件?

src文件夹应该是导出的一部分,请尝试此:

prebuilt_cxx_library(
  name = 'eigen',
  header_only = True,
  header_namespace = 'Eigen', 
  exported_headers = subdir_glob([
    ('Eigen', '*'),
    ('Eigen', 'src/**/*.h'),
  ]), 
  visibility = [
    'PUBLIC',
  ],
)