SConsでビルドされたプロジェクトがあり、 Clang Static Analyzerを使用してコードを分析しようとしています。ただし、実行時は
scan-build scons
SCons は によって導入された設定を無視するようscan-build
です。どうすればこれを機能させることができますか?
SConsでビルドされたプロジェクトがあり、 Clang Static Analyzerを使用してコードを分析しようとしています。ただし、実行時は
scan-build scons
SCons は によって導入された設定を無視するようscan-build
です。どうすればこれを機能させることができますか?
動作する方法は、ビルドがどのように行われるかを制御するscan-build
ためにビルドシステム(など)によって通常使用されるさまざまな環境変数を設定することです。make
これらのいくつかは次のとおりです。
CC
-Cコンパイラとして使用するプログラムの名前CXX
-C++コンパイラとして使用するプログラムの名前CCC_*
-Clangの静的アナライザーの動作を制御するさまざまな環境変数SConsは通常、ビルドを実行する前に環境をクリーンアップします(これは機能です)。上記の環境変数を有効にするには、次のようにしSConstruct
ます。
env = Environment()
env["CC"] = os.getenv("CC") or env["CC"]
env["CXX"] = os.getenv("CXX") or env["CXX"]
env["ENV"].update(x for x in os.environ.items() if x[0].startswith("CCC_"))