2016-09-07 7 views
0

、私は次のワークフローを持っている:メイク:小さなプロジェクトのディレクトリにある最新のファイルへの依存

  1. コンパイルコードと./data
  2. に多くのファイルを書き込みます ./data./images
  3. 実行コードを生成
  4. 画像から動画を生成./images
  5. に配置し、データファイルから画像を生成する

私はmakefileを書いています。makefileはコードを実行し、必要に応じて前にコンパイルすることができます。しかし、私はステップ3と4の依存関係をどのように実装するのか分からず、現在そのターゲットを手動で作成しています。

です。 ./dataの最新のファイルは、最新のファイル./imagesより新しいですか?これをファイル単位で行う必要はなく、データ/イメージファイルの総数は不明です。

+0

「ファイル単位で行う必要はありません。どうしてですか? 'data'と' images'のファイルの間に1対1の対応はありませんか? – user657267

答えて

0

通常、ディレクトリの日付は最後のファイルが追加/変更された日付なので、依存関係のためにディレクトリ自体にタイムスタンプを使用できます。すでに処理されています再処理データを妨げる

images/%.img: data/%.dat 
    // generate image... 

:ファイル間のマッピングは、2つのディレクトリに存在する場合

images : data 
    // generate images 

あるいは、あなたのような何かを行うことができます。

+0

ディレクトリのタイムスタンプは、ファイルの追加と削除時にのみ変更されることに注意してください。既存のファイルの内容を変更すると、ディレクトリのタイムスタンプは変更されません。 –

関連する問題