SSブログ

amalgamationの様子をみる~その4 [SQLite]

前回で、「target_source」のルールについてざ~っとみたので、次は、やっと大元の「sqlite3.c」のルールまで戻ります。

sqlite3.c: target_source $(TOP)/tool/mksqlite3c.tcl
        tclsh $(TOP)/tool/mksqlite3c.tcl
        echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c
        cat sqlite3.c >>tclsqlite3.c
        echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c
        cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c


まずは「./tool/mksqlite3c.tcl」を見て行きます。冒頭のコメントから・・・。

*

「target_source」の生成等、これまで実行されていた内容が書かれていますが、「parse.c」「parse.h」が「parse.y」からlemonと言う構文解析器生成プログラムで作成して「./tsrc」に追加されると書かれています。そんな箇所あったっけ?と思ったところ、その1の記事に該当の箇所がありました。

「keywordhash.h」は「mkkeywordhash」と言うコマンドで作成されるとのこと。「./tool」ディレクトリを見たところ、「mkkeywordhash.c」と言うCソースで提供されています。こちらもその1の記事で「keywordhash.h」の生成ルールの中でコンパイルされて、即利用されていますね。

まあ、そんな感じで「tsrc」ディレクトリが作成されて、ソースがそろったらこのスクリプトを実行せよとのこと。そしたら、「sqlite3.c」を作成するよと言うことです・・。


つづく。

【参考】
Lemon構文解析器生成プログラム



ioPLAZA【アイ・オー・データ直販サイト】



nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

ブログを作る(無料) powered by SSブログ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。