Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Oct 2015 23:49:50 +0100
From:      Andreas Tobler <andreast-list@fgznet.ch>
To:        Curtis Hamilton <hamiltcl@verizon.net>, "'Steve Wills'" <swills@freebsd.org>, "'Justin Hibbits'" <jrh29@alumni.cwru.edu>
Cc:        "'FreeBSD PowerPC ML'" <freebsd-ppc@freebsd.org>
Subject:   Re: OpenJDK for PowerPC64
Message-ID:  <5635458E.2070700@fgznet.ch>
In-Reply-To: <5633E35A.50402@fgznet.ch>
References:  <002a01d11001$a4b126e0$ee1374a0$@verizon.net> <CAHSQbTAurUob%2B5ypH%2BG5_2V8dh-iGWpxobGe-EzPHBXF-ptDfg@mail.gmail.com> <003701d1102a$ee366c70$caa34550$@verizon.net> <CAHSQbTCD2QmTd865QfSV-Guuf3y7gA=euEDriM%2Bc1Pzfw7L--Q@mail.gmail.com> <00f701d1129c$b82b0400$28810c00$@verizon.net> <563370BF.8010602@FreeBSD.org> <012c01d11328$caef1220$60cd3660$@verizon.net> <5633D743.9070002@fgznet.ch> <5633E35A.50402@fgznet.ch>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------020108090702010903010302
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

On 30.10.15 22:38, Andreas Tobler wrote:
> On 30.10.15 21:46, Andreas Tobler wrote:
>> On 30.10.15 16:36, Curtis Hamilton wrote:
>>> Steve,
>>>
>>> I'll work on the patch.  In the meantime, if you'd like to give them a try,
>>> I've built OpenJDK7/8 Zero VM for powerpc64.  It's available at the below
>>> URL:
>>>
>>> https://drive.google.com/folderview?id=0Bz7VO-WP3rlpM3BabUd6ejlya3c&usp=shar
>>> ing
>>
>> Do you need 32-bit powerpc stuff to bootstrap OpenJDK?
>>
>> If not, you can speed up the gcc build with the attached patch.
>> It gives you the possibility to choose java for powerpc64 and to
>> disable/enable multilibs for powerpc64.
>>
>> I just successfully built the gcc5-devel on my quad, including multilibs)
>>
>> The other versions are part of my todo, after fixing gcc trunk....
>>
>> The multilib switch is part of John Merino's work.

Here I have to apologize, it's the work from Julio Merino. I seem to mix 
John Marino and Julio Merino, sorry.

>> I recommend to use a compiler as new as possible, although, not the
>> 6.0-devel since it is broken, at least for me.
>>
>> You can use USES_GCC = 5.2 in the ports Makefile to say which gcc
>> compiler you wan to use.
>
> I just noticed some weird stuff with gcc5-devel, Try to use the gcc49,
> the patch applies there too. I'll run some tests on gcc49 during the night.

The gcc49 and below are not usable due to the fact that they do not 
install properly. The reason is the multilib part for soft-float which 
is not working properly. But this part is not needed.

> The gcc5-devel part I solve later.

It is solved, patch pending for gcc trunk and gcc-5. A leftover from 
adding PIE support. My fault, but I do not run all combinations of 
bootstrapping all the time since the machine is very power hungry...

Attached the patch I used to build a gcc-49 with multilib and java support.

Hth,
Andreas

Btw, it would be great if you (@Curtis) could describe how you did the 
OpenJDK bootstrap.

--------------020108090702010903010302
Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0";
 name="gcc49-fbsd-java-nosoftfloat.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="gcc49-fbsd-java-nosoftfloat.diff"

Index: Makefile
===================================================================
--- Makefile	(revision 400554)
+++ Makefile	(working copy)
@@ -45,12 +45,23 @@
 OPTIONS_DEFINE=		BOOTSTRAP
 OPTIONS_DEFINE_i386=	JAVA
 OPTIONS_DEFINE_amd64=	JAVA
+OPTIONS_DEFINE_powerpc64=	JAVA
 OPTIONS_DEFAULT=	BOOTSTRAP
 OPTIONS_DEFAULT_i386=	JAVA
 OPTIONS_DEFAULT_amd64=	JAVA
+OPTIONS_DEFAULT_powerpc64=	JAVA
 OPTIONS_EXCLUDE_DragonFly=	JAVA
 BOOTSTRAP_DESC=		Build using a full bootstrap
 
+.if exists(/usr/lib32/libc.so)
+OPTIONS_DEFINE_powerpc64+=        MULTILIB
+OPTIONS_DEFAULT_powerpc64+=        MULTILIB
+MULTILIB_CONFIGURE_ENABLE=        multilib
+MULTILIB_DESC=                Build support for 32-bit and 64-bit targets
+.else
+CONFIGURE_ARGS+=        --disable-multilib
+.endif
+
 .include <bsd.port.pre.mk>
 
 .if ${ARCH} == "amd64"
Index: files/patch-ppc-remove-soft-float.diff
===================================================================
--- files/patch-ppc-remove-soft-float.diff	(nonexistent)
+++ files/patch-ppc-remove-soft-float.diff	(working copy)
@@ -0,0 +1,16 @@
+--- gcc/config/rs6000/t-freebsd64.orig	2015-10-31 10:16:38.988785000 +0100
++++ gcc/config/rs6000/t-freebsd64	2015-10-31 10:17:11.464913000 +0100
+@@ -21,11 +21,9 @@
+ # On FreeBSD the 32-bit libraries are found under /usr/lib32.
+ # Set MULTILIB_OSDIRNAMES according to this.
+ 
+-MULTILIB_OPTIONS        = m32 msoft-float
+-MULTILIB_DIRNAMES       = 32 nof
++MULTILIB_OPTIONS        = m32
++MULTILIB_DIRNAMES       = 32
+ MULTILIB_EXTRA_OPTS     = fPIC mstrict-align
+ MULTILIB_EXCEPTIONS     =
+-MULTILIB_EXCLUSIONS     = !m32/msoft-float 
+ MULTILIB_OSDIRNAMES	= ../lib32
+-#MULTILIB_MATCHES        = $(MULTILIB_MATCHES_FLOAT)
+ 

Property changes on: files/patch-ppc-remove-soft-float.diff
___________________________________________________________________
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property

--------------020108090702010903010302--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5635458E.2070700>