added CACAO to IcedTea's build system
Christian Thalinger
twisti at complang.tuwien.ac.at
Sun Jun 29 14:31:43 PDT 2008
On Sun, 2008-06-29 at 21:47 +0200, Mark Wielaard wrote:
> Hi Christian,
>
> On Thu, 2008-06-26 at 15:19 +0200, Christian Thalinger wrote:
> > I finally integrated building CACAO to the IcedTea build system. So,
> > when you're now using --with-cacao, it downloads the latest release
> > (0.99.1), builds it and the resulting libjvm.so is then used via
> > ALT_HOTSPOT_IMPORT_PATH.
>
> Awesome! This is really big!
>
> You forgot to add the ChangeLog entry to the ChangeLog file. I have
> added it for you:
Yes, sorry. Thanks a lot for fixing this.
> I also added two dependencies. The icedtea-ecj target, which you use for
> a completely clean bootstrap, needs cacao already build. cacao itself
> needs the rt-classes available before it is build.
Right. I've only tested a --with-icedtea build.
> Finally on some GNU/Linux systems you will get:
> LOG: [0xb80586c0] system_mmap_anonymous: mmap failed: Permission denied
> somewhere in the middle of the build when the cacao is actually used for
> the first time in the bootstrap build.
>
> This seems to be caused by cacao trying to mmap a page at address zero.
> Something that isn't allowed on some systems. A workaround is to do as
> root: echo 0 > /proc/sys/vm/mmap_min_addr
> Then things do work, but it would be nice if cacao didn't do this on
> systems that don't allow it.
>
> It seems you do this to catch null pointer dereferences. But on systems
> that don't allow mmapping on address zero in the first place, you will
> get a segv always anyway for such accesses.
I wonder why systems changed to disallow to mmap a page at zero. We
could ignore the error but I'm very sure there will be somewhere a
strange system where the system call fails but the page is readable...
> P.S. Anybody know how we can now finally get rid of that extra
> branch/head in the mercurial tree called cacao-b19. If we only have one
> head then things like the fetch extension would work out of the box.
Getting rid of branches in Mercurial is something I would also need.
But I haven't found a good solution yet. The bad solution is cloning
only the default branch of the repository. But I'm not exactly sure
what else is missing then.
- twisti
More information about the distro-pkg-dev
mailing list