わたなべです。

ええと、To: ebanは必要ないです。

Hidetoshi NAGAI <nagai / ai.kyutech.ac.jp> writes:

> > たぶん例のthreadが有効かどうかの判断のために使われているん
> > だと思いますが、別の方法はありませんか?
> 
> 添付パッチのような感じではいかがでしょうか.
> これでも try_run の問題に引っ掛かるでしょうか.

実はクロスの環境にはtclConfig.shを持ってきてないので、これに
依存しない方法も欲しいなあと思い、ああいう提案をしました。
すでにthreadが有効かどうか人間がわかっている場合は単純にそれ
を指定する方法がないかと。

> 一番単純で楽なのは,--disable-pthread-check オプションが
> 指定された場合には thread チェックを行わないというもの
> なのですけどね.(^_^)

これに近いです。チェックはしないで外から指定できるだけでいい
と思います。

--enable-tcl-threadなら有効、--disable-tcl-threadなら無効、
なにも指定しないときはチェックする、という処理ならこんな感じで。

Index: extconf.rb
===================================================================
RCS file: /src/ruby/ext/tcltklib/extconf.rb,v
retrieving revision 1.16
diff -U2 -p -r1.16 extconf.rb
--- extconf.rb	1 May 2004 16:08:58 -0000	1.16
+++ extconf.rb	23 May 2004 05:27:43 -0000
@@ -60,5 +60,6 @@ if have_header("tcl.h") && have_header("
   pthread_enabled = macro_defined?('HAVE_LIBPTHREAD', '#include "ruby.h"')
 
-  if try_run(<<EOF)
+  tcl_enable_thread = enable_config("tcl-thread")
+  if tcl_enable_thread == nil && try_run(<<EOF)
 #include <tcl.h>
 static Tcl_ThreadDataKey dataKey;

-- 
わたなべひろふみ