2011-08-09 9 views
1

私はCode :: BlocksプロジェクトをSConsに移動します。私は、次のような構造を持つソースツリーを持っている:Scons:1つの大きなSContructと多くの小さなものの両方

trunk 
    lib1 
    lib2 
    libn 
    app1 
    app2 
    appn 

これはSConsはと私の最初の時間であり、私は良いだろうかを把握しようとしています - それぞれのアプリとlibフォルダまたは一つの大きなで多くの小さなSConscriptsを持っていますトランクの下に、各プロジェクトのソース、スイッチ、プレ/ポストビルドコマンドを記述したセクションを記述します。

私は個人的に1つのファイルを扱うことを好みますが、私はSConsで経験した人の意見を聞きたいと思います。

ありがとうございました。

答えて

2

個々のSConscriptファイルの利点の1つは、ファイル内のファイル名がSConscriptファイルが存在するディレクトリからのものであるということです。したがって、ビルドターゲットのファイル名のリストを作成することはあまり冗長になりません。

一方、異なるSConscriptファイルで共有する必要があるターゲットは、多くの場合、お互いに通信するために多くのシンボルが必要になります。

あなたのアプリとライブラリはかなり分かれているようです。あなたの場合は、最初に、各メジャーディレクトリに複数のSConscriptファイルを作成します。一般的に後で分けるよりも後で組み合わせる方が簡単です。

+0

私はちょうどSConscriptファイルを一貫したフォーマットで保存することができますので、それぞれのSConscriptビルディングが自分のものとは少し違った方法で終わることはありません。 – jackhab

+0

この引数は意味をなさない。なぜなら、多分あなたの多くの異なるソースコードファイルに対してすでにそうしているからだろう。 SConscriptファイルはPythonのソースコードです。一貫性を維持するのはそれほど難しいことではありません。 –

0

はそれをこの方法を考える:

を、あなたは一つの大きなファイルや多数の小さなファイルに整理あなたの本当のプロジェクトを作成しますか?確かに、すべてがすべて1つのファイルに含まれている場合、いくつかのことを行う方が簡単かもしれませんが、組織化のために複数のファイルがより簡単になることがあります。

メインのトランク上にあるSConstructファイル(警告と最適化フラグのようなもの)でグローバル設定をしてから、ターゲット固有の詳細を処理するSConscriptファイルにインポートする。

関連する問題