Project

General

Profile

Bug #13433

Solaris10上で make update-rubyspec が失敗

Added by ngoto (Naohisa Goto) about 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-dev:50074]

Description

Bug #13424 と類似ですが原因が異なるので別チケットにします。

Solaris 10 上にて、 make update-rubyspec が以下のように失敗します。

$ make update-rubyspec V=1                                    
./tool/git-refresh -C ./spec  \                                                 
        git://github.com/ruby/mspec.git mspec                                   
make: *** [update-mspec] Error 1                                                

Solarisの /bin/sh では、if の条件に cd を置いた場合、失敗すると fi の後に到達せずそのまま終了となるようです。
たとえば、以下のように、fi の後のechoが実行されずに終了してしまいます。

$ /bin/sh -c 'if cd -P . 2>/dev/null; then CHDIR="cd -P"; else CHDIR="cd"; fi; echo $CHDIR'
$ 

Linux上では、以下のように普通にfiの後に制御が移ります。

$ /bin/sh -c 'if cd -P . 2>/dev/null; then CHDIR="cd -P"; else CHDIR="cd"; fi; echo $CHDIR'
cd -P
$ 

Related issues

Related to Ruby trunk - Bug #13424: Solaris10上で make update-rubyspec が bad substitution で失敗ClosedActions
Related to Ruby trunk - Bug #12471: make update-mspec always fails on SolarisClosedActions

Associated revisions

Revision 03421631
Added by nobu (Nobuyoshi Nakada) about 2 years ago

git-refresh: fix abort by cd failure

  • tool/git-refresh: try cd -P in a subshell, because Solaris10 sh dies if it fails, not only the command. [ruby-dev:50074] [Bug #13433]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58344 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 58344
Added by nobu (Nobuyoshi Nakada) about 2 years ago

git-refresh: fix abort by cd failure

  • tool/git-refresh: try cd -P in a subshell, because Solaris10 sh dies if it fails, not only the command. [ruby-dev:50074] [Bug #13433]

Revision 58344
Added by nobu (Nobuyoshi Nakada) about 2 years ago

git-refresh: fix abort by cd failure

  • tool/git-refresh: try cd -P in a subshell, because Solaris10 sh dies if it fails, not only the command. [ruby-dev:50074] [Bug #13433]

Revision 58344
Added by nobu (Nobuyoshi Nakada) about 2 years ago

git-refresh: fix abort by cd failure

  • tool/git-refresh: try cd -P in a subshell, because Solaris10 sh dies if it fails, not only the command. [ruby-dev:50074] [Bug #13433]

History

#1

Updated by ngoto (Naohisa Goto) about 2 years ago

  • Related to Bug #13424: Solaris10上で make update-rubyspec が bad substitution で失敗 added
#2

Updated by ngoto (Naohisa Goto) about 2 years ago

  • Related to Bug #12471: make update-mspec always fails on Solaris added
#3

Updated by nobu (Nobuyoshi Nakada) about 2 years ago

  • Status changed from Open to Closed

Applied in changeset trunk|r58344.


git-refresh: fix abort by cd failure

  • tool/git-refresh: try cd -P in a subshell, because Solaris10 sh dies if it fails, not only the command. [ruby-dev:50074] [Bug #13433]

Also available in: Atom PDF