Date: Tue, 22 Feb 2005 22:59:35 -0600 From: "Jeremy Messenger" <mezz7@cox.net> To: "Garance A Drosihn" <drosih@rpi.edu> Cc: ports@freebsd.org Subject: Re: FreeBSD Port: ruby18-1.8.2_2 Message-ID: <opsmmv5lj89aq2h7@mezz.mezzweb.com> In-Reply-To: <p06210219be4190359234@[128.113.24.47]> References: <64348.207.219.213.162.1109011818.squirrel@207.219.213.162> <a5d5f155be4e65d41f9775df96135160@khera.org> <20050221194954.GA49438@xor.obsecurity.org> <opsmkkzit99aq2h7@mezz.mezzweb.com> <6a2d0a658b1cfe9503183eb978e4e2d6@snsonline.net> <opsmklbltj9aq2h7@mezz.mezzweb.com> <p0621020abe40281a2ae3@[128.113.24.47]> <opsmk268vc9aq2h7@mezz.mezzweb.com> <p06210211be4077eee0cc@[128.113.24.47]> <opsmk4tyj19aq2h7@mezz.mezzweb.com> <opsmladoez9aq2h7@mezz.mezzweb.com> <fe58da1363cefb8f0cbf9c24ba7b2aa9@snsonline.net> <opsmlb11jb9aq2h7@mezz.mezzweb.com> <opsmleaxs29aq2h7@mezz.mezzweb.com> <p06210218be4149c30f49@[128.113.24.47]> <opsmma9em59aq2h7@mezz.mezzweb.com> <p06210219be4190359234@[128.113.24.47]>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 22 Feb 2005 23:11:28 -0500, Garance A Drosihn <drosih@rpi.edu> wrote: > At 3:28 PM -0600 2/22/05, Jeremy Messenger wrote: >> On Tue, 22 Feb 2005, Garance A Drosihn <drosih@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@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?opsmmv5lj89aq2h7>