[#53072] [ruby-trunk - Feature #7994][Open] Make iterators pass an implicit named parameter `iteration` to the executed block — "alexeymuranov (Alexey Muranov)" <redmine@...>

10 messages 2013/03/01

[#53097] [ruby-trunk - Bug #8000][Open] "require 'tk'" segfaults on 64-bit linux with Tk 8.6 — "edmccard (Ed McCardell)" <edmccard@...>

25 messages 2013/03/02

[#53137] [ruby-trunk - Bug #8017][Open] Got segmentation fault on attempt to install ruby 2.0.0-p0 on Mac 10.6.8 via RVM — "adantel (Alex Filatau)" <filatau@...>

9 messages 2013/03/05

[#53168] [ruby-trunk - Bug #8034][Open] File.expand_path('something', '~') do not include home path — "rap-kasta (Pavel Manylov)" <rapkasta@...>

12 messages 2013/03/06

[#53199] [ruby-trunk - Bug #8040][Open] Unexpect behavior when using keyword arguments — "pabloh (Pablo Herrero)" <pablodherrero@...>

11 messages 2013/03/07

[#53203] [ruby-trunk - Feature #8042][Open] Add Addrinfo#socket to create a socket that is not connected or bound — "drbrain (Eric Hodel)" <drbrain@...7.net>

12 messages 2013/03/07

[#53248] Github commit log should not be used as references on redmine — Marc-Andre Lafortune <ruby-core-mailing-list@...>

Github commit log should not be used as references on redmine. E.g:

10 messages 2013/03/09

[#53386] [CommonRuby - Feature #8088][Open] Method#parameters (and friends) should provide useful information about core methods — "headius (Charles Nutter)" <headius@...>

14 messages 2013/03/13

[#53412] [CommonRuby - Feature #8096][Open] introduce Time.current_timestamp — "vipulnsward (Vipul Amler)" <vipulnsward@...>

34 messages 2013/03/14

[#53439] [ruby-trunk - Bug #8100][Open] Segfault in ruby-2.0.0p0 — "judofyr (Magnus Holm)" <judofyr@...>

22 messages 2013/03/15

[#53478] [ruby-trunk - Feature #8107][Open] [patch] runtime flag to track object allocation metadata — "tmm1 (Aman Gupta)" <ruby@...1.net>

20 messages 2013/03/16

[#53498] [ruby-trunk - Feature #8110][Open] Regex methods not changing global variables — "prijutme4ty (Ilya Vorontsov)" <prijutme4ty@...>

21 messages 2013/03/18

[#53502] [ruby-trunk - Bug #8115][Open] make install DESTDIR=/my/install/path fails — "vo.x (Vit Ondruch)" <v.ondruch@...>

11 messages 2013/03/18

[#53688] [ruby-trunk - Feature #8158][Open] lightweight structure for loaded features index — "funny_falcon (Yura Sokolov)" <funny.falcon@...>

27 messages 2013/03/24

[#53692] [ruby-trunk - Bug #8159][Open] Build failure introduced by Rinda changes — "luislavena (Luis Lavena)" <luislavena@...>

22 messages 2013/03/24

[#53733] [ruby-trunk - Bug #8165][Open] Problems with require — "Krugloff (Alexandr Kruglov)" <mr.krugloff@...>

12 messages 2013/03/26

[#53742] [ruby-trunk - Bug #8168][Open] Feature request: support for (single) statement lambda syntax/definition — "garysweaver (Gary Weaver)" <garysweaver@...>

9 messages 2013/03/26

[#53765] [ruby-trunk - Bug #8174][Open] AIX header file conflict with rb_hook_list_struct — "edelsohn (David Edelsohn)" <dje.gcc@...>

11 messages 2013/03/27

[#53808] [ruby-trunk - Feature #8181][Open] New flag for strftime that supports adding ordinal suffixes to numbers — "tkellen (Tyler Kellen)" <tyler@...>

10 messages 2013/03/28

[#53811] [ruby-trunk - Bug #8182][Open] XMLRPC request fails with "Wrong size. Was 31564, should be 1501" — "tsagadar (Marcel Mueller)" <marcel.mueller@...>

28 messages 2013/03/28

[#53849] [ruby-trunk - Feature #8191][Open] Short-hand syntax for duck-typing — "wardrop (Tom Wardrop)" <tom@...>

48 messages 2013/03/31

[#53850] An evaluation of 2.0.0 release — Yusuke Endoh <mame@...>

Let's look back at 2.0.0 release so that we can do better next time.

12 messages 2013/03/31

[ruby-core:53352] [Backport 200 - Backport #7959] configure contains non-portable shell code

From: "kernigh (George Koehler)" <xkernigh@...>
Date: 2013-03-13 01:06:52 UTC
List: ruby-core #53352
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.


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

In This Thread