amalgamationの様子をみる~その2 [SQLite]
次は、前々回の記事で出てきた、「main.mk」内の「target_src」のルールに戻ります。ルールを再度掲載すると、こんな感じ。
いきなり、「tsrc」と言うディレクトリを消して、再度作成しています。処理後には消さない様ですね・・。って、これはどこのディレクトリを起点に実行してるんでしたっけ??
「README」を読み返したところ、特に何も書いていない様で、「publish.sh」を見てみると、何となく任意のディレクトリで実行できそうな感じです。が、ソースのトップレベルのディレクトリが安全そうな気がしますね・・。まあ、今はどっちでもいいですか・・。
次に、対象のソースを全て、「tsrc」にコピーしていますね。その後、「SRC」内に含まれているソース以外のファイル「sqlite.h.in」「parse.y」を削除しています。
で、「./tool/vdbe-compress.tcl」に「tsrc/vdbe.c」を与えて実行しているようですね。後の行から、このスクリプトが「target_source」を作成しているのだろうと想像できます。
tclのソースの様ですが、分かりますかねぇ・・・。つづく。
target_source: $(SRC) $(TOP)/tool/vdbe-compress.tcl rm -rf tsrc mkdir tsrc cp -f $(SRC) tsrc rm tsrc/sqlite.h.in tsrc/parse.y tclsh $(TOP)/tool/vdbe-compress.tcl vdbe.new mv vdbe.new tsrc/vdbe.c touch target_source |
いきなり、「tsrc」と言うディレクトリを消して、再度作成しています。処理後には消さない様ですね・・。って、これはどこのディレクトリを起点に実行してるんでしたっけ??
「README」を読み返したところ、特に何も書いていない様で、「publish.sh」を見てみると、何となく任意のディレクトリで実行できそうな感じです。が、ソースのトップレベルのディレクトリが安全そうな気がしますね・・。まあ、今はどっちでもいいですか・・。
次に、対象のソースを全て、「tsrc」にコピーしていますね。その後、「SRC」内に含まれているソース以外のファイル「sqlite.h.in」「parse.y」を削除しています。
で、「./tool/vdbe-compress.tcl」に「tsrc/vdbe.c」を与えて実行しているようですね。後の行から、このスクリプトが「target_source」を作成しているのだろうと想像できます。
tclのソースの様ですが、分かりますかねぇ・・・。つづく。
コメント 0