ruby-trunk-changes r29756 - r29770

昨夜のコミットラッシュは更新した後もやはり続いていました。すごい勢いですね。

nobu:r29756 2010-11-11 23:03:17 +0900

ARGF.close した時に IO オブジェクト(rb_io_t 型)が持ってる tied_io_writing をクリアしています。IO の構造体をよく把握していないのですが、おそらく ARGF 用に rb_io_t には tied_io_writing というメンバがあって、そこに実際に書き出す IO オブジェクト(VALUE 型)が格納されています。ARGF.close した時にここを Qnil にクリアするようにしています。

nobu:r29757 2010-11-11 23:04:48 +0900

iconv は非推奨で本体の transcode で文字コード変換するのが推奨になったので require "iconv" は警告メッセージを出すようになりましたが、その時どこから require されたのかも表示するようにしています。

nobu:r29758 2010-11-11 23:29:42 +0900

configure.in の修正でコードの内容はわかりませんが、昨日の r29741 で LONG_LONG のフォーマット文字列の修飾子を検出するところを再修正しています。

nobu:r29759 2010-11-11 23:32:15 +0900

configure で AC_C_CONST, AC_C_INLINE, AC_C_VOLATILE などのチェックはそれをコンパイルで利用するチェックよりも前にチェックするように移動しています。

nobu:r29760 2010-11-11 23:38:36 +0900

const と volatile が利用できないとコンパイルできないので configure でチェックを入れています。

nobu:r29761 2010-11-11 23:56:48 +0900

make showflags ターゲットは大文字の SHOWFLAGS も記述されていましたが nmake は大文字小文字を区別しないということで大文字のほうは消されています。

nobu:r29762 2010-11-12 00:30:24 +0900

win32/Makefile.sub で config.h に PRI_LL_PREFIX と PRI_PIDT_PREFIX の定義を追加しています。

svn:r29763 2010-11-12 00:30:25 +0900

version.h の日付更新。

nobu:r29764 2010-11-12 00:31:59 +0900

win32/Makefile.sub もコンパイル時に短いメッセージを表示してコマンドラインを隠すようにしています。

nobu:r29765 2010-11-12 00:53:07 +0900

mkmf.rb の create_makefile で生成する Makefile に改行が足りてなかったので追加。

nobu:r29766 2010-11-12 01:36:04 +0900

dot(graphviz のツールですね)、doxygen, pkg-config などのビルドに使用するツールのチェックを AC_CHECK_TOOL ではなく AC_CHECK_PROG でチェックするように変更しています。 AC_CHECK_TOOL と AC_CHECK_PROG はツールを探すパスの探索順序が違うようで、おそらくターゲット用のパスじゃなくてビルドしている環境のパスから探させてるんだろうと思います。

usa:r29767 2010-11-12 10:00:39 +0900

Windows でのビルド時に find.exe コマンドのかわりに findstr.ext を使うようにしています。findstr.exe のほうがどの環境にもあるというのと、cygwin だと find は別のコマンド(Unix の find でしょうね)になってしまうからです。

naruse:r29768 2010-11-12 16:54:27 +0900

FreeBSD では C のバックトレース情報(SEGV の時に表示するために取得)を libexecinfo を利用して取得するようにするため、ライブラリがインストールされているかチェックを追加しています。
この前 Windows でもバックトレースを取得するように修正が入っていましたしこれでたいていの環境では C のバックトレースが表示されるようになったんでしょうか。

nobu:r29769 2010-11-12 20:51:42 +0900

Makefile 群のコマンドラインを隠して短いメッセージ表示する修正でエスケープで行継続していたスタイルをやめて一行にしただけです。

nobu:r29770 2010-11-12 20:52:45 +0900

UnixWindowsMakefile の echo の使いかた、というかコマンドラインのクオートの方法が違うので MSG, EOM という変数を導入して差異を吸収しています。