[Bug #1919] sparc-solaris-2.10 $B$G(B 1.9.2-preview1 $B$,%S%k%I$G$-$J$$(B

Bug #1919: sparc-solaris-2.10 e$B$Ge(B 1.9.2-preview1
e$B$,%S%k%I$G$-$J$$e(B
http://redmine.ruby-lang.org/issues/show/1919

e$B5/I<<Te(B: Naohisa G.
e$B%9%F!<%?%9e(B: Open, e$BM%@hEYe(B: Normal
ruby -v: ruby 1.9.2dev (2009-07-18 trunk 24186) [sparc-solaris2.10]

ruby 1.9.2-preview1 e$B$,e(B SPARC e$B>e$Ne(B Solaris10 e$B$Ge(B make
e$B$K<:GT$7$^$9!#e(B

e$B<jF0$GFsJ,8!:w$r$d$C$F$_$?$H$3$m!"e(Br23240 e$B$Oe(B make
install-nodoc e$B$G$-$^$7$?$,e(B
r23241 e$B$Oe(B make e$B$K<:GT$7$^$7$?!#e(B

e$B0J2<!"e(B1.9.2-preview1 e$B$K$Fe(B make
e$B$,<:GT$9$k$H$3$m$NH4?h$G$9!#e(B
(e$B%U%!%$%k$N>l=j$O0lIt%^%9%/$7$F$$$^$9e(B)

$ export
PATH=/usr/local/64/bin:/usr/local/bin:/usr/ccs/bin:/usr/xpg4/bin:/usr/bin:/bin:/usr/openwin/bin:/usr/dt/bin:/usr/X11/bin:/usr/sfw/bin
$ CC=gcc-4.3 CFLAGS=“-m64 -I/usr/local/64/include” CXX=g+±4.3
CXXFLAGS=“-m64 -I/usr/local/64/include” LDFLAGS=“-m64
-L/usr/local/64/lib -R/usr/local/64/lib” ./configure
–prefix=/XXXXX/testruby/sparc/1.9.2-preview1
$ gcc-4.3 --version
gcc-4.3 (GCC) 4.3.3
(e$BCfN,e(B)
$ make
(e$BCfN,e(B)
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb
./enc/make_encmake.rb --builtin-encs=“ascii.o us_ascii.o unicode.o
utf_8.o” --builtin-transes=“newline.o” enc.mk
./enc/depend:5: [BUG] Segmentation fault
ruby 1.9.2dev (2009-07-18 trunk 24186) [sparc-solaris2.10]

– control frame ----------
c:0012 p:---- s:0058 b:0058 l:000057 d:000057 CFUNC :each
c:0011 p:---- s:0056 b:0056 l:000055 d:000055 CFUNC :grep
c:0010 p:0013 s:0052 b:0052 l:000698 d:000051 BLOCK ./enc/depend:5
c:0009 p:---- s:0049 b:0049 l:000048 d:000048 FINISH
c:0008 p:---- s:0047 b:0047 l:000046 d:000046 CFUNC :open
c:0007 p:0100 s:0043 b:0043 l:000698 d:0024f8 EVAL ./enc/depend:5
c:0006 p:---- s:0025 b:0025 l:000024 d:000024 FINISH
c:0005 p:---- s:0023 b:0023 l:000022 d:000022 CFUNC :eval
c:0004 p:0062 s:0016 b:0016 l:000015 d:000015 METHOD
/XXXXX/src/64gcc/ruby-1.9.2-preview1/lib/erb.rb:753
c:0003 p:0571 s:0012 b:0012 l:000698 d:0008f8 EVAL
./enc/make_encmake.rb:41
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:000698 d:000698 TOP

./enc/make_encmake.rb:41:in <main>' /XXXXX/src/64gcc/ruby-1.9.2-preview1/lib/erb.rb:753:in result’
/XXXXX/src/64gcc/ruby-1.9.2-preview1/lib/erb.rb:753:in eval' ./enc/depend:5:in
./enc/depend:5:in open' ./enc/depend:5:in block in ’
./enc/depend:5:in grep' ./enc/depend:5:in each’

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension
libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

e$B0[>o=*N;e(B
make: *** [enc.mk] Error 134
$

e$B0J2<$O!"F1MM$Ke(B r23241 e$B$K$Fe(B make
e$B$,<:GT$9$k$H$3$m$NH4?h$G$9!#e(B
configure e$B$N%*%W%7%g%s$O>e5-$He(B prefix e$B0J30$OF1$8$G$9!#e(B

$ make
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb
./enc/make_encmake.rb --builtin-encs=“ascii.o us_ascii.o unicode.o
utf_8.o” --builtin-transes=“newline.o” enc.mk
./enc/depend:5: [BUG] Segmentation fault
ruby 1.9.2dev (2009-04-21) [sparc-solaris2.10]

– control frame ----------
c:0012 p:---- s:0058 b:0058 l:000057 d:000057 CFUNC :each
c:0011 p:---- s:0056 b:0056 l:000055 d:000055 CFUNC :grep
c:0010 p:0013 s:0052 b:0052 l:001a48 d:000051 BLOCK ./enc/depend:5
c:0009 p:---- s:0049 b:0049 l:000048 d:000048 FINISH
c:0008 p:---- s:0047 b:0047 l:000046 d:000046 CFUNC :open
c:0007 p:0100 s:0043 b:0043 l:001a48 d:002078 EVAL ./enc/depend:5
c:0006 p:---- s:0025 b:0025 l:000024 d:000024 FINISH
c:0005 p:---- s:0023 b:0023 l:000022 d:000022 CFUNC :eval
c:0004 p:0059 s:0016 b:0016 l:000015 d:000015 METHOD
/XXXXX/src/64gcc/trunk-23241/lib/erb.rb:753
c:0003 p:0571 s:0012 b:0012 l:001a48 d:0010f8 EVAL
./enc/make_encmake.rb:41
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001a48 d:001a48 TOP

./enc/make_encmake.rb:41:in <main>' /XXXXX/src/64gcc/trunk-23241/lib/erb.rb:753:in result’
/XXXXX/src/64gcc/trunk-23241/lib/erb.rb:753:in eval' ./enc/depend:5:in
./enc/depend:5:in open' ./enc/depend:5:in block in ’
./enc/depend:5:in grep' ./enc/depend:5:in each’

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension
libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

e$B0[>o=*N;e(B
make: *** [enc.mk] Error 134
$

e$B$=$7$F!"e(Br23240 e$B$K$Fe(B make check e$B$r9T$C$?$H$3$m!“e(B
1e$B2s$@$10J2<$Ne(BFAILe$B$,=P$^$7$?$,!”$=$l0J8e$O:F8=$7$^$;$s$G$7$?!#e(B

#753 test_io.rb:11:in `<top (required)>':
begin
require “io/nonblock”
r, w = IO.pipe
w.nonblock = true
w.write_nonblock(“a” * 100000)
w.nonblock = false
t1 = Thread.new { w.write(“b” * 4096) }
t2 = Thread.new { w.write(“c” * 4096) }
sleep 0.5
r.sysread(4096).length
sleep 0.5
r.sysread(4096).length
t1.join
t2.join
rescue LoadError
end
#=> not finished in 10 seconds [ruby-dev:32566]
FAIL 1/935 tests failed
make: *** [btest-ruby] Error 1

e$B$=$7$F!">e5-$Ne(BFAILe$B$,=P$J$$>l9g$O!"0J2<$N>l=j$G;_$^$j$^$9!#e(B

$ make check
(e$BN,e(B)
PASS all 935 tests
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb
“./bootstraptest/runner.rb” --ruby=“ruby” ./KNOWNBUGS.rb
2009-08-10 23:30:18 +0900
Driver is ruby 1.9.2dev (2009-04-21) [sparc-solaris2.10]
Target is ruby 1.9.2dev (2009-04-21) [sparc-solaris2.10]

KNOWNBUGS.rb .
PASS all 1 tests
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./runruby.rb
–extout=.ext – “./test/runner.rb”
libc and libm not found: ./test/runner.rb
Gem::Indexer tests are being skipped. Install builder gem.
Loaded suite ./test/runner
Started
…F/XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:44:
[BUG] Segmentation fault
ruby 1.9.2dev (2009-04-21) [sparc-solaris2.10]

– control frame ----------
c:0022 p:---- s:0087 b:0087 l:000086 d:000086 CFUNC :[]
c:0021 p:0040 s:0083 b:0082 l:002290 d:000081 BLOCK
/XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:44
c:0020 p:---- s:0078 b:0078 l:000077 d:000077 FINISH
c:0019 p:---- s:0076 b:0076 l:000075 d:000075 CFUNC :call
c:0018 p:0047 s:0071 b:0071 l:001378 d:000070 BLOCK
/XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:67
c:0017 p:---- s:0066 b:0066 l:000065 d:000065 FINISH
c:0016 p:---- s:0064 b:0064 l:000063 d:000063 CFUNC :call
c:0015 p:---- s:0062 b:0062 l:000061 d:000061 CFUNC :call
c:0014 p:0053 s:0058 b:0058 l:000057 d:000057 METHOD
/XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:37
c:0013 p:0163 s:0051 b:0051 l:002290 d:002290 METHOD
/XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:48
c:0012 p:0041 s:0045 b:0045 l:000044 d:000044 METHOD
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:440
c:0011 p:0096 s:0039 b:0039 l:000019 d:000038 BLOCK
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:419
c:0010 p:---- s:0033 b:0033 l:000032 d:000032 FINISH
c:0009 p:---- s:0031 b:0031 l:000030 d:000030 CFUNC :each
c:0008 p:0026 s:0028 b:0028 l:000019 d:000027 BLOCK
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:413
c:0007 p:---- s:0025 b:0025 l:000024 d:000024 FINISH
c:0006 p:---- s:0023 b:0023 l:000022 d:000022 CFUNC :each
c:0005 p:0080 s:0020 b:0020 l:000019 d:000019 METHOD
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:412
c:0004 p:0153 s:0015 b:0015 l:000014 d:000014 METHOD
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:392
c:0003 p:0041 s:0007 b:0007 l:000688 d:000006 BLOCK
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:333
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001358 d:001358 TOP

/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:333:in block in autorun' /XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:392:in run’
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:412:in
run_test_suites' /XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:412:in each’
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:413:in block in run_test_suites' /XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:413:in each’
/XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:419:in block (2 levels) in run_test_suites' /XXXXX/src/64gcc/trunk-23240/lib/minitest/unit.rb:440:in run’
/XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:48:in test_qsort1' /XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:37:in call’
/XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:37:in call' /XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:37:in call’
/XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:67:in block in bind' /XXXXX/src/64gcc/trunk-23240/.ext/common/dl/func.rb:67:in call’
/XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:44:in block in test_qsort1' /XXXXX/src/64gcc/trunk-23240/test/dl/test_func.rb:44:in []’

[NOTE]
You may have encountered a bug in the Ruby interpreter or extension
libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

e$B0[>o=*N;e(B
make: *** [test-all] Error 134

e$B$J$+$@$G$9!#e(B

At Mon, 10 Aug 2009 23:40:36 +0900,
Naohisa G. wrote in [ruby-dev:39060]:

ruby 1.9.2-preview1 e$B$,e(B SPARC e$B>e$Ne(B Solaris10 e$B$Ge(B make e$B$K<:GT$7$^$9!#e(B

e$B<jF0$GFsJ,8!:w$r$d$C$F$_$?$H$3$m!"e(Br23240 e$B$Oe(B make install-nodoc e$B$G$-$^$7$?$,e(B
r23241 e$B$Oe(B make e$B$K<:GT$7$^$7$?!#e(B

http://docs.sun.com/app/docs/doc/819-2243/readdir-r-3c?a=view e$B$re(B
e$B$_$k$H!"e(B_POSIX_PTHREAD_SEMANTICSe$B$,$J$$$He(Breaddir_r()e$B$,e(BPOSIXe$B=`5r$Ke(B
e$B$J$i$J$$$h$&$G$9$M!#e(B

e$B$3$l$G$I$&$G$7$g$&$+!#e(B

Index: configure.in

— configure.in (revision 24493)
+++ configure.in (working copy)
@@ -743,4 +743,8 @@ esac

case “$target_os” in
+when(solaris*)

  • RUBY_APPEND_OPTIONS(CPPFLAGS, -D_POSIX_PTHREAD_SEMANTICS)
  • LIBS=“-lm $LIBS”
  • ;;
    when(nextstep*) ;;
    when(openstep*) ;;