FreeBSD Port: ruby18-1.8.2_2
Jeremy Messenger
mezz7 at cox.net
Tue Feb 22 20:58:49 PST 2005
On Tue, 22 Feb 2005 23:11:28 -0500, Garance A Drosihn <drosih at rpi.edu>
wrote:
> At 3:28 PM -0600 2/22/05, Jeremy Messenger wrote:
>> On Tue, 22 Feb 2005, Garance A Drosihn <drosih at rpi.edu> wrote:
>>>
>>> This still runs into a core-dump in mini-ruby on Sparc64,
>>> 6.x-current. The present ruby18 port (ruby-1.8.2_2) also
>>> coredumps. The previous port (ruby-1.8.2_1) does compile
>>> and work on sparc64.
>>
>> What will it happens if you redo a clean ruby18, but only apply
>> Makefile patch? Only difference between ruby-1.8.2_1 and patch
>> are multi-patches from Debian/Gentoo and get ruby to use the
>> ${PTHREAD_*}. Can -lc and ${PTHREAD_LIBS} be use at the same
>> time?
>
> It seems there are two different issues.
>
> When it comes to the present port (ruby-1.8.2_2), it compiles
> fine on sparc64 if I change one line in the Makefile:
Oh, I thought you mean by ruby-1.8.2_1...
> .include <bsd.port.pre.mk>
> -.if ${OSVERSION} >= 502102
> +.if ${OSVERSION} >= 502102 && ${ARCH} != "sparc64"
> RUBY_ENABLE_PTHREAD?= public demand
> .endif
This should be no difference with with my patch, because my patch doesn't
enable pthread stuff. I removed the pthread stuff because it causes few
more troubles.
> That would be the quickest and safest fix when it comes to the
> sparc64 platform.
>
> - - - -
> When it comes to the version with the changes you posted, it
> *compiles* fine on sparc64 if I remove the file:
>
> files/patch-ruby-1.6.8-fix-x86_64
>
> which is one of the patches that you added. However, while that
> gets it to compile, the result then fails a 'make test' done in
> the work/ruby-1.8.2 directory. So I also had to change a few
> lines in what you had in the makefile. Note that if I do *just*
> the makefile changes, I still get the coredump. So the above
> file still needs to be removed in addition to the makefile changes.
I have decided to remove all patches that were from Debian and Gentoo, I
get several emails with good points. My reason of add patches was to try
to see if it will solve the enable threads support on multi-platform. My
ruby28.diff is such smaller now.
> The patch that I end up with is at:
>
> http://people.freebsd.org/~gad/ports/ruby18+mezz+gad_3.diff
>
> My patch is about the same as your last patch, minus the
> patch-ruby-1.6.8-fix-x86_64 file, plus my changes to the Makefile.
This is very weird.. Why does sparc64 dislike the -pthread? sparc64
doesn't has libpthread support? My lastest patch will removing -lc after I
have learned, so I have no idea if it will actually make the difference on
sparc64 but it will be on FreeBSD 4.x.
> I compiled and tested this on powerpc and sparc64. I haven't done
> much else testing on it. I realize that seems lame, but my sparc64
> system is the slowest machine I have. As it was, this minor change
> took me about six hours to come up with...
Thanks a lot for test!
> This probably needs much more testing before being committed, in
> which case it might be a good idea to commit the first change that
> I described (probably adding && ${ARCH} != "amd64" to it), just so
> people can build ruby until we can come up with a full-tested patch
> for all the platforms.
I don't think it needs to add amd64 like sparc64 needs, because I get many
reports that it works fine with amd64 so far.
Cheers,
Mezz
--
mezz7 at cox.net - mezz at FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/ - gnome at FreeBSD.org
More information about the freebsd-ports
mailing list