boost build: отключить -WeffC++ для каждого модуля

Я использую boost build для большого проекта, который разделен на разные подпроекты. Вот файл jamroot:

project
    : requirements
    <variant>debug:<define>DEBUG
    <variant>release:<define>NDEBUG
    <variant>debug:<cxxflags>-Weffc++
    <include>.
    :
    ;

use-project ...
use-project ...
...

build-project ...
build-project ...
...

Один подпроект включает автоматически сгенерированный код, который не очень хорош в стиле кода. Поэтому я хотел бы отключить директиву tie -WeffC++ для этого подпроекта. Объявление -WeffC++ для каждого подпроекта возможно, но мне не очень нравится это решение, потому что я хочу, чтобы -WeffC++ везде, НО (в очень немногих) подпроектах, я его отключаю.

Есть ли возможность в boost build отключить эту директиву для каждого подпроекта? Или есть опция компилятора gcc, которую я могу добавить с другим в подпроекте, и это отключит уже указанный -WeffC++?

1 ответ

Решение

Вы можете отменить любую опцию предупреждения Gcc с помощью no- префикс: g++ -Wno-effc++, Определите это для подпроектов, которые вы хотите исключить, и это должно работать, пока параметры подпроектов добавляются в командную строку после значений по умолчанию.

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