From owner-freebsd-java@freebsd.org Mon Feb 1 12:00:40 2016 Return-Path: Delivered-To: freebsd-java@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 071CCA9709F for ; Mon, 1 Feb 2016 12:00:40 +0000 (UTC) (envelope-from magnus.ihse.bursie@oracle.com) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id E0F77D55 for ; Mon, 1 Feb 2016 12:00:39 +0000 (UTC) (envelope-from magnus.ihse.bursie@oracle.com) Received: by mailman.ysv.freebsd.org (Postfix) id DD8AAA9709E; Mon, 1 Feb 2016 12:00:39 +0000 (UTC) Delivered-To: java@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD164A9709D for ; Mon, 1 Feb 2016 12:00:39 +0000 (UTC) (envelope-from magnus.ihse.bursie@oracle.com) Received: from aserp1040.oracle.com (aserp1040.oracle.com [141.146.126.69]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "aserp1040.oracle.com", Issuer "Oracle SSL CA - G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 767EAD51 for ; Mon, 1 Feb 2016 12:00:39 +0000 (UTC) (envelope-from magnus.ihse.bursie@oracle.com) Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u11C0UGc027716 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 1 Feb 2016 12:00:30 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserv0022.oracle.com (8.13.8/8.13.8) with ESMTP id u11C0UGf032310 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Mon, 1 Feb 2016 12:00:30 GMT Received: from abhmp0004.oracle.com (abhmp0004.oracle.com [141.146.116.10]) by aserv0122.oracle.com (8.13.8/8.13.8) with ESMTP id u11C0UED021562; Mon, 1 Feb 2016 12:00:30 GMT Received: from [10.161.190.202] (/10.161.190.202) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 01 Feb 2016 04:00:29 -0800 Subject: Re: Helping out with JDK 9 on BSD To: Brian Gardner References: <56ADE7D4.8020107@oracle.com> <56ADE943.6020103@oracle.com> <8B9ACABA-F9B2-4288-9DB5-CA843DE48C34@getsnappy.com> <08F78FBA-70D2-4819-99BB-05476638726C@getsnappy.com> Cc: java@freebsd.org From: Magnus Ihse Bursie Message-ID: <56AF48F1.4070506@oracle.com> Date: Mon, 1 Feb 2016 13:00:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <08F78FBA-70D2-4819-99BB-05476638726C@getsnappy.com> X-Source-IP: aserv0022.oracle.com [141.146.126.234] Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Feb 2016 12:00:40 -0000 On 2016-02-01 01:00, Brian Gardner wrote: > Hi Magnus, > I was able to clone the jdk9/dev repo, apply your patches, and compile > on FreeBSD 10.1 amd64, with some changes to the Serviceability Agent > ported from bad-port/jdk8 repo, however when I try to run javac I get > a bunch of messages like: > Thread 832744400 has exited with leftover thread-specific data after 4 > destructor iterations > > I’m curious where you left off in getting "javac HelloWorld” working > on FreeBSD? Somewhere around there. :-) I got it "working" on FreeBSD, OpenBSD and NetBSD, with some caveats. I did not say it worked perfectly. :) I don't remember exactly right now what workarounds were needed in what circumstances, but on one of the platforms I needed to set LD_LIBRARY_PATH, and on some other I needed to set an -X option to specify memory sizes (which were not correctly read from the system). The message you describe is a warning due to lack of proper code to cleanup some kind of TLS data, if I remember correctly. It's harmless, but annoying. The fix is relative straightforward, but I didn't bother doing it. /Magnus > > Brian Gardner > > > >> On Jan 31, 2016, at 6:57 AM, Brian Gardner > > wrote: >> >> I’m interested in helping. I ported openjdk6 to freebsd and also >> helped out with openjdk8. >> >> Brian Gardner >> >> >>> On Jan 31, 2016, at 3:00 AM, Magnus Ihse Bursie >>> >> > wrote: >>> >>> On 2016-01-31 11:54, Magnus Ihse Bursie wrote: >>>> Hi, >>>> >>>> [TL;DR: I'm offering patches to compile JDK 9 on FreeBSD, but it's >>>> not clear where to put them, or how.] >>>> >>>> I'm working at Oracle on the OpenJDK build team and is responsible >>>> for large parts of the build system of OpenJDK. Lately, I've been >>>> playing around with FreeBSD (and other BSDs) in my free time, and >>>> I've written a patch that will add build system support for >>>> FreeBSD, OpenBSD and NetBSD in JDK 9 (tracked in >>>> https://bugs.openjdk.java.net/browse/JDK-8147795). >>>> >>>> I started writing this when I realized that the jdk9 branch in the >>>> OpenJDK bsd-port repository did not contain any BSD-specific >>>> changes at all, and the old JDK 8 changes will not readily be >>>> portable, due to major changes in the build system between JDK 8 >>>> and JDK 9. >>>> >>>> I thought it would be a no-brainer to integrate these changes into >>>> the JDK 9 mainline, so they would be in place for whenever you guys >>>> would start to attack porting the code base. However, some of my >>>> collegues thought otherwise. The end result, I think, is that they >>>> wanted to see someone (not necessarily a company, the FreeBSD >>>> organisation for instance seemed to be okay), to step forward and >>>> say "we take responsibility for the BSD port", and give some kind >>>> of commitment to actually use these build changes in producing a >>>> viable port. You can read the mail conversation here: >>>> http://mail.openjdk.java.net/pipermail/build-dev/2016-January/016421.html >>> >>> I forgot to add that I'm willing to help with build issues for the >>> BSD port, as far as my (like everybode else's) limited free time >>> allows me. Unfortunately, I'm still a noob at BSD internals and >>> can't really help with much apart from that. >>> >>> /Magnus >>> >>> >>>> >>>> An alternative to pushing this code into the JDK 9 mainline is of >>>> course to push it to the bsd-port/jdk9 repo (given that the owners >>>> of that repo approves), but that seems like a less favourable >>>> solution. Having the code in the mainline does not mean that it >>>> gets tested automatically, but it means that it will be part of >>>> e.g. refactoring, that would otherwise break a downstream patchset. >>>> >>>> I cc:ed this conversation to the bsd-port-dev@openjdk.java.net >>>> mailing list, but never got >>>> any kind of official response there. Since this list seems more >>>> active, I'm trying here instead. :) >>>> >>>> So, I'm offering two patches here, one that applies to the build >>>> system, is nice and clean, and possible to integrate into JDK 9 >>>> mainline, if my collegues are convinced that someone is backing up >>>> the BSD port. And there's a second patch, which fixes broken >>>> C/C++/Java code and results in a product that can at least run >>>> "javac HelloWorld", but this is not yet clean enough for >>>> integration anywere, at least not the JDK 9 mainline. (I don't know >>>> enough of the BSD internals to fix all problems, so there's some >>>> "#if 0" code here and there.) >>>> >>>> /Magnus >>>> >>>> _______________________________________________ >>>> freebsd-java@freebsd.org mailing list >>>> https://lists.freebsd.org/mailman/listinfo/freebsd-java >>>> To unsubscribe, send any mail to "freebsd-java-unsubscribe@freebsd.org" >>> >>> _______________________________________________ >>> freebsd-java@freebsd.org >>> >>> mailing list >>> https://lists.freebsd.org/mailman/listinfo/freebsd-java >>> To unsubscribe, send any mail to >>> "freebsd-java-unsubscribe@freebsd.org >>> " >> >> _______________________________________________ >> freebsd-java@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-java >> To unsubscribe, send any mail to >> "freebsd-java-unsubscribe@freebsd.org >> " >