I noted multiple build failures on x86 Linux (Ubuntu 8.04) using the
b31 source archive, building the fastdebug_build target.

The first failure occurs due to -Werror.  There are a number of unsafe
casts of char * in hotspot, and these cause the build to fail with
-Werror.  I worked around this by removing -Werror from a variety of
Makefiles.  Aside: why isn't this propagated from the top-level
Makefile?  I had to grep around in the tree to find the right one.

Second problem: the build dumped core in test_gamma with an error in
ciTypeFlow.hpp:395.  I filed this bug at sun.com with Review ID
1299675.  I worked around this by exiting the test_gamma script early.

Third problem: fastdebug_build target doesn't seem to propagate the -g
flag.  All of hotspot was built with -fPIC -fno-rtti -fno-exceptions
-fcheck-new -m32 -march=i586 -pipe -O3 -fno-strict-aliasing
-Wpointer-arith -Wconversion -Wsign-compare, i.e. without -g.  I
thought the point of the fastdebug target was to build with -g -O.
Should I have built with the plain debug_build target instead?

Fourth problem:
/home/jwb/jdk-src/openjdk/build/linux-i586-fastdebug/gensrc/java/nio/charset/CharsetEncoder.java:142:
cannot find symbol
symbol  : class $replType$
location: class java.nio.charset.CharsetEncoder
    private $replType$ replacement;

This is evidently caused by /bin/sh being dash instead of bash.  If
the build requires bash, why doesn't it invoke bash?  Relying on sh ==
bash is fragile and confusing.

Regards,
jwb

Reply via email to