trouble building mlvm

Iulian Dragos jaguarul at gmail.com
Wed Dec 17 03:33:34 PST 2008


On Wed, Dec 17, 2008 at 12:03 PM, Ben Evans
<benjamin.john.evans at googlemail.com> wrote:
> Hi Lulian,

It's iulian (but don't worry, everyone does that :)

> On Wed, Dec 17, 2008 at 10:51 AM, Iulian Dragos <jaguarul at gmail.com> wrote:
>>
>> I am happy to report I could run the InvokeDynamicDemo day! I had to
>> pass empty maps instead of nulls to the 'putPatches' method, otherwise
>> it throws an NPE (honestly, I have no idea how it could work
>> otherwise).
>
> I'm one of those contending with OS X as well as invokedynamic.

Well, I'm using Linux, it was Paul Phillips who struggled with OS X.

> Could you post a summary of what you've got building?
>
> Ie, which beta, OS, patches, anything special you needed to do?

I was planning to do that, but I won't be able to write something more
detailed before the end of the week: a paper deadline is looming.

Here's a very short summary:

Start with the instructions for building JDK7 found here
http://weblogs.java.net/blog/simonis/archive/2008/01/hotspot_develop.html
(this takes care of most dependencies). However, checkout jdk7 files
in a directory called 'sources', as this will make applying patches
easier.
Follow the instructions found in the patches/README.txt file to get an
idea about what's to be done (forget the wiki, it is incomplete and
outdated). Most probably they will fail at the end because of
conflicts. Here's what I did:
- go to sources/hotspot
   - type 'hg qpop -a' (to make sure all patches have been unapplied).
You can check that by typing 'hg qapplied', there should be none.
   - type 'hg qselect $guards' to select the 'guards' that
enable/disable active patches. You should have a guards variable
defined from following README.txt. It makes sense to add jdk7-b38 and
jdk7-b34 to it. To see what guards are needed to activate each patch,
have a look at .hg/patches/series
   - revert to an earlier version of the repository 'hg update jdk7-b38'

If you had conflicts in other repositories (jdk or langtools), to the
same there. I completely skipped the patches for langtools, as I could
not find a revision that accepts all patches, and I was more
interested in the jvm itself.

What I wrote here is probably not enough, and I recommend reading a
few chapters of the Mercurial book if you are not familiar with this
system. I wasn't, and things became a clearer afterwards :)

Feel free to email me if you need more information. I'll try to write
something up by the end of the week, and publish the link here.

Good luck!
iulian

>
> My current state is that I have the bsd-port repo building on OS X (with
> some patches from Michael Franz) but haven't yet tried to patch it for
> invokedynamic.
>
> Thanks,
>
> Ben
>
>
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
>
>



-- 
« Je déteste la montagne, ça cache le paysage »
Alphonse Allais



More information about the mlvm-dev mailing list