Fixing for loop for portability
Reported by Gerardo Santana | April 13th, 2008 @ 10:32 PM | in 1.0 preview
The following line
for arg; do
was changed for
for arg
do
for portability. It prevented rubinius from being built in Solaris.
Comments and changes to this ticket
-

rnicholson April 14th, 2008 @ 08:17 AM
+1 for patch - This got me farther along in the build for Solaris but, not completely (can't link libbstring.32.so - separate ticket tba)
-
Gerardo Santana April 14th, 2008 @ 08:24 AM
edit the Makefile, line 30 looks like this:
SONAME=-Wl,-soname,libbstrings-$(VERSION).$(SUFFIX)
rewrite it as this
SONAME=
This is not really a definitive solution, because it breaks other platforms. I'm not sure how to write a definitive fix. Maybe write a special case, just like Darwin.
You'll have to do the same for the rest of the external libraries.
-
Gerardo Santana April 14th, 2008 @ 04:12 PM
The problem is that gcc is not using GNU ld, but SunOS' ld.
Here is a solution: http://gcc.gnu.org/faq.html#gas
But external_libs/libev/configure uses the output of gcc -print-prog-name=ld, which points to /usr/ccs/bin/ld in my system.
-
Brian Ford April 19th, 2008 @ 11:34 PM
- → State changed from new to resolved
Patch for "for loop portability" committed in de3c1fd7.
Please Login or create a free account to add a new comment.
You can update this ticket by sending an email to from your email client. (help)
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
