Feature #2639
closedifdef References to __BEOS__ should be changed to also include __HAIKU__
Description
=begin
The Be Operating system's functionality is almost completely replaced by Haiku-os (http://haiku-os.org). As of the latest Ruby 1.9 stable release BEOS is only currently referenced in os-dependent code. Changing the references to BEOS to also cover HAIKU makes ruby 1.9 almost compile on Haiku.
~/develop/ruby-1.9.1-p376> grep BEOS *
ChangeLog: closesocket, so check BEOS macro directly. (I was worried
dln.c:#ifdef BEOS
dln.c:#ifdef BEOS
dln.c:#endif /* BEOS/
file.c:#ifdef BEOS / should not change ID if -1 /
file.c:#endif / BEOS */
io.c:#if defined(BOW) || defined(CYGWIN) || defined(_WIN32) || defined(EMX) || defined(BEOS)
io.c:#ifdef BEOS
io.c:#elif defined(BEOS)
io.c:#ifdef BEOS
numeric.c:#elif defined(BEOS)
signal.c:#ifdef BEOS
=end
Files
Updated by naruse (Yui NARUSE) over 15 years ago
- Category set to build
=begin
Please make a patch for trunk; not 1.9.1.
=end
Updated by kallisti5 (Alexander von Gluck) over 15 years ago
=begin
patch attached.
=end
Updated by naruse (Yui NARUSE) over 15 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
=begin
This issue was solved with changeset r26398.
Alexander, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
=end
Updated by augiedoggie (Chris Roberts) over 15 years ago
=begin
This patch should be reverted, with the possible exception of the define in signal.c. All other changes enable old BeOS code that wasn't necessary on Haiku. The Haiku developers specifically removed the BEOS definition to avoid this situation where old workarounds were used when building software for Haiku.
=end
Updated by naruse (Yui NARUSE) over 15 years ago
=begin
Alex, can you check it?
If it works, please make a patch to current trunk.
=end
Updated by kallisti5 (Alexander von Gluck) over 15 years ago
=begin
Yeah, I wasn't aware of the recent changes to stop defining BEOS in Haiku. I will go over the current trunk and eliminate any patches for legacy BeOS stuff that Haiku has updated/fixed.
=end