今日は make test-all が MJIT のテストがヘッダが install 済みであることを前提にしている問題の対策などがありました。
hsbt: r64142 2018-07-31 21:25:24 +0900
r64141 の thwait の gemspec ファイルの移動に tool/sync_default_gems.rb も追随しています。
k0kubun: r64143 2018-07-31 21:43:06 +0900
r64103 と r64104 の make test-all を install に依存させる変更をしましたが make install は root 権限が必要な場合があって make test-all は通常ユーザーで実行するというような場合だとエラーになるので、やめています。かわりに MJIT_SEARCH_BUILD_DIR という環境変数が設定されている場合は mjit 用のヘッダの探索にビルドディレクトリのものも使うようにして、これで install せずに make test-all できるようにしています。
k0kubun: r64144 2018-07-31 21:55:28 +0900
r64138 でも弄ってた tool/transform_mjit_header.rb の関数名を切り出す正規表現 FUNC_HEADER_REGEXP をさらに行頭に戻り値の型がある記法も許容するように? しています。
hsbt: r64145 2018-07-31 21:56:17 +0900
default gem 化しか各標準添付ライブラリ の gemspec ファイルでバージョンの取得のための version.rb の require を、相対パスで lib/ の下にある(リポジトリ内の構成)のものも試すようにしています。
nobu: r64150 2018-08-01 00:02:31 +0900
r64143 の Makefile.in での mjit_config.h にビルドディレクトリを埋め込むための書きかたが GNU make に依存していたとのことで、簡易な書きかたに修正しています。
svn: r64151 2018-08-01 00:02:32 +0900
version.h の日付更新。
kazu: r64152 2018-08-01 00:20:54 +0900
addr2line.c の kprintf() の宣言に PRINTF_ARGS() というマクロを使ってフォーマット指示子を使った引数のチェックを(できるコンパイラでは)してもらうようにしています。
kazu: r64153 2018-08-01 00:20:55 +0900
r64145 の各 .gemspec ファイルの require_relative の upstream と ruby 内の両構成対応の変更で thwait のものだけコメントがなかったので追加しています。
nobu: r64154 2018-08-01 02:11:00 +0900
README.ja.md に Travis-CI と Appveyor の CI へのリンクを追加しています。 https://github.com/ruby/ruby/pull/1923
shyouhei: r64155 2018-08-01 11:55:11 +0900
ruby_atomic.h のマクロ定義群に可読性のために適宜空行を追加しています。
shyouhei: r64156 2018-08-01 12:40:37 +0900
mjit.c で定義されていた MJIT_ATOMIC_SET() というマクロは Windows 版のときに InterlockedExchangePointer() を使った実装をする以外は ATOMIC_SET() を利用していたので、ruby_atomic.h にこの InterlockedExchangePointer() を使った実装を移植して、ATOMIC_PTR_EXCHANGE() を使うようにしています。というか ATOMIC_SET() を使ってたら Windows で警告が出るからということで r62193 で InterlockedExchangePointer() を使う MJIT_ATOMIC_SET() を定義してましたが、この引数に ATOMIC_SET() を使うのが間違いで ATOMIC_PTR_EXCHANGE() を使うべきだった(が当時 Windows 版の InterlockedExchangePointer() を使った実装がなかった)ということみたいですね。