Cacao support for OpenJDK7
David Flamme
dflamme at complang.tuwien.ac.at
Thu Feb 9 07:07:28 PST 2012
Hello Xerxes,
I missed some changes for the M4 macros to look in the right pathes, but
this changeset should fix it:
http://www.complang.tuwien.ac.at/hg/cacao/rev/a567bcb7f589
cheers
david
> 2012-01-26 10:12, Xerxes Rånby skrev:
>> 2012-01-25 17:03, David Flamme skrev:
>>> Hello,
>>>
>>> I managed to compile and run cacao against OpenJDK7 on x86_64 at least on a "Hello World" level. Now I have some questions and want to point out what needs to be done in icedtea to compile the whole thing out of the box with cacao.
>>>
>>> First of all, the cacao branch of what I did so far can be found here: http://mips.complang.tuwien.ac.at/hg/cacao/rev/30edcde287d9
>>> The biggest problem on the side of icedtea7 is, that you check not only the existence of libjsig.so, you also check if its not fake by using nm. What I do is copying a working version from my openjdk installation to the expected location, so the build won't complain but actually I have no clue whats going on there. JamVM probably has the same problem, so I mostly hope for a good suggestion from your side, what should be done here.
>> I managed to work around this issue by creating a symbolic-link from libjsig.so to the jamvm libjvm.so
>> As can be seen in this changeset: http://icedtea.classpath.org/hg/icedtea7/rev/61e88e07618c
>> I will try do the same for cacao.
>>
>>> It would be great if somebody could test the changeset or at least give me some hints.
> Hi David!
> I have included a patch that updates icedtea7 to use your new CACAO change-set.
>
> When I try to build it then CACAO try to locate jni_md.h and jni.h in the non existing icedtea7-cacao-build/openjdk/include directory.
> Any idea how to fix this, do I need to pass some new additional CACAO configure option?
>
> ...
> checking where Java runtime library is installed... /home/xranby/icedtea7-cacao-build/openjdk
> checking where Java runtime library classes are installed... /home/xranby/icedtea7-cacao-build/bootstrap/jdk1.6.0/jre/lib/rt.jar
> checking where Java core library classes are located at compile time... /home/xranby/icedtea7-cacao-build/bootstrap/jdk1.6.0/jre/lib/rt.jar
> checking where jni_md.h is installed... /home/xranby/icedtea7-cacao-build/openjdk/include
> checking /home/xranby/icedtea7-cacao-build/openjdk/include/jni_md.h usability... no
> checking /home/xranby/icedtea7-cacao-build/openjdk/include/jni_md.h presence... no
> checking for /home/xranby/icedtea7-cacao-build/openjdk/include/jni_md.h... no
> configure: error: cannot find jni_md.h
> make[1]: Entering directory `/home/xranby/icedtea7-cacao-build/cacao/cacao-30edcde287d9'
> make[1]: *** No rule to make target `install'. Stop.
> make[1]: Leaving directory `/home/xranby/icedtea7-cacao-build/cacao/cacao-30edcde287d9'
> make: *** [stamps/cacao.stamp] Error 2
>
>
> Cheers
> Xerxes
>
> 2012-02-07 Xerxes Rånby<xerxes at zafena.se>
>
> * Makefile.am
> (CACAO_VERSION): Updated CACAO to 2012-01-25 revision.
> (CACAO_SHA256SUM): Updated.
> (stamps/cacao.stamp): Use --with-java-runtime-library=openjdk7.
> Add -f when creating client and server symlinks to handle repeat builds.
> Link the fake libjsig.so to CACAO libjvm.so, and touch fake Xusage.txt
> to work with latest OpenJDK ALT_HOTSPOT_IMPORT_PATH functionality.
> * patches/cacao/version.patch: Removed, replaced by upstream CACAO changeset 30edcde287d9.
>
> diff -r 95c4bc033606 Makefile.am
> --- a/Makefile.am Thu Oct 27 15:57:25 2011 -0400
> +++ b/Makefile.am Tue Feb 07 12:02:15 2012 +0100
> @@ -18,8 +18,8 @@
> LANGTOOLS_SHA256SUM = 03a256afc7371b3b0fbbbfd80a318e22984f6cbff26082948e8d5845ba193aee
> OPENJDK_SHA256SUM = aa3b3cf17081cde2a4014e5dffec75f5b5402ad48f7f9943c32a2fa4544a8746
>
> -CACAO_VERSION = 4549072ab2de
> -CACAO_SHA256SUM = ec097ce96f047abbaeab4faab752c121d29f08bdeae358038a0b7cde03361d07
> +CACAO_VERSION = 30edcde287d9
> +CACAO_SHA256SUM = 873a6c0035504155d50e8174c08c8139d25157e90811079c40405c2d9336316d
> CACAO_BASE_URL = http://icedtea.classpath.org/download/drops/cacao
> CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.gz
> CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.gz
> @@ -245,7 +245,6 @@
> if BUILD_CACAO
> ICEDTEA_PATCHES += \
> patches/cacao/launcher.patch \
> - patches/cacao/version.patch \
> patches/cacao/jsig.patch \
> patches/cacao/memory.patch
> endif
> @@ -1992,12 +1991,14 @@
> --build=$(build_alias) \
> --target=$(target_alias) \
> --prefix=$(abs_top_builddir)/cacao/install \
> - --with-java-runtime-library=openjdk \
> + --with-java-runtime-library=openjdk7 \
> --with-java-runtime-library-prefix=$(abs_top_builddir)/openjdk \
> --with-java-runtime-library-classes=$(RUNTIME) \
> --enable-jre-layout $(CACAO_CONFIGURE_ARGS); \
> $(ARCH_PREFIX) $(MAKE) -j$(PARALLEL_JOBS) install
> - ln -s server $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/client
> + ln -sf server $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/client
> + touch $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt
> + ln -sf client/libjvm.so $(abs_top_builddir)/cacao/install/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so
> endif
> endif
> mkdir -p stamps
>
>
More information about the distro-pkg-dev
mailing list