私がこのディレクトリ構造を持っているとしましょう:
- SConstruct
- src /
- a.cpp
- b.cpp
- 含む/
- ああ
- bh
SConstructでは、毎回['src / a.cpp'、'scr/b.cpp']を指定したくありません。ベースソースディレクトリを「src」に設定する方法を探しています
ヒントはありますか?ドキュメントを調べてきましたが、役立つものが見つかりません
あなたのためのいくつかのオプション:
まず、sconsはサブディレクトリにSConscriptファイルを使用するのが好きです。SConscriptを挿入するsrc/
と、ローカルファイルを参照できます(ビルドサブディレクトリにも出力が生成されます)。SConstructで一度環境をセットアップできます。次に、マスターSConstructからSConscriptを「ロード」します。
SConscript('src/SConscript')
プロジェクトが大きくなるにつれて、サブディレクトリ内のSConscriptファイルの管理は、すべてをマスターSConstructに配置するよりも簡単です。
次に、役立つ可能性のある同様の質問/回答があります。これは、非常に単純な例でGlobを使用しています。
第三に、それは単なるpythonなので、プレフィックスなしでファイルのリストを作成し、リスト内包表記を使用して実際のリストを作成できます。
file_sources = [ 'a.c', 'b.c' ]
real_sources = [os.path.join('src', f) for f in file_sources]