From owner-freebsd-java@FreeBSD.ORG Fri Mar 14 13:11:58 2008 Return-Path: Delivered-To: freebsd-java@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D54491065671; Fri, 14 Mar 2008 13:11:58 +0000 (UTC) (envelope-from kurt@intricatesoftware.com) Received: from mail1.intricatesoftware.com (cl-18.ewr-01.us.sixxs.net [IPv6:2001:4830:1200:11::2]) by mx1.freebsd.org (Postfix) with ESMTP id 8AD228FC15; Fri, 14 Mar 2008 13:11:58 +0000 (UTC) (envelope-from kurt@intricatesoftware.com) Received: from seraph.intricatesoftware.com (relay@localhost.intricatesoftware.com [IPv6:::1]) by mail1.intricatesoftware.com (8.14.1/8.13.4) with ESMTP id m2EDBko2014250; Fri, 14 Mar 2008 09:11:46 -0400 (EDT) Received: from seraph.intricatesoftware.com (truk@localhost.intricatesoftware.com [127.0.0.1]) by seraph.intricatesoftware.com (8.14.1/8.14.1) with ESMTP id m2EDBXMn030199; Fri, 14 Mar 2008 09:11:33 -0400 (EDT) Message-ID: <47DA7985.3040706@intricatesoftware.com> Date: Fri, 14 Mar 2008 09:11:33 -0400 From: Kurt Miller User-Agent: Thunderbird 2.0.0.12 (X11/20080228) MIME-Version: 1.0 To: Daniel Eischen References: <20080309220029.GB93340@llama.fishballoon.org> <200803100932.37017.lists@intricatesoftware.com> <20080310231803.GC22200@tuatara.fishballoon.org> <200803102130.02371.kurt@intricatesoftware.com> <47D5FAEF.3080900@intricatesoftware.com> In-Reply-To: X-Enigmail-Version: 0.95.5 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-SMTP-Vilter-Version: 1.3.6 X-SMTP-Vilter-Virus-Backend: clamd X-SMTP-Vilter-Status: clean X-SMTP-Vilter-clamd-Virus-Status: clean X-Spamd-Symbols: ALL_TRUSTED,AWL,BAYES_00 X-SMTP-Vilter-Spam-Backend: spamd X-Spam-Score: -4.4 X-Spam-Threshold: 5.0 X-Spam-Probability: -0.9 X-SMTP-Vilter-Unwanted-Backend: attachment X-SMTP-Vilter-attachment-Unwanted-Status: clean Cc: Scott Mitchell , freebsd-java@freebsd.org Subject: Re: jdk16 build failure on 7.0R/i386 X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Mar 2008 13:11:59 -0000 Daniel Eischen wrote: > On Mon, 10 Mar 2008, Kurt Miller wrote: > >> Daniel Eischen wrote: >> >>> On Mon, 10 Mar 2008, Kurt Miller wrote: >>> >>>> Weird. It seems like gcc(1)/ld(1) has changed the way -pthread is >>>> handled. In 6.X >>>> and below it will record a NEEDED entry for libpthread even if the >>>> executable >>>> doesn't reference any pthread symbols. I suspect that in 7.X if the >>>> executable >>>> doesn't reference any pthread symbols it wont record the NEEDED entry. >>> >>> No, for binaries it works the same way on 7.x as 6.x. >>> >>> $ gcc -o k k.c -pthread >>> $ ldd k >>> k: >>> libthr.so.3 => /lib/libthr.so.3 (0x2807c000) >>> libc.so.7 => /lib/libc.so.7 (0x2808f000) >>> >>> I believe that -pthread does now act differently in 7.0+ when used >>> to build shared libraries. Prior to 7.0, using -pthread to build >>> shared libraries would not record a dependency on libpthread, >>> whereas in 7.0+ it will record a dependency. >>> >>> Other than that, the only change in 7.0 is that libthr is now the >>> default instead of libkse (nee libpthread). >>> >> >> Hi Daniel, >> >> Hmm, well I'm perplexed then. I can't see why >> work/control/build/bsd-i586/bin/java isn't recording the NEEDED on >> libthr.so. Perhaps the -Wl,-soname=lib.so argument or the double >> -pthread is the culprit. Can you experiment on 7.0 to see if they are >> involved at all? > > I was able to get jdk16 built on 7.0. Previously (unsuccessfully), > I was trying to use jdk-1.5.0.11p5,1 to build jdk16. When that > didn't work, I installed jdk-1.5.0.13p7_4,1 from a package that > I had built on another box. So using jdk-1.5.0.13p7_4,1, I was > able to build jdk-1.6.0.3p4. I also used the same package > (jdk-1.5.0.13p7_4,1) to update jdk15 to the latest patchset > (jdk-1.5.0.14p8,1). So now the latest patchset of both jdk15 > and jdk16 have been built using jdk-1.5.0.13p7_4,1. I have > not tried to rebuild either jdk15 or jdk16 using either of > the up-to-date jdks. > > BTW, this was all done manually (cd /usr/ports/java/jdk1X; > make; make install). portupgrade wanted to install compat6x > and diablo for no apparent reason, when there was already > a perfectly good native jdk installed. Ok so you and others can build the jdks fine on 7.0R. I guess I'm out of ideas as to why Scott and Nicolas's systems don't record the dependency on libthr.so. > BTW2, the build of jdk16 was a lot faster than that of jdk15, > which surprised me. In 1.6 the debug portion of the build can be optionally turned off using SKIP_FASTDEBUG_BUILD="true" which is the default. In 1.5 the hotspot debug binaries are always built (although only installed if the port DEBUG option is on). -Kurt