Issue #7959 has been updated by luislavena (Luis Lavena).

Status changed from Closed to Assigned
Assignee changed from nagachika (Tomoyuki Chikanaga) to nobu (Nobuyoshi Nakada)


----------------------------------------
Backport #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-39339

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: 
Target version: 


On 2.0.0 and trunk, configure contains non-portable shell code.  When run on OpenBSD, configure emits the following errors and results in a ruby that builds but cannot run without manually specifying -I for the ruby lib directories:

...
checking for prefix of external symbols... NONE
checking for pthread.h... (cached) yes
checking if make is GNU make... no
checking for safe null command for make... :
checking for memmem... no
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g;s/ ...: invalid command code "
././configure: s/\\//g: not found
././configure: s/^\//;s/\$//": not found
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g;s/ ...: invalid command code "
././configure: s/\\//g: not found
././configure: s/^\//;s/\$//": not found
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g;s/ ...: invalid command code "
././configure: s/\\//g: not found
././configure: s/^\//;s/\$//": not found
sed: 1: ""s/${[^${}"]*}/"&"/g"": invalid command code "
sed: 1: ""s/${[^${}"]*}/"&"/g;s/ ...: invalid command code "
././configure: s/\\//g: not found
././configure: s/^\//;s/\$//": not found
checking for nroff... no
checking for awf... no
.ext/include/x86_64-openbsd/ruby/config.h updated
verconf.h updated
ruby library version = 2.0
configure: creating ./config.status
config.status: creating Makefile
config.status: creating ruby-2.0.pc

The last revision that worked correctly was 39288.

It's trivial to work around the issue by using "bash configure" instead of "./configure", but that shouldn't be necessary.  I'm sorry for not reporting this before the official release of 2.0.0, but this issue was introduced after rc2.


-- 
http://bugs.ruby-lang.org/