Mutiply defined symbol InlineSmallCode, globals.hpp, globals_zero.hpp
Andrew John Hughes
gnu_andrew at member.fsf.org
Thu Oct 29 04:22:43 PDT 2009
2009/10/29 Edward Nevill <ed at camswl.com>:
>>
>>> There is another failure in the ARM build to do with the build of
>>> bytecodes_arm.s from bytecodes_arm.def. This is built in the
>>> ports/hotspot directory whereas it should now be built in the
>>> openjdk/hotspot/... directory.
>>>
>>> The quick solution is to change the definitions of ZERO_ASM_BC_DEF and
>>> ZERO_ASM_BC_ASM to be openjdk/hotspot/... instead of ports/hotspot/...
>>> (I have yet to test this, at home now, no ARM board).
>>>
>>> The longer term solution is to move the build rules for this from the
>>> top level makefile to zero.make.
>>>
>>> Would you like me to make this change now? If I make the changes in the
>>> trunk to zero.make (ie in ports/hotspot/...) can you port them across to
>>> hs16?
>>>
>>
>>I'm not sure I follow things here. The hs16 build option doesn't do
>>anything other than replace the openjdk/hotspot directory from the b17
>>tarball with one from Mercurial. Stuff is still copied from ports to
>>openjdk/hotspot as it was before.
>
> The problem is that the makefile builds bytecodes_arm.s in
>
> ports/hotspot/src/...
>
> instead of
>
> openjdk/hotspot/src/...
>
> This worked when the directories in ports/hotspot/src/... were linked to
> openjdk/hotspot/src/...
>
> However those links do not seem to be created in the hs16 build so the newly
> created bytecodes_arm.s exists in ports/... but not in openjdk/...
>
Ah ok, I had to change the ln to a cp for IcedTea6 so that zero itself
could be patched on hs16 builds.
I wanted to avoid this but bringing enough of HotSpot through to make
the same zero work on hs14 and hs16 proved impractical.
So I guess if you do the ARM stuff after the copy, it'll get missed.
Another option is to make the ARM stuff a prerequisite to ports.stamp.
Whatever is easiest for you.
Sorry for causing an issue, I'm not fully aware of how the ARM port works.
> At least that is my understanding of the problem.
>
> I have implemented a fix for this by moving the rules to zero.make so
> bytecodes_arm.s gets built whereever zero.make is.
>
> I have 3 test builds for ARM going at the moment.
>
> - Shark + trunk
> - Zero + trunk
> - Zero + hs16
>
> The builds take about 5 hours, will let you know.
>
> Regards,
> Ed.
>
--
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 distro-pkg-dev
mailing list