From owner-freebsd-ports@FreeBSD.ORG Wed Feb 23 04:11:45 2005 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 10A1116A4CE for ; Wed, 23 Feb 2005 04:11:45 +0000 (GMT) Received: from smtp3.server.rpi.edu (smtp3.server.rpi.edu [128.113.2.3]) by mx1.FreeBSD.org (Postfix) with ESMTP id 50C2B43D5A for ; Wed, 23 Feb 2005 04:11:44 +0000 (GMT) (envelope-from drosih@rpi.edu) Received: from [128.113.24.47] (gilead.netel.rpi.edu [128.113.24.47]) by smtp3.server.rpi.edu (8.13.0/8.13.0) with ESMTP id j1N4BShY006305; Tue, 22 Feb 2005 23:11:28 -0500 Mime-Version: 1.0 Message-Id: In-Reply-To: References: <64348.207.219.213.162.1109011818.squirrel@207.219.213.162> <20050221194954.GA49438@xor.obsecurity.org> <6a2d0a658b1cfe9503183eb978e4e2d6@snsonline.net> Date: Tue, 22 Feb 2005 23:11:28 -0500 To: "Jeremy Messenger" From: Garance A Drosihn Content-Type: text/plain; charset="us-ascii" ; format="flowed" X-CanItPRO-Stream: default X-RPI-SA-Score: undef - spam-scanning disabled X-Scanned-By: CanIt (www . canit . ca) cc: ports@freebsd.org Subject: Re: FreeBSD Port: ruby18-1.8.2_2 X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Feb 2005 04:11:45 -0000 At 3:28 PM -0600 2/22/05, Jeremy Messenger wrote: >On Tue, 22 Feb 2005, Garance A Drosihn 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: .include -.if ${OSVERSION} >= 502102 +.if ${OSVERSION} >= 502102 && ${ARCH} != "sparc64" RUBY_ENABLE_PTHREAD?= public demand .endif 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. 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. 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... 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. -- Garance Alistair Drosehn = gad@gilead.netel.rpi.edu Senior Systems Programmer or gad@freebsd.org Rensselaer Polytechnic Institute or drosih@rpi.edu