Build hotspot only in IcedTea after a complete build.

Nagy Mostafa nagy.mostafa at gmail.com
Fri Aug 21 10:06:15 PDT 2009


Thanks Gary and all. Quite nice to wake up (California time here) to
numerous useful replies.

I am actually using the mercurial version of hotspot, so the zero patch is
integrated. That's how, I assume, ./configure --enable-zero works.

Another question though, is there a similar way to build a debug version ?
I use the following to build IcedTea with fulldebug:

./configure; make icedtea-against-ecj SKIP_DEBUG_BUILD=false
SKIP_FASTDEBUG_BUILD=true DEBUG_NAME=fulldebug;

when I run "make hotspot SKIP_DEBUG_BUILD=false SKIP_FASTDEBUG_BUILD=true
DEBUG_NAME=fulldebug;" afterwards, the flags are ignored and the (-DPRODUCT)
flag is used instead. Anyway of doing incremental build while keeping the
debug flags on ?

I hope I am not asking for too much :)
thanks,
- nagy



On Fri, Aug 21, 2009 at 6:00 AM, Gary Benson <gbenson at redhat.com> wrote:

> Nagy Mostafa wrote:
> > I am having trouble compiling hotspot only in IcedTea6. I build
> > IcedTea with Zero as follows:
> >
> > ./configure --enable-zero; make;
> >
>
> > Now, I want to modify the bytecode interpreter.  What is the
> > simplest way to compile hotspot only without compiling all of
> > IcedTea.  I tried "make hotspot", but sometimes it doesn't detect
> > my code changes and even worse the build breaks occasionally.
>
> IcedTea has a two stage build when you configure it that way.  The
> first stage is a bootstrap: it builds OpenJDK using GCJ and ECJ.
> The bootstrapped OpenJDK lives in "openjdk-ecj".  The second stage
> builds OpenJDK with the bootstrapped OpenJDK.  This final OpenJDK
> lives in "openjdk".
>
> The "make hotspot" rule in IcedTea rebuilds the HotSpot in the
> bootstrap VM in "openjdk-ecj".  So, to use "make hotspot" you
> need to do an initial build like this:
>
>  ./configure --enable-zero
>  make icedtea-against-ecj
>
> This will build the bootstrap VM only.  Now you can edit the code
> in "openjdk-ecj" and rebuild like this:
>
>  make hotspot
>
> > Also, how can you do a "make clean" for hotspot only.
>
> The easiest way is this:
>
>  rm -Rf openjdk-ecj/build/*/hotspot
>
> ...and then do "make hotspot" again.
>
> Cheers,
> Gary
>
> --
> http://gbenson.net/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20090821/ffa88034/attachment.html 


More information about the hotspot-dev mailing list