#493 √ resolved
Gerardo Santana

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

    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

    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

    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

    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 »

People watching this ticket

Tags