namazu-dev(ring)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New filtering process implemented.
佐藤文優 @ 開発にも参加したいが…です。
Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx> wrote:
>> gzip.plには、Compress::Zlibを用いる方法と、gzipをpipeで呼び出す方法
>>が実装されていますが、今のところ環境を判別して動的にどちらかを選択する
>>ようにはなっていません。コメントアウト部分を適時選択してください ^^;
>
>ちょっと考えてみましたが、 configure 時に Compress::Zlip の
>有無を判別して filter_file(), filter_xs() を切り替えるのはけっ
>こう面倒そうです。
>
>というのは、 use 文は compile 時に必ずそのモジュールを要求す
>るため、
>
> sub filter_xs (\$) {
> my ($contref) = @_;
> use Compress::Zlib;
>
>と、サブルーチンの内側に入れても必ず、 Compress::Zlib を必要
>とするからです。mknmz.pl で NKF, Text::Kakasi, Text::ChaSen1
>モジュールをそれぞれ require 文で呼び出しているのはそのため
>です。
判定分で eval {} が使えると思ったら使えず、しかし、eval "use foo;";
だったら大丈夫そうです。
eval "use Compress::Zlib;";
if ($@ eq '') {
モジュールを使う
} else {
gzip を pipe で使う
}
といった感じ。
-- >8 -- signature -- >8 --
FROM : 佐藤文優(さとうふみやす) <fumiya@xxxxxxxxx>
WEB : http://www.bento.ad.jp/~fumiya/
WEB(LAN): http://kumasun.si.ykhm.cij.co.jp/
SAMBA : http://samba.bento.ad.jp/