Notes on Atttempt to Port Kaffe 0.10.0 to HP-UX 10.20

John Gotts jgotts at engin.umich.edu
Tue Apr 28 03:56:24 PDT 1998


[I repost this message from John Gotts <jgotts at engin.umich.edu> since it
 bounced, Daniel]

Here are some notes on my unsuccessful quest to port Kaffe 0.10.0 to HP-UX
10.20.  Perhaps someone is willing to continue my quest?

(Please cc: all replies as I don't subscrib e to this list.)

HP-UX 10.x is unsupported in kaffe 0.10.0, but it is possible to get through
the build process.  You need to link all of the shared libraries with "-b -E"
and you need to link the kaffe binary with "-Wl,+s" to enable searching
SHLIB_PATH.  It was a simple matter to edit the relevant autoconf-generated
Makefiles:

--- libraries/clib/native/Makefile.orig	Tue Apr 28 05:18:04 1998
+++ libraries/clib/native/Makefile	Tue Apr 28 05:19:27 1998
@@ -25,7 +25,7 @@
 LN=		ln -s
 DLLTOOL=	true
 PIC=		-fpic
-LDFLAGS=	
+LDFLAGS=	-b -E
 LIBS=		-lm -lc 
 LDTAIL=		 -lm -lc 
 KVER=		0.100
--- libraries/clib/net/Makefile.orig	Tue Apr 28 05:18:09 1998
+++ libraries/clib/net/Makefile	Tue Apr 28 05:19:33 1998
@@ -25,7 +25,7 @@
 LN=		ln -s
 DLLTOOL=	true
 PIC=		-fpic
-LDFLAGS=	
+LDFLAGS=	-b -E
 LIBS=		-lm -lc 
 LDTAIL=		 
 KVER=		0.100
--- libraries/clib/zip/Makefile.orig	Tue Apr 28 05:18:13 1998
+++ libraries/clib/zip/Makefile	Tue Apr 28 05:19:40 1998
@@ -25,7 +25,7 @@
 LN=		ln -s
 DLLTOOL=	true
 PIC=		-fpic
-LDFLAGS=	
+LDFLAGS=	-b -E
 LIBS=		-lm -lc 
 LDTAIL=		 -lm -lc  
 KVER=		0.100
--- libraries/clib/math/Makefile.orig	Tue Apr 28 05:18:18 1998
+++ libraries/clib/math/Makefile	Tue Apr 28 05:19:46 1998
@@ -25,7 +25,7 @@
 LN=		ln -s
 DLLTOOL=	true
 PIC=		-fpic
-LDFLAGS=	
+LDFLAGS=	-b -E
 LIBS=		-lm -lc 
 LDTAIL=		 -lm -lc  
 KVER=		0.100
--- kaffe/kaffevm/Makefile.orig	Tue Apr 28 05:17:40 1998
+++ kaffe/kaffevm/Makefile	Tue Apr 28 05:19:19 1998
@@ -22,7 +22,7 @@
 RANLIB=		ranlib
 DLLTOOL=	true
 PIC=		-fpic
-LDFLAGS=	
+LDFLAGS=	-b -E
 LIBS=		-lm -lc 
 LDTAIL=		  -lm -lc  
 KVER=		0.100
--- kaffe/kaffe/Makefile.orig	Tue Apr 28 05:17:49 1998
+++ kaffe/kaffe/Makefile	Tue Apr 28 05:20:01 1998
@@ -19,7 +19,7 @@
 CC=		gcc
 INCLUDES=	-I. -I$(srcdir)/../kaffevm -I../../config -I$(srcdir)/../../config -I../../include -I$(srcdir)/../../include
 CFLAGS=		
-LDFLAGS=	
+LDFLAGS=	-Wl,+s
 ALL_CFLAGS=	$(CFLAGS)  $(INCLUDES) $(EXTRA_CFLAGS)
 LIBS=		-L../kaffevm -lkaffevm  -lm -lc 
 OBJEXT=		.o
 
You also need to apply the following patch:

--- kaffe-0.10.0/kaffe/kaffevm/slib.h.orig	Tue Apr 28 04:50:13 1998
+++ kaffe-0.10.0/kaffe/kaffevm/slib.h	Tue Apr 28 03:06:54 1998
@@ -70,7 +70,7 @@
 /* ------------------------------------------------------------------------ */
 
 /*
- * ??? style shared library interface.
+ * HP-UX style shared library interface.
  */
 #if defined(HAVE_SHL_LOAD)
 #if defined(HAVE_DL_H)
@@ -83,7 +83,7 @@
 	{								\
 		shl_t all_libs = 0;					\
 		if (shl_findsym(&all_libs,SYM,TYPE_PROCEDURE,&FUNC) == 0) { \
-			break;						\
+			FUNC = 0;					\
 		}							\
 	}
 #define	LIBRARYHANDLE	shl_t

...and you need to edit kaffe-0.10.0/config/parisc/threads.h, replacing ? with
1:

--- kaffe-0.10.0/config/parisc/threads.h.orig	Tue Apr 28 04:56:46 1998
+++ kaffe-0.10.0/config/parisc/threads.h	Tue Apr 28 03:23:24 1998
@@ -28,6 +28,6 @@
  * This is the offset into the setjmp buffer where the stack pointer is
  * stored.  This may be different with different OSes.
  */
-#define	SP_OFFSET		?
+#define	SP_OFFSET		1
 
 #endif

I chose this number because it's what the SPARC uses, but I have no idea if
it's correct.

Build and install the package.

Add the kaffe bin directory to your path, set your CLASSPATH and KAFFEHOME
environment variables, and instead of setting LD_LIBRARY_PATH, set SHLIB_PATH.

% ./javac
Failed to locate native function:
	java/lang/System.currentTimeMillis()J
Failed to locate native function:
	java/lang/Throwable.fillInStackTrace()Ljava/lang/Throwable;
/usr/lib/dld.sl: Unresolved symbol: sysdepCallMethod (code)  from /usr/contrib/java/kaffe/lib/libkaffevm.sl
./javac[3]: 20412 Abort(coredump)

If you feel like going any further with this, you are on your own.

John

--
John GOTTS <jgotts at engin.umich.edu> http://www-personal.engin.umich.edu/~jgotts

----- End forwarded message -----

-- 
Daniel.Veillard at w3.org | W3C  MIT/LCS  NE43-344  | Today's Bookmarks :
Tel : +1 617 253 5884  | 545 Technology Square   | Linux, WWW, rpm2html,
Fax : +1 617 258 5999  | Cambridge, MA 02139 USA | badminton, Kaffe,
http://www.w3.org/People/W3Cpeople.html#Veillard | HTTP-NG and Amaya.



More information about the kaffe mailing list