c++ - 提升构建 : disable -Weffc++ per module

标签 c++ gcc boost-build bjam

我对一个分为不同子项目的大型项目使用 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++ ?

最佳答案

您可以使用 no- 前缀取消任何 Gcc 警告选项:g++ -Wno-effc++。为您要排除的子项目定义它,只要将子项目的选项添加到命令行之后默认值,它就应该可以工作。

关于c++ - 提升构建 : disable -Weffc++ per module,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7914812/

相关文章:

boost - 使用 bjam 进行简单安装

boost - 无法使用 MinGW 构建 Boost,它会寻找 Visual C++

c++ - 加载仅具有 alpha 值的纹理

C++ QLineEdit : setmaxlength() for number of bytes and not the number of the characters?

gcc - libpthread.so.0 : error adding symbols: DSO missing from command line

c - 如何使用 GCC 编译具有文字属性的内联 C 函数?

c++ - 如何优化默认的 if-branch

c++ - 使用 std :map 时崩溃

c++ - 如何使用iomanip让多个out字符串一起占据一定的宽度?

c++ - 将 Windows 上的 32 位和 64 位 Boost 构建到同一文件夹中