У меня есть рабочее пространство Bazel с собственным проектом, в котором также используется внешний проект.Макет выглядит так:
* workspace/
|-- my_project/
|-- some_other_project/
|-- outside/
|---- external_project
Все на одном языке (C ++), и я получил my_project
(который зависит от external_project
) для правильной компиляции, и все идет хорошо.
Я хотел бы включить предупреждения для своих проектов и отключить их для всего, что находится внутри папки outside/
(а также для чего-либо в системных заголовках).Я добавляю предупреждения, добавляя
compiler_flag: "-Weverything"
compiler_flag: "-isystem/path-to-my-workspace/outside"
в свою цепочку инструментов.
Проблема в том, что теперь Базель жалуется на
The include path '/path-to-my-workspace/outside' references a path outside of the execution root.
Я понимаю, что это, вероятно,сделано из соображений безопасности, но я все еще хотел бы, чтобы меня не беспокоили other_project
предупреждений ... Я знаю, что мог бы использовать new_external_repository
, но я хотел бы сохранить все мое рабочее пространство как моно-репо (а также яя не на 100%, что будет работать).
Есть ли способ указать глобальный "флаг предупреждений", который затем переопределяется для каждой папки?