Как мне переместить цель построения базеля?

Все правила Bazel помещают цели сборки в определенное место.
Я могу найти цели через bazel-bin/, но все они рекурсивно разбросаны по другим нецелевым файлам, которые меня не волнуют.

Как мне написать правило сборки, которое помещает все мои программы в один bin/ каталог?

Должен ли я написать свою собственную программу, которая проходит bazel-bin/ и rsyncs все программы к чему-то вроде usr/local/binили есть запрос, который я могу сделать? Я бы хотел, чтобы это было частью правила сборки, но не похоже, что правила по умолчанию поддерживают что-то подобное. И мне не нравится идея запустить сборку, а затем выполнить второй шаг, который синхронизирует все мои двоичные файлы в одну и ту же папку.

Каков рекомендуемый способ сделать это? Очень часто хочется, чтобы все ваши программы и все ваши тесты были в одних и тех же конкретных каталогах.

1 ответ

Изучите использование pkg_tar, вы можете использовать это для объявления файлов / выходных файлов, которые вы действительно хотите распространять, и package_dir атрибут для помещения файлов в usr/local/bin или где вы хотите в тарболе.

Другие вопросы по тегам