From: ngotogenome@... Date: 2017-04-12T12:38:15+00:00 Subject: [ruby-dev:50070] [Ruby trunk Bug#13424][Open] Solaris10上で make update-rubyspec が bad substitution で失敗 Issue #13424 has been updated by ngoto (Naohisa Goto). Status changed from Closed to Open r58327 で確認しましたが失敗したので再オープンします。 ~~~ $ make update-rubyspec V=1 ./tool/git-refresh -C ./spec \ git://github.com/ruby/mspec.git mspec make: *** [update-mspec] Error 1 ~~~ 以下のように expr が exit code 1 を返しており、set -e しているため即座に終了となっているように見えます。 ~~~ $ dir=mspec; expr "$dir" : '*/\(.*\)'; echo $? 1 ~~~ なお、上記は SolarisでもLinuxでも1を返します。 ---------------------------------------- Bug #13424: Solaris10上で make update-rubyspec が bad substitution で失敗 https://bugs.ruby-lang.org/issues/13424#change-64195 * Author: ngoto (Naohisa Goto) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- おそらく r58217 以降、Solaris 10 上にて、 make update-rubyspec が以下のように失敗します。 ~~~ $ make update-rubyspec V=1 ./tool/git-refresh -C ./spec \ git://github.com/ruby/mspec.git mspec ./tool/git-refresh: bad substitution make: *** [update-mspec] Error 1 ~~~ `"${dir#*/}"` がSolarisの/bin/shでは事実上使いものにならないのが原因のようです。 ~~~ $ dir=/this/is/example $ echo ${dir#*/} bad substitution ~~~ -- https://bugs.ruby-lang.org/