ruby-1.8.6 を djgpp 環境でセルフビルド

だんだん DOS バカ日記的ふんいき(わざと変換させない)になってきつつ。だいたい 1.8.4 までならオフィシャルビルドがあるやないか。

djgpp 用の fileutils とか textutils とか shellutils とか sed とか awk とか grep とか bash(+sh) とか必要そうなものひととおり突っ込んであればひとまず configure は通りました。

コンパイルも特に問題なく通った…と言いたいところですが、getrlimit 関係で process.c に1行だけ修正が必要でした。

--- ruby-1.8.6-org/process.c    2007-02-13 08:01:20.000000000 +0900
+++ ruby-1.8.6/process.c        2007-07-12 20:26:32.000000000 +0900
@@ -25,6 +25,7 @@
 #endif
 #ifdef __DJGPP__
 #include <process.h>
+#include <sys/resource.h>
 #endif

 #include <time.h>

本気で使う場合は setmode 関係の修正と互換 DOS の DBCS ベクタバグ対策が必要かもしれません。まあ素直に Win32 版使おうよって気もしますが、DOS 版 Python になんとなく退行対抗してみたくなったりならなかったり(つーかあの移植はちょっと頑張りすぎな気がする)