Open JDK build with mlvm patches
John Rose
John.Rose at Sun.COM
Thu Apr 24 11:48:31 PDT 2008
[cc-ing mlvm-dev in reply, because of general interest]
On Apr 24, 2008, at 5:06 AM, Thamaraiselvan Poomalai wrote:
> Hello John,
>
> I have successfully compiled hotsopt and jdk with mlvm patches from
> http://hg.openjdk.java.net/mlvm/mlvm.
Thanks for giving it a spin, Selvan.
> 1) Though i did full jdk build after applying patches, java/dyn
> package is skipped by build process (i couldn't trace compiled java/
> dyn packages under sources/build/openjdk_full_debug/classes/java).
> Could we also include necessary make files for java/dyn package in
> our patch?
Yes, that's coming.
> 2) Here are the things i did to make build successful,
>
> After executing below commands from README.txt,
> $ mkdir davinci
> ... ... ...
> ... ... ...
> $ sh patches/make/each-patch-repo.sh hg qselect --reapply $guards
>
> i executed below command to push patch changes to source repository,
>
> $ sh patches/make/each-patch-repo.sh hg qpush -a
Hmm. I thought --reapply would do this; We'll add that to the
instructions.
> Output of above command was,
> ===========================
> [root at iwsg OpenJDK]# sh patches/make/each-patch-repo.sh hg qpush -a
> + (cd sources/hotspot; hg qpush -a)
> applying anonk.patch
> skipping callcc.patch - guarded by '-testable'
> Now at: anonk.patch
> + (cd sources/jdk; hg qpush -a)
> applying anonk.patch
> skipping callcc.patch - guarded by '-testable'
> Now at: anonk.patch
> ===========================
>
> It skipped callcc.patch for hotspot and jdk. When i try to do build
> with callcc.patch skipped, i got following error,
Yes, callcc.patch is very rough right now. Lukas Stadler has a much
more complete version which I think he'll be releasing soon.
> ===========================
> /share/software/OpenJDK/sources/hotspot/src/share/vm/classfile/
> classFileParser.cpp: In member function 'constantPoolHandle
> ClassFileParser::parse_constant_pool(Thread*)':
> /share/software/OpenJDK/sources/hotspot/src/share/vm/classfile/
> classFileParser.cpp:316: error: 'find_well_known_klass' is not a
> member of 'SystemDictionary'
> /share/software/OpenJDK/sources/hotspot/src/share/vm/classfile/
> classFileParser.cpp: In member function 'void
> ClassFileParser::patch_constant_pool(constantPoolHandle, int,
> Handle, Thread*)':
> /share/software/OpenJDK/sources/hotspot/src/share/vm/classfile/
> classFileParser.cpp:434: error: 'is_instance' is not a member of
> 'java_lang_Class'
> make[5]: *** [classFileParser.o] Error 1
> make[5]: Leaving directory `/share/software/OpenJDK/sources/build/
> openjdk_full_debug/hotspot/outputdir/linux_i486_compiler2/jvmg'
> make[4]: *** [the_vm] Error 2
> ===========================
Thanks. It looks like callcc.patch has a tweak that anonk.patch
should have instead. The well-known-klass fix is not yet in the
baseline (I'm working on it today).
> I removed "#-testable" from sources/jdk/.hg/patches/series, sources/
> hotspot/.hg/patches/series and re-applied callcc.patch.After
> removing "#-testable", series file looks as below
>
> anonk.patch #-/anonk #+jdk7-b25
> #meth.patch #-/meth #+jdk7-b25 #-buildable
> #indy.patch #-/indy #+jdk7-b25 #-buildable
> #inti.patch #-/inti #+jdk7-b25 #-buildable
> callcc.patch #-/callcc #+jdk7-b25
To get callcc in, it would be better to qselect buildable (not
buildable + testable). The series file is supposed to represent the
rough development status of each patch.
> After applying anonk.patch and callcc.patch to sources, hotspot and
> full jdk build was successful.
>
> My login name for wiki (http://wikis.sun.com/display/mlvm/Home) is
> p.thamarai at gmail.com
OK, I added you (user id selvan) as an author to http://wikis.sun.com/
display/mlvm .
Please feel free to record useful information on the wiki.
-- John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/mlvm-dev/attachments/20080424/e8a26cca/attachment.html
More information about the mlvm-dev
mailing list