_ [debian] uim 1:1.7.2-3 変

#657542 にて piuparts failure が報告されたので git で対処。

_ [debian] 続・canna FTBFS on hurd-i386

root@debian:~/canna/canna-3.7p3/dic/ideo/grammar# ../../../cmd/crxdic/crxdic  -g -s -o fuzokugo.cbd -D cnj.bits -n fuzokugo fuzokugo.swd
crxdic: cannot open grammar file cnj.bits.
root@debian:~/canna/canna-3.7p3/dic/ideo/grammar#

printf debugで探してみたところ、canna-3.7p3/cmd/crxdic/crxdic.c の

if ((fd = open(gfile, 0)) < 0 || !(gram = RkReadGram(fd, dic->gramsz)))

で open できてないことがわかった。open(2) の 0 がまずいらしい。/usr/include/x86_64-linux-gnu/bits/fcntl.h だと、

#define O_RDONLY             00

だけれど、hurd-i386 の /usr/include/i386-gnu/bits/fcntl.h だと、

#define O_RDONLY        0x0001  /* Open read-only.  */

と異なってた。なので、

-    if ((fd = open(gfile, 0)) < 0 || !(gram = RkReadGram(fd, dic->gramsz)))
+    if ((fd = open(gfile, O_RDONLY)) < 0 || !(gram = RkReadGram(fd, dic->gramsz)))

とするとビルドが通った。

_ [debian] ひとり BSP: canna

canna 3.7p3-8 QA upload: fixing FTBFS on hurd-i386

_ [debian] pulseaudio FTBFS on hurd-i386

canna が hurd-i386 でビルドできるようになったので、ようやく uim がビルドできると思ったら、kdelibs5-dev がインストールできない。どうも pulseaudio が hurd-i386 ではビルドできないようだ。探してみると、#573339 にそのものズバリがあったので、パッチをすべて当ててみるとビルドできるようになった。 ただ、pulseaudio は結構な大物だし当てるパッチの数も多いので、NMU するのは止めて様子を見ることにする。

_ [debian] uim FTBFS on hurd-i386

野良パッケージが混じっているとはいえ、hurd-i386 上での uim の B-D はすべて揃った。ということで早速ビルドしてみるけど、

uim-posix.c:116:13: error: 'MAXPATHLEN' undeclared (first use in this function)

とおなじみのエラーで止まってしまった。hurd には MAXPATHLEN や PATH_MAX という概念が存在しないので、動的確保するか決め打ちにする必要がある。とりあえず現時点では 4096 とかに決め打ちして通す。