[前へ] [次へ] [目次]


パッケージ化

ここまでの説明で honmon ファイルは生成できるように なりましたが、これだけでは JIS X 4081 形式の書籍として完全なものでは ありません。 この章では、JIS X 4081 形式の書籍としてパッケージ化する方法などに ついて説明します。

catalogs

JIS X 4081 形式の書籍では、これまでに生成した honmon ファイルの他に、catalogs というファイルが必ず必要です。 FreePWING には catalogs ファイルを生成する仕掛けが用意 として、EPWUTIL というソフトウェアに付属している catdump コマンドと互換の Perl スクリプトが用意されています。

catdump を使って catalogs ファイルを生成する には、まず次のような catalogs.txt ファイルを用意します。

[Catalog]
FileName   = catalogs
Type       = EPWING1
Books      = 1

[Book]
Title      = "国語辞典"
BookType   = 6001
Directory  = "KOKUGO"

用意ができたら、実際に catalogs ファイルを生成します。 catdump を直接起動する代わりに、次のようにします。

% fpwmake catalogs

catalogs.txt ファイルの書式の詳細については、 EPWUTIL 付属の catdump のマニュアル をご覧ください。

なお、/usr/local/share/freepwing/catalogs ディレクトリに catdump 用の catalogs.txt のサンプルファイルと、 catdump で生成した catalogs ファイルがインストールされます (ただし、FreePWING を /usr/local 以下にインストールして datadir を変更していない場合)。 こちらを参考にすると良いでしょう。

パッケージ化のための Makefile の改良

用意した Makefile にいくつかの変数を追加することで、 パッケージ化を容易にすることができます。 以下に記述例を記します。

PACKAGE = kokugo-fpw1.0
PACKAGEEXTRA = README.pkg=README TODO VERSION
PACKAGEDEPS  = VERSION
ARCHIVEEXTRA = README.pkg TODO
CLEANEXTRA   = VERSION
DIR = kokugo

VERSION:
      rm -f $@
      date +'version %Y-%m-%d' > VERSION

各パラメタの意味は、次の通りです。

PACKAGE
このパッケージの名前です。 変換プログラム一式を、tar+gzip および zip 形式でアーカイブする際の トップディレクトリおよびファイル名の接頭辞に使われます。 上記の例ではトップディレクトリは kokugo-fpw1.0、ファイル 名は kokugo-fpw1.0-src.tar.gz になります。 また、JIS X 4081 形式に変換した書籍データ一式をパッケージ化して tar+gzip 形式や zip 形式でアーカイブする際のファイル名にも使われます。 上記の例では kokugo-fpw1.0.tar.gzkokugo-fpw1.0.zip になります。
PACKAGEEXTRA
JIS X 4081 形式に変換した書籍データ一式 (catalogshonmon および外字ファイル) を収めたアーカイブを作る際に、 書籍データ以外に一緒に入れるファイルを書き並べます。 `ファイル名=ファイル名' という形で指定した場合は、左辺のファイルを右辺 のファイル名に改名してパッケージに入れることを意味します。
PACKAGEDEPS
変換プログラム一式のアーカイブを作成する際に、ここに書かれたターゲット が前もって実行されます。 PACKAGEEXTRA で指定したファイルの中に、最初から用意されて いるファイルではなく、何らかの処理をして生成しなくてはならないファイル があった場合は、この PACKAGEDEPS に書き、生成方法を Makefile の中に記しておくと良いでしょう。
ARCHIVEEXTRA
変換プログラム一式のアーカイブを作る際に、READMEMakefile、catdump 用の catalogs.txt 以外に 一緒に入れるファイルを書き並べます。 `ファイル名=ファイル名' という形で指定した場合は、左辺のファイルを右辺 のファイル名に改名してパッケージに入れることを意味します。
DIR
honmon および外字ファイルを収めるサブディレクトリの名前 です。 catalogs.txt の中で Directory パラメタに 書いた値を小文字化したものを指定する必要があります。 また、この DIR の値は、変換した書籍データ一式を パッケージ化する際のトップディレクトリにも使われます。

インストール

前節で説明した改良を Makefile に施したら、fpwmake を実行 してみます。 まず、JIS X 4081 形式に変換した書籍データ一式をインストールしてみます。 これには、install ターゲットを使います。

% fpwmake install

FreePWING を /usr/local 以下にインストールし、 datadir の位置を変更していなければ、 /usr/local/share/dict にインストールされます。 前節の例を使った場合、ディレクトリ以下は次のようになります。

kokugo/README
kokugo/TODO
kokugo/catalogs
kokugo/kokugo/data/honmon

別の場所にインストールしたい場合は、INSTALLDIR で指定 します。

% fpwmake install installdir=/some/where

変換した書籍データのアーカイブ

次に、JIS X 4081 形式に変換した書籍データ一式をパッケージ化して tar+gzip 形式および zip 形式でアーカイブしてみます。 (インストールを実行しなくても、アーカイブの作成は可能です。) これには、package ターゲットを使います。

% fpwmake package

先にも記しましたが、今回の例では、できあがるファイル名は kokugo-fpw1.0.tar.gzkokugo-fpw1.0.zip に なります。 これらのファイルに収められるファイルは、次の通りです。 基本的に、インストールのときの構成と同じです。ただし、zip 形式では ファイル名およびディレクトリ名は大文字になります。

kokugo/README
kokugo/TODO
kokugo/catalogs
kokugo/kokugo/data/honmon

変換スクリプトのアーカイブ

最後に、変換プログラム一式をパッケージ化して tar+gzip 形式でアーカイブ してみます。 (honmon を作成していなくても、アーカイブの作成は可能です。) これには、archive ターゲットを使います。

% fpwmake archive

今回の例では、できあがるファイル名は kokugo-fpw1.0-src.tar.gz になります。 これらのファイルに収められるファイルは、次の通りです。

kokugo-fpw1.0/README
kokugo-fpw1.0/catalogs.txt
kokugo-fpw1.0/Makefile
kokugo-fpw1.0/README.pkg
kokugo-fpw1.0/TODO

[前へ] [次へ] [目次]