ビルドスクリプト:「以前に完了したステップをスキップする」実装方法

ビルドスクリプト:「以前に完了したステップをスキップする」実装方法

GCC用のビルドスクリプト(現在機能しています)を作成しようとしていますが、GCC / binutilsを更新するときに必要なライブラリの再構築をすべてスキップできることを願っています。スクリプトがスキップするすべての手順を含むデフォルトのビルドディレクトリにファイルを生成するようにしたいと思います。どうすればいいですか?コマンドcatと検索を使用して、ファイルにステップがあることを確認してください。これにより、必要に応じて特定の部品を手動で再構築できます。

更新:公開された回答では、makefileが必要だと仮定しているようです。非常に面倒で不要なビルドプロセスは、makefileで望ましくない多くのCD、構成、make、インストールステップで構成されています。少しも。スクリプトはほぼ完成し、これが私に必要な最後のステップです...

アップデート2:以下の説明で述べたように、私はWindowsでMSYS bashをシェルとして使用しています。

ありがとうございます!

PS:スクリプトを実行するたびに「完了したステップをスキップする」必要があります。

答え1

make私はGNUの友達が書いた紹介が必要だと思います。

Makeは複数の中間ファイルを見て、どのファイルを再コンパイルする必要があるかを判断できます。そして、どのファイルに基づいてサポートファイルを再帰的に再構築する必要があるのか​​を調べてください。

Makefileを作成してプリセットする必要がありますが、喜んで実行できるようです。

詳しくは、次のURLをご覧ください。http://www.gnu.org/software/make/。実際、2番目のポイントは、私ができることよりもよく説明するように聞こえます。

答え2

もしそうなら、実際にフレームの作成について尋ねるのではなく、テキストファイルに特定の行があるかどうかを確認する方法に関する具体的な質問のようです。

foo文字列がファイルに存在するかどうかを知りたい場合は、次のようにします。

if grep -q foo thefile; then
   # it's there
else
   # otherwise
fi

これで問題が解決します。

答え3

あなたは知りたいかもしれませんCMake。おそらく、あなたが説明するものと比較して多少過剰であるかもしれませんが、makeより適切です。autotoolsあなたの人生をより簡単に作ることができるもの。

関連情報