icedtea6 build failures on alpha and armel using gcj

Andrew John Hughes ahughes@redhat.com
Mon Mar 8 12:35:00 GMT 2010


On 8 March 2010 11:45, Matthias Klose <doko@ubuntu.com> wrote:
> On 01.03.2010 20:54, Andrew John Hughes wrote:
>>>> On 27 February 2010 16:49, Matthias Klose<doko@ubuntu.com>  wrote:
>>>>>> Building icedtea6 on alpha and armel using a two stage bootstrap fails
>>> with
>>> different errors. These are no new errors, just rechecked the two stage
>>> bootstrap, because the one stage build fails to build cacao after the b18
>>> update. On alpha:
>>>>>> mkdir -p lib/rt
>>> /home/doko/openjdk/openjdk-6-6b18~pre1/build/bootstrap/jdk1.6.0/bin/javac
>>>  -g -d lib/rt \
>>>          -source 1.5 \
>>>          -sourcepath \
>>>>>>>>> 'openjdk/jdk/src/share/classes:openjdk/jdk/src/solaris/classes:openjdk/langtools/src/share/classes:openjdk/corba/src/share/classes:/home/doko/openjdk/openjdk-6-6b18~pre1/build/generated'
>>> \
>>>          -classpath /usr/lib/jvm/java-gcj/jre/lib/rt.jar \
>>>          -bootclasspath \'\' @rt-source-files.txt ;
>>> incorrect classpath: ''
>>> ----------
>>> 1. ERROR in
>>>>>> /home/doko/openjdk/openjdk-6-6b18~pre1/build/openjdk/jdk/src/share/classes/sun/misc/FloatConsts.java
>>> (at line 52)
>>>        public static final float   MIN_NORMAL      = 1.17549435E-38f;
>>>                                                      ^^^^^^^^^^^^^^^
>>> The literal 1.17549435E-38f of type float is out of range
>>> ----------
>>> 1 problem (1 error)make[1]: *** [stamps/rt-class-files.stamp] Error 255
>>>>>>>>> I vaguely remember we had a patch in the past to back out some of the
>>> constants stuff.
>>>>>>> We do still have a patch.  It's applied to the ecj build.  Why are you
>> using ecj for a non-bootstrap build, as it appears here?
>> comparing the build logs on alpha and i386, this is the
> stamps/rt-class-files.stamp target, which succeeds to build on i386, but not
> on alpha. This target always uses the openjdk sourcepath, not the
> openjdk-ecj source path.
>
Ok, so it occurs in the early bootstrap stage which still uses the
openjdk tree on IcedTea6 tree. IcedTea7 uses the patched
bootstrap/ecj tree with the additional fixes to build the
bootstrapping classes, so I'll backport this to 6.
> and it looks like the patch is applied, but ecj can't parse this value on
> alpha; the test program
>>  class Test {
>        public static final float   MIN_NORMAL      = 1.17549435E-38f;
>  }
>> fails to build:
>> ----------
> 1. ERROR in Test.java (at line 2)
>        public static final float   MIN_NORMAL      = 1.17549435E-38f;
>                                                      ^^^^^^^^^^^^^^^
> The literal 1.17549435E-38f of type float is out of range
> ----------
>>> further, is it correct that the -ecj patch is applied to *both* the openjdk
> and openjdk-ecj directory?
>> $ ls -l build/openjdk*/jdk/src/share/classes/sun/misc/FloatConsts.java
> -rw-rw-r-- 2 doko doko 4147 Feb 17 03:14
> build/openjdk-ecj/jdk/src/share/classes/sun/misc/FloatConsts.java
> -rw-rw-r-- 2 doko doko 4147 Feb 17 03:14
> build/openjdk/jdk/src/share/classes/sun/misc/FloatConsts.java
>> these are still hard links.

No it's specifically only applied to -ecj patches. You should only
ever ship a build created from the openjdk tree and not
openjdk-ecj/boot (i.e. the second stage of a full build or the result
of a --with-openjdk/--disable-bootstrap build), which has a number of
features turned off (including Nimbus).
>>  Matthias
>
-- 
Andrew :-)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /