[ruby-core:93084] [Ruby trunk Bug#15826] Haiku LIBC_SO and LIBM_SO support for test/fiddle/helper.rb
From:
nobu@...
Date:
2019-06-13 05:00:10 UTC
List:
ruby-core #93084
Issue #15826 has been updated by nobu (Nobuyoshi Nakada).
Off topic a little, I think this code is wrong.
```ruby
case [0].pack('L!').size
when 4
# 32-bit ruby
when 8
# 64-bit ruby
end
```
This selects the platform by the size of `long`, but it may differ from the address bus size, e.g., mswin/mingw.
The size should be `[0].pack('J').size` (2.3 or later) or `[""].pack('p').size`,
or, much better, `RbConfig::CONFIG['void*']`.
----------------------------------------
Bug #15826: Haiku LIBC_SO and LIBM_SO support for test/fiddle/helper.rb
https://bugs.ruby-lang.org/issues/15826#change-78505
* Author: extrowerk (Zolt疣 Mizsei)
* Status: Third Party's Issue
* Priority: Normal
* Assignee: mrkn (Kenta Murata)
* Target version:
* ruby -v: ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-haiku]
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
This is required for the tests.
Haiku comes currently in 2 different flavour: 32 and 64 bit.
64 bit have only one toolchain, so it is easy, but 32 bit comes with 2 different (GCC2 primary and GCC7 secondary). Ruby built with GCC7 on Haiku, so it needs to pick the secondary arch libroot.so.
libroot.so is a complex lib which provides the libm and libc functionality, and probably much more.
---Files--------------------------------
ruby_test_fix.patch (692 Bytes)
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>