こんにちは、なかむら(う)です。 RubyConfでも話題になったようですが、標準添付の拡張ライブラリ の一部をコンパイル対象から外す簡単な方法が欲しい、と常々思っ ていたので、configure時に指定できるパッチを作ってみました。 configureのヘルプに、 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) と書いてあるのでそれを採用しています。 例えば、 configure --without-Win32API --with-io/wait=no などとすれば、Win32APIとio/waitがコンパイル対象から外れます。 --with-PACKAGE / --without-PACKAGE の機構はlib/mkmf.rbで吸収 してもいいような気がするんですが、さしあたってはこんなもんで。
Index: ext/extmk.rb =================================================================== RCS file: /home/cvs/ruby/ext/extmk.rb,v retrieving revision 1.82 diff -u -1 -p -r1.82 extmk.rb --- ext/extmk.rb 16 Oct 2005 13:17:30 -0000 1.82 +++ ext/extmk.rb 19 Oct 2005 11:10:01 -0000 @@ -360,2 +360,4 @@ else d + }.find_all {|ext| + !arg_config("--without-#{ext}", false) && arg_config("--with-#{ext}", true) != "no" }.sort
それでは。 -- U.Nakamura <usa / garbagecollect.jp>