小松です。

makecursors.awkとmakekeysyms.awkですが、awkがないと
コンパイルできないのはmswin32ではちょっと不便です。

cygwinもインストールしてるんだからそっちのawkを使えばよいと
いう意見もありますが、なんとなく.awkをa2pで.plに変換して
perlを使ってたりします。

せっかくだからrubyにしませんか?

たとえばこんな感じ。

diff -ruN gtk-0.21/extconf.rb gtk/extconf.rb --- gtk-0.21/extconf.rb Sat Aug 7 02:57:08 1999 +++ gtk/extconf.rb Wed Aug 25 22:29:39 1999 @@ -186,8 +186,8 @@ mfile.print "\ -rbgdkcursors.h:; awk -f makecursors.awk #{gdkincl}/gdkcursors.h > $@ -rbgdkkeysyms.h:; awk -f makekeysyms.awk #{gdkincl}/gdkkeysyms.h > $@ +rbgdkcursors.h:; $(RUBY) makecursors.rb #{gdkincl}/gdkcursors.h > $@ +rbgdkkeysyms.h:; $(RUBY) makekeysyms.rb #{gdkincl}/gdkkeysyms.h > $@ allclean: realclean rm -rf rbgdkkeysyms* *.a rbgdkcursors* diff -ruN gtk-0.21/src/makecursors.rb gtk/src/makecursors.rb --- gtk-0.21/src/makecursors.rb Thu Jan 1 09:00:00 1970 +++ gtk/src/makecursors.rb Wed Aug 25 22:32:46 1999 @@ -0,0 +1,7 @@ +while gets + fld = split(' '); + if (fld[0] =~ /^GDK_/ && fld.size >= 3) + printf "rb_define_const(mGdk, \"%s\", INT2FIX(%s));\n", + fld[0][4..-1], fld[0] + end +end diff -ruN gtk-0.21/src/makekeysyms.rb gtk/src/makekeysyms.rb --- gtk-0.21/src/makekeysyms.rb Thu Jan 1 09:00:00 1970 +++ gtk/src/makekeysyms.rb Wed Aug 25 22:31:42 1999 @@ -0,0 +1,6 @@ +while gets + fld = split(' ') + if (fld[0] == '#define' && fld.size >= 3) + printf "rb_define_const(mGdk, \"%s\", INT2FIX(%s));\n", fld[1], fld[1] + end +end -- 小松克行 / Katsuyuki Komatsu <komatsu / sarion.co.jp>