Forum: Ruby-core [ruby-trunk - Bug #7959][Open] configure contains non-portable shell code

7301191d6dc8728ccbabfdd7feab66c4?d=identicon&s=25 jeremyevans0 (Jeremy Evans) (Guest)
on 2013-02-25 21:24
(Received via mailing list)
Issue #7959 has been reported by jeremyevans0 (Jeremy Evans).

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

Author: jeremyevans0 (Jeremy Evans)
Status: Open
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category: build
Target version:
ruby -v: ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-openbsd]


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.
5cf8f058a4c094bb708174fb43e7a387?d=identicon&s=25 nagachika (Tomoyuki Chikanaga) (Guest)
on 2013-02-26 15:07
(Received via mailing list)
Issue #7959 has been updated by nagachika (Tomoyuki Chikanaga).


nobu san

Should the following line in configure.in be eliminated?

 l.3287     quote=['']

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

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
F1d6cc2b735bfd82c8773172da2aeab9?d=identicon&s=25 Nobuyoshi Nakada (nobu)
on 2013-02-26 19:31
(Received via mailing list)
Issue #7959 has been updated by nobu (Nobuyoshi Nakada).


Yes, it should not be there anymore, I missed to remove it.
----------------------------------------
Backport #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-37110

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
67e89b120b9c61d32956d63563438f43?d=identicon&s=25 kernigh (George Koehler) (Guest)
on 2013-03-13 02:07
(Received via mailing list)
Issue #7959 has been updated by kernigh (George Koehler).


=begin
Hello, Rubyists.  This fix is not working for me.  I am still getting
this bug, or a very similar bug.

I am running OpenBSD 5.2 and autoconf 2.69.  I follow trunk and
ruby_2_0_0 with git. Here are my ruby -v
* ruby 2.1.0dev (2013-03-13 trunk 39737) [x86_64-openbsd5.2]
* ruby 2.0.0p57 (2013-03-12 revision 39728) [x86_64-openbsd5.2]

When I configure trunk, I see errors about "no closing quote".

 $ ../configure --prefix=$HOME/prefix \
 --with-baseruby=/usr/local/bin/ruby19 \
 CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib
 ...
 checking if make is GNU make... no
 checking for safe null command for make... :
 checking for memmem... no
 ../configure: no closing quote
 ../configure: no closing quote
 ../configure: no closing quote
 ../configure: no closing quote
 checking for nroff... no
 checking for awf... no
 .ext/include/x86_64-openbsd5.2/ruby/config.h unchanged
 verconf.h unchanged
 ruby library version = 2.1.0
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: creating ruby-2.1.pc

Then verconf.h looks like a mess:

 #define RUBY_BASE_NAME "ruby"
 #define RUBY_VERSION_NAME RUBY_BASE_NAME"-"RUBY_LIB_VERSION
 #define RUBY_LIB_VERSION_STYLE 3  /* full */
 #define RUBY_EXEC_PREFIX "/home/kernigh/prefix"
 #define RUBY_LIB_PREFIX
"arch"RUBY_EXEC_PREFIX"/lib/"RUBY_BASE_NAME"arch"
 #define RUBY_ARCH_PREFIX_FOR(arch) "arch"RUBY_LIB_PREFIX"/"arch"arch"
 #define RUBY_SITEARCH_PREFIX_FOR(arch)
"arch"RUBY_LIB_PREFIX"/"arch"arch"
 #define RUBY_LIB "arch"RUBY_LIB_PREFIX"/"RUBY_LIB_VERSION"arch"
 #define RUBY_ARCH_LIB_FOR(arch) "arch"RUBY_LIB"/"arch"arch"
 #define RUBY_SITE_LIB "arch"RUBY_LIB_PREFIX"/site_ruby"
 #define RUBY_SITE_ARCH_LIB_FOR(arch) "arch"RUBY_SITE_LIB2"/"arch"arch"
 #define RUBY_VENDOR_LIB "arch"RUBY_LIB_PREFIX"/vendor_ruby"
 #define RUBY_VENDOR_ARCH_LIB_FOR(arch)
"arch"RUBY_VENDOR_LIB2"/"arch"arch"
 #define RUBY_PLATFORM "x86_64-openbsd5.2"

This ruby can't find the installed libraries:

 $ ./ruby -v
 ruby 2.1.0dev (2013-03-12 trunk 39730) [x86_64-openbsd5.2]
 $ ./ruby -e 'p $:'
 <internal:gem_prelude>:1:in `require': cannot load such file --
rubygems.rb (LoadError)
 from <internal:gem_prelude>:1:in `<compiled>'
 $ ./ruby --disable=gems -e 'p $:'
 ["archarch/home/kernigh/prefix/lib/rubyarch/site_ruby/2.1.0",
"archarcharch/home/kernigh/prefix/lib/rubyarch/site_ruby/2.1.0/x86_64-openbsd5.2arch",
"archarch/home/kernigh/prefix/lib/rubyarch/site_ruby",
"archarch/home/kernigh/prefix/lib/rubyarch/vendor_ruby/2.1.0",
"archarcharch/home/kernigh/prefix/lib/rubyarch/vendor_ruby/2.1.0/x86_64-openbsd5.2arch",
"archarch/home/kernigh/prefix/lib/rubyarch/vendor_ruby",
"arch/home/kernigh/prefix/lib/rubyarch/2.1.0",
"archarch/home/kernigh/prefix/lib/rubyarch/2.1.0/x86_64-openbsd5.2arch"]

When I configure ruby_2_0_0, the problem is slightly different:

 $ ../configure --prefix=$HOME/prefix \
 --with-baseruby=/usr/local/bin/ruby19 \
 CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib
 ...
 checking if make is GNU make... no
 checking for safe null command for make... :
 checking for memmem... no
 sed: 1: ""s/${[^${}"]*}/"&"/g;;s ...: invalid command code "
 ../configure: s/\\//g: not found
 ../configure: s/^\//;s/\$//": not found
 sed: 1: ""s/${[^${}"]*}/"&"/g;;s ...: invalid command code "
 ../configure: s/\\//g: not found
 ../configure: s/^\//;s/\$//": not found
 sed: 1: ""s/${[^${}"]*}/"&"/g;;s ...: invalid command code "
 ../configure: s/\\//g: not found
 ../configure: s/^\//;s/\$//": not found
 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-openbsd5.2/ruby/config.h unchanged
 verconf.h unchanged
 ruby library version = 2.0.0
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: creating ruby-2.0.pc

 #define RUBY_BASE_NAME "ruby"
 #define RUBY_VERSION_NAME RUBY_BASE_NAME"-"RUBY_LIB_VERSION
 #define RUBY_LIB_VERSION_STYLE 3  /* full */
 #define RUBY_LIB_PREFIX "arch"
 #define RUBY_ARCH_PREFIX_FOR(arch) "arch"
 #define RUBY_SITEARCH_PREFIX_FOR(arch) "arch"
 #define RUBY_LIB "arch"RUBY_LIB_PREFIX"/"RUBY_LIB_VERSION"arch"
 #define RUBY_ARCH_LIB_FOR(arch) "arch"RUBY_LIB"/"arch"arch"
 #define RUBY_SITE_LIB "arch"RUBY_LIB_PREFIX"/site_ruby"
 #define RUBY_SITE_ARCH_LIB_FOR(arch) "arch"RUBY_SITE_LIB2"/"arch"arch"
 #define RUBY_VENDOR_LIB "arch"RUBY_LIB_PREFIX"/vendor_ruby"
 #define RUBY_VENDOR_ARCH_LIB_FOR(arch)
"arch"RUBY_VENDOR_LIB2"/"arch"arch"
 #define RUBY_PLATFORM "x86_64-openbsd5.2"

 $ ./ruby -v
 ruby 2.0.0p57 (2013-03-12 revision 39728) [x86_64-openbsd5.2]
 $ ./ruby -e 'p $:'
 <internal:gem_prelude>:1:in `require': cannot load such file --
rubygems.rb (LoadError)
 from <internal:gem_prelude>:1:in `<compiled>'
 $ ./ruby --disable=gems -e 'p $:'
 ["archarch/site_ruby/2.0.0",
"archarcharch/site_ruby/2.0.0/x86_64-openbsd5.2arch",
"archarch/site_ruby", "archarch/vendor_ruby/2.0.0",
"archarcharch/vendor_ruby/2.0.0/x86_64-openbsd5.2arch",
"archarch/vendor_ruby", "arch/2.0.0",
"archarch/2.0.0/x86_64-openbsd5.2arch"]

Like jeremyevans0, I can work around this issue by using bash.  I run
"bash ../configure ..." and rebuild trunk Ruby, then trunk Ruby no
longer has this problem.

I don't know where in configure causes this problem.  I am guessing that
the problem might be in shvar_to_cpp, but I am not sure.  OpenBSD
/bin/sh is a modified pdksh.  To try to reproduce this problem with
another system, one might try using pdksh.  Also, bug #8071 reported a
similar problem with ksh93, so one might try using ksh93.

=end

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

Author: jeremyevans0 (Jeremy Evans)
Status: Closed
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
7301191d6dc8728ccbabfdd7feab66c4?d=identicon&s=25 jeremyevans0 (Jeremy Evans) (Guest)
on 2013-05-14 23:16
(Received via mailing list)
Issue #7959 has been updated by jeremyevans0 (Jeremy Evans).


It appears this bug is still present in ruby 2.0.0-p195 and trunk.
Bisecting v2_0_0_rc2 and trunk, the last revision that worked correctly
is still 39288.  Can this bug please be reopened?  I'll be happy to test
patches.

ruby 2.0.0-p195 on OpenBSD doesn't even build if you configure with
/bin/sh and not with bash, due to issues with RUBY_EXEC_PREFIX:

cc -O2 -pipe -fPIC  -include ruby/config.h -include ruby/missing.h
-D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow
-fvisibility=hidden -DRUBY_EXPORT -DOPENSSL_NO_STATIC_ENGINE
-I/usr/local/include   -I. -I.ext/include/i386-openbsd -I./include -I.
-o ruby.o -c ruby.c
ruby.c: In function 'ruby_init_loadpath_safe':
ruby.c:495: error: expected expression before ';' token
*** Error 1 in /usr/obj/ports/ruby-2.0.0-p195/ruby-2.0.0-p195
(Makefile:326 'ruby.o')
----------------------------------------
Backport #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-39338

Author: jeremyevans0 (Jeremy Evans)
Status: Closed
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
E7cff3cfd41c495e1012227d7dc24202?d=identicon&s=25 Luis Lavena (luislavena)
on 2013-05-14 23:27
(Received via mailing list)
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.
E7cff3cfd41c495e1012227d7dc24202?d=identicon&s=25 Luis Lavena (luislavena)
on 2013-05-14 23:28
(Received via mailing list)
Issue #7959 has been updated by luislavena (Luis Lavena).

% Done changed from 100 to 50


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

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.
7301191d6dc8728ccbabfdd7feab66c4?d=identicon&s=25 jeremyevans0 (Jeremy Evans) (Guest)
on 2013-05-15 18:25
(Received via mailing list)
Issue #7959 has been updated by jeremyevans0 (Jeremy Evans).


I tested trunk and ./configure appears to work correctly on OpenBSD (no
more error messages).  Can these changes please be backported to 2.0.0?
----------------------------------------
Bug #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-39356

Author: jeremyevans0 (Jeremy Evans)
Status: Closed
Priority: Normal
Assignee: nobu (Nobuyoshi Nakada)
Category:
Target version:
ruby -v:
Backport:


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.
3ec52ed58eb92026d86e62c39bdb7589?d=identicon&s=25 Michal Papis (mpapis)
on 2013-06-08 16:17
(Received via mailing list)
Issue #7959 has been updated by mpapis (Michal Papis).


still getting errors on ruby_2_0_0, any progress on fixing it?
----------------------------------------
Backport #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-39793

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
5cf8f058a4c094bb708174fb43e7a387?d=identicon&s=25 nagachika (Tomoyuki Chikanaga) (Guest)
on 2013-06-08 19:16
(Received via mailing list)
Issue #7959 has been updated by nagachika (Tomoyuki Chikanaga).


Backporting r40758 to ruby_2_0_0 cause severe conflict. It seems depend
on several changesets in trunk include splitting loadpath.c and strategy
of creating verconf.h.

nobu, could you make a backport patch? Or is there any other approach to
fix this issue on 2.0.0?
----------------------------------------
Backport #7959: configure contains non-portable shell code
https://bugs.ruby-lang.org/issues/7959#change-39804

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
F1d6cc2b735bfd82c8773172da2aeab9?d=identicon&s=25 Nobuyoshi Nakada (nobu)
on 2013-09-13 06:01
(Received via mailing list)
Issue #7959 has been updated by nobu (Nobuyoshi Nakada).


r39171,r39296,r39333,r39334,r39345,r39347,r39348,r40261,r40756,r40757,r40758,r40762,r40763,r40770,r40771,r40777,r40779,r40784,r41352,r41357

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

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
3ec52ed58eb92026d86e62c39bdb7589?d=identicon&s=25 Michal Papis (mpapis)
on 2013-09-26 02:48
(Received via mailing list)
Issue #7959 has been updated by mpapis (Michal Papis).


=begin
any chance to get this merged somehow? I get merge conflicts trying to
apply some of the revisions on 2.0.0-p247 source
=end

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

Author: jeremyevans0 (Jeremy Evans)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
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.
This topic is locked and can not be replied to.