素のlibffiがMac上でmakeできないのでパッチ送った
(11/15 追記。このパッチもマージされました。次の3.0.11には反映されている予定です)
前述の調査でgithubのissuesを調べたりもしたんだけど、そこにあった問題からひとつ。libffiをふつーにソースとってきて、Mac上でconfigure && makeすると、makeが失敗する。
GNU core utilsとMacのBSD由来ぽい`wc'(語数とか行数を数えるコマンド)の出力形式がちょびっとちがうのが原因。
% echo | wc -w # Mac OS X builtin wc 0 % echo | gwc -w # GNU coreutils wc (port:coreutils) 0
Makefile中で文字としてこの結果を比較してる箇所があって、もちろん、
% test " 0" = "0"; echo $? 1 % test "0" = "0"; echo $? 0
となる。簡単に解決するなら-eqにすればいいよね。
% test " 0" -eq 0; echo $? 0 % test "0" -eq 0; echo $? 0
ということで修正をつくってpull requestなげた。
これもね、少なくともMacPortsはパッチ当ててるのよ。というかパッチ内容から原因を特定したのだ。
もーさ、世界中がばらばらに個別に対応するのってば効率悪くないすか?なぜなぜupstreamに反映されていないのさー。