ruby-trunk-changes 2020-11-22

今日は tool/make-snapshot でパッケージを作る時にソースが同じなら同じバイナリが作れるようにする修正や rubyspec の C API テスト用拡張ライブラリのビルド方法の修正などがありました。

[ece917bab3] Nobuyoshi Nakada 2020-11-21 14:15:26 UTC

defs/gmake.mk に rubyspec の C API のテスト用の拡張ライブラリをビルドするためのターゲット rubyspec-capiext というのを追加しています。

[43a9a974e2] Nobuyoshi Nakada 2020-11-21 14:21:52 UTC

configure の host_os, host_vendor, host_cpu などの名称を target_xxx の対応するものに揃えるようにしています。ruby のビルドとは関係ないですがクロスコンパイラを作る時はこれらは一致しないそうですが、ruby のビルドでは一致するので。チケットをみると Apple Silicon の macOS 上で target_cpu と host_cpu が一致してなかったのを修正するためみたいです。 [ruby-core:99097] [Bug #17021]

[5512de7603] git 2020-11-22 00:10:35 UTC

version.h の日付更新

[11cd9339a8] Nobuyoshi Nakada 2020-11-22 01:49:02 UTC

tool/make-snapshot でパッケージ作成前に ext/ 配下の autom4te.cache というファイルは削除しておくようにしています。パッケージの作成に再現性があるようにするためとのこと。

[821aa35c8b] Nobuyoshi Nakada 2020-11-22 01:59:32 UTC

tool/make-snapshot でダウンロードしてくるファイル類のコピーでひとつずつメッセージを出力してたのを $VERBOSE が真の時だけ出力するようにしています。

[0f51105ece] Nobuyoshi Nakada 2020-11-22 02:01:17 UTC

同じく tool/make-snapshot でパッケージの種類毎にアーカイブファイル作成にどのくらい時間がかかったかを出力するようにしています。

[e9c3de4764] Nobuyoshi Nakada 2020-11-22 02:30:02 UTC

同じく tool/make-snapshot で 7z を使って .zip 版のアーカイブファイルを作る時に -l オプションを追加して symbolic link を解決した結果を入れるようにしているようです。これも再現可能なパッケージ作成のため。

[eb3906c6b8] Nobuyoshi Nakada 2020-11-22 02:30:54 UTC

make dist 時に tool/make-snapshot の引数に DISTOPTS という変数を渡すことで環境変数でオプションを渡せるようにしています。

[e0156bd396] Takashi Kokubun 2020-11-22 03:24:59 UTC

rb_threadptr_root_fiber_setup() から rb_fiber_init_mjit_cont() の呼び出しを追加しています。その他コメントの typo 修正や TRUE のかわりに true を使うようにするリファクタリングなど。

[9eb34c2c9e] Takashi Kokubun 2020-11-22 06:37:07 UTC

MJIT のコンパイルのための C ソースファイル名、.so ファイル名などのためのバッファの扱いかたを固定長文字配列の変数を使って sprint_uniq_filename() という関数を使ってファイル名を作る方法に統一しています。また変数の宣言をブロック先頭から利用する箇所の直前に遅延して書くスタイルに変更しています。

[7ade7a8603] Takashi Kokubun 2020-11-22 07:44:48 UTC

27d5af59a359909e0d434459c30cfc0940f60a5bWindows 環境で MJIT の実行時にコンパイルするソースコードを 1ファイルにまとめるのを抑制するためのマクロ判定を整理した時に compile_prelude() のヘッダに出力するコードの制御のマクロを変更し忘れてたのがあったので追加変更しています。

[75d48a533d] Nobuyoshi Nakada 2020-11-22 10:09:58 UTC

rubyspec の C API テスト用の拡張ライブラリのコンパイル時に DLFLAGS のかわりに XDLDFLAGS を参照するようにしています。

[7c879cbb3f] Nobuyoshi Nakada 2020-11-22 10:10:58 UTC

rubyspec の C API テスト用の拡張ライブラリで未仕様の変数の警告除去のための preprocessor 分岐追加。