ddskk

Portage に入っている ddskk は 20020901 で、さすがにこれは古いので新しいのにしたいのだが、20030511 以降のソースでmake すると1回目だけ

rico% make
emacs -batch -q -no-site-file -l SKK-MK -f SKK-MK-compile
Loading /home/usata/ddskk-12.2.0rc2/SKK-CFG...
Loading /usr/lib/emacs/21.3/i686-gentoo-linux/fns-21.3.1.el
(source)...
/home/usata/ddskk-12.2.0rc2/skk-dic.el is up-to-date
zsh: pollable event occurred  make

と言われてコンパイルできない問題がある。(気にせずこのままもう一度 make すると make は完了するし、ディレクトリを rm -rf してまた展開して make しても make できるので、自分で使う分には無視して使えばよいが、パッケージに含めるには問題がある)

調べてみたところ、Emacs 20.7 だと問題は起きないし、FreeBSDでも問題は起きない。また、Linux でもカーネルが 2.2.20 だと問題は起きない。謎。

mask して本家 CVS に入れるのは、と nakano さんに打診したところ、コンパイルできないんだったら入れないほうがいいのでは、ということであった。しかしこのままだと 12.2 がリリースされてもPortage に入れられないという問題が。あと make-temp-name のセキュリティホールも 20020901 だと塞がっていないので、12.2 が入れられないとなると 20020901 というなんとも中途半端なものにパッチを当てるはめになる。CVS のスナップショットなんだから、不具合があればスナップショットのバージョンを上げるのが筋だと思うのだが……(もしくはリリース版と入れ換える)。

バージョンは下がるが 11.6.0 の ebuild を作ってそちらにパッチを入れるかな?

上の問題が出るかどうか試したい人はddskk-20030629.tar.bz2(問題が出るソース; ebuild ではない)をどうぞ。Emacs 21 とAPEL を用意して Let's make!

ちなみに ebuildddskk.tar.gz に。