0

私はSconsのソースコードを見ていましたが、タイムスタンプを計算している場所を特定できないようです(MD5計算を見つけるのに問題はありませんでした)。

また、マニュアルページはタイムスタンプを参照しているだけで、実際の内容について詳しく説明していません。一部の人にとっては明らかかもしれませんが、これが正確に何を意味するのかはまだ不明です。

何のタイムスタンプ?

Scons がタイムスタンプの一貫性のために使用する方法は次のとおりですか?

time.ctime(os.path.getmtime(file))

基本的にファイルがいつ変更されたかをチェックしますか?

そして、これを実行時のものと比較しますか?

4

1 に答える 1

3

Make を使用したことがあれば、その概念はおなじみのはずです。基本的に、ソースとターゲットの変更時間を比較し、ソースの方が新しい場合はターゲットを再構築する必要があります。また、SCons がファイルに内部的に保存するファイル署名情報もいくつかありますが.sconsign.dblite、プログラムからアクセスできるとは思えません。

SCons Decider() 関数 docsに見られるように、動作は次のいずれかに設定できます ( SCons man ページからコピー):

  • timestamp-newer (これは従来の Make ユーティリティの動作であり、make は timestamp-newer の同義語として使用できます)
  • タイムスタンプ一致
  • MD5
  • MD5-タイムスタンプ
于 2013-08-24T09:35:35.413 に答える