On Fri, Jan 14, 2011 at 1:43 AM, Landry Breuil <lan...@rhaalovely.net> wrote:
> On Thu, Jan 13, 2011 at 05:06:50PM -0800, Jeremy Evans wrote:
>> On 01/12 04:38, Jeremy Evans wrote:
>> > Fairly simple, these are ruby bindings for Qt4.  I originally started
>> > work on this at p2k10, and just recently picked it up again and got it
>> > working.
>> >
>> > Tested on i386.  Compiles on amd64, but I haven't had a chance to test
>> > there yet.  Looking for OKs.
>> >
>> > Jeremy
>>
>> Made some changes so that you can install it side by side with
>> kdebindings3 (the ruby binding to Qt3).  Also, if you want to
>> test this, you'll need to use:
>>
>> LD_PRELOAD=/usr/lib/libpthread.so.13.1
>>
>> when running the ruby interpreter.  We don't enable pthreads in ruby as
>> it causes some issues, which is why you need to use LD_PRELOAD.
>
> That is the exact same issue with p5-Gtk2, which isnt built those days
> because p5-Glib needs a similar hack and thus is marked BROKEN. Do we
> want more ports in the tree that require such hacks ? Same comment for 
> ruby-gtk2.

I don't see this as major issue.  If this is a major issue, it
shouldn't be hard to work around.  Stick an executable file named
pthread with the following contents in the $PATH (maybe as a port
other such ports depend on):

#!/bin/sh
LD_PRELOAD=/usr/lib/libpthread.so.13.1 "$@"

Then if you want to run ruby or perl with pthreads, instead of "ruby
foo" or "perl foo", it's "pthread ruby foo" or "pthread perl foo".

There are good reasons for not shipping a pthreaded ruby/perl by
default.  That does not mean that we should avoid ruby/perl modules
that require pthreads in the ports tree.

Marking something BROKEN that works fine when run correctly is a bad
practice.  BROKEN should be reserved for things that are actually
broken, not just things requiring an ugly hack.  I know of a couple of
other ruby ports that require the LD_PRELOAD hack and are not marked
BROKEN (kdebindings and ruby-hyperestraier).

Jeremy

Reply via email to