Hello,

I'm currently trying to add a recent kaffe with Qt Backend to the OpenEmbedded 
package database (www.openembedded.org).

The current CVS version got a problem with ARM lacking behind the JIT changes 
and it is generally not cross compileable. I'm not using 1.0.x and not 1.1.x 
as they do not succesfully compile either (not even for x86).

ARM and Jit:
--- kaffe/config/arm/jit-arm.def~fix-compile.patch
+++ kaffe/config/arm/jit-arm.def
@@ -655,7 +655,7 @@
 
 define_insn(epilogue, epilogue_xxx)
 {
-       setEpilogueLabel ((uintp)CODEPC);
+       KaffeJIT_setEpilogueLabel ((uintp)CODEPC);

--- kaffe/config/arm/jit3-arm.def~fix-compile.patch
+++ kaffe/config/arm/jit3-arm.def
@@ -684,7 +684,7 @@
 
 define_insn(epilogue, epilogue_xxx)
 {
-       setEpilogueLabel ((uintp)CODEPC);
+       KaffeJIT3_setEpilogueLabel ((uintp)CODEPC);
 
        /* Should restore floating point state here !!! F4-F7 */
 

are needed to actually compile kaffe-bin.

And now onto the issues with Cross Compilation:
1.) a native kaffeh build is needed
2.) various tests as ALIGNMENTOF_VOIDP fail as they try to run
     these test. This CAN'T work when cross compiling. I would wish
     for to specify these values on the configure cmd line. I'm an idiot
     on autotools so no patch is attached to fix that.
3.) after kaffe was sucesfully compiled, it tries to run kaffe-bin
     to optimize the .jar files. (This is where I'm now at). The question
     is what kind of optimisation is performed and if it couldn't be done
     when building kaffeh natively.

I would be glad for any hints to cross compile them.

kind regards holger


-- 
_____________________________________________
Holger 'zecke' Freyther
Project OPIE- the Open Palmtop Integrated Environment
http://opie.handhelds.org 
Sponsor me! Donate Hardware!
http://handhelds.org/~zecke
#
# Patch managed by http://www.holgerschurig.de/patcher.html
#

--- kaffe/configure.ac~fix-compile.patch
+++ kaffe/configure.ac
@@ -824,15 +824,7 @@
 dnl =========================================================================
 dnl Checks for alignments
 dnl -------------------------------------------------------------------------
-
-AC_CACHE_CHECK(alignment of void*, ac_cv_alignmentof_voidp,
-AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
-main() { struct { char c; void *p; } t; FILE *f;
-  if ((char*) &t.c != (char*) &t)  exit (1);
-  f=fopen ("conftestdata", "w");
-  if (! f)                         exit (1);
-  fprintf (f, "%d", ((char*) &t.p)-((char*) &t));
-  fclose(f); exit (0); }]])],[ac_cv_alignmentof_voidp=`cat conftestdata`],[AC_MSG_ERROR(Unexpected result)],[ac_cv_alignmentof_voidp=$ac_cv_sizeof_voidp]))
+ac_cv_alignmentof_voidp=4
 AC_DEFINE_UNQUOTED(ALIGNMENTOF_VOIDP,$ac_cv_alignmentof_voidp, [How are pointers aligned])
 
 dnl -------------------------------------------------------------------------
--- kaffe/config/arm/jit-arm.def~fix-compile.patch
+++ kaffe/config/arm/jit-arm.def
@@ -655,7 +655,7 @@
 
 define_insn(epilogue, epilogue_xxx)
 {
-	setEpilogueLabel ((uintp)CODEPC);
+	KaffeJIT_setEpilogueLabel ((uintp)CODEPC);
 
 	/* Should restore floating point state here !!! F4-F7 */
 
--- kaffe/config/arm/jit3-arm.def~fix-compile.patch
+++ kaffe/config/arm/jit3-arm.def
@@ -684,7 +684,7 @@
 
 define_insn(epilogue, epilogue_xxx)
 {
-	setEpilogueLabel ((uintp)CODEPC);
+	KaffeJIT3_setEpilogueLabel ((uintp)CODEPC);
 
 	/* Should restore floating point state here !!! F4-F7 */
 
#
# Patch managed by http://www.holgerschurig.de/patcher.html
#

--- kaffe/kaffe/kaffevm/boehm-gc/boehm/Makefile.am~makefile-fixes.patch
+++ kaffe/kaffe/kaffevm/boehm-gc/boehm/Makefile.am
@@ -25,17 +25,9 @@
 EXTRA_DIST = 
     ## more items will be succesively added below
 
-if CPLUSPLUS
 extra = libgccpp.la
-else
-extra = 
-endif
 
-if GC_CONVENIENCE
-noinst_LTLIBRARIES = libgc.la $(extra) 
-else
 lib_LTLIBRARIES = libgc.la $(extra) 
-endif
 
 include_HEADERS = include/gc.h include/gc_local_alloc.h \
 include/gc_pthread_redirects.h include/gc_config_macros.h \

Attachment: pgptiBlIwMCsF.pgp
Description: PGP signature

_______________________________________________
kaffe mailing list
kaffe@kaffe.org
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe

Reply via email to