我正在使用Buck作为我自己的C ++项目,但我依赖于使用CMake构建的第三方库。 CMake文件很复杂,所以我认为在Buck中重新创建他们的CMake文件是不切实际的。相反,我想打电话给巴克的CMake。
从Buck调用CMake的最佳方法是什么?
我应该如何构建我的项目以减少头痛?
答案 0 :(得分:1)
我的建议是使用genrule和prebuilt_cxx_library。
这是我使用Google Test的Buck研究项目: https://github.com/ar90n/lab/tree/master/sandbox/buck-study/gtest
此项目包含两个Buck文件。一个(./gtest/BUCK
)用于获取和构建Google Test。另一个(./BUCK
)用于构建和运行测试程序。
如果要构建和运行此项目,请执行以下命令,
$ buck fetch //gtest:googletest-src
$ buck build :sample1
$ buck run :sample1
答案 1 :(得分:0)
调用CMake会破坏可重复性,因此它不是最好的方法。相反,请尝试以下方法:
/cmake-generated
)。这不如Buck真正的端口好,但是你可以获得一次性手动步骤的大部分好处。