В Buck, как я могу использовать вывод genrule в качестве заголовка для cxx_library?
У меня есть genrule
который генерирует заголовочный файл C++ с использованием проприетарного инструмента. Затем заголовок используется в cxx_library
, Глядя на код из этой презентации, я попробовал следующее:
cxx_library(
name = 'my-library',
srcs = glob(['src/**/*.cpp']),
exported_headers = {
'my_header.h': genfile('my-header.h'),
},
...
Тем не менее, кажется, что genfile
был объявлен устаревшим Что я должен использовать вместо этого?
1 ответ
Решение
Вам просто нужно указать цель сборки genrule
на месте genfile('my-header.h')
,
genrule(
name='my-header',
cmd='some_command.py',
out='my-header.h',
)
cxx_library(
name = 'my-library',
srcs = glob(['src/**/*.cpp']),
exported_headers = {
'my_header.h': ':my-header',
},
...
)