kaffe-0.10.0 on SunOS 4
Kiyo Inaba
inaba at src.ricoh.co.jp
Thu May 14 19:21:33 PDT 1998
Finally, I can make kaffe-0.10.0 work on Sparc/SunOS4. Detailed
working configuration is,
CPU: Sparc
OS: SunOS 4.1.4
CC: gcc 2.7.0
Make: gmake 3.62
Following patches will correct,
1) wrong SP offset in SunOS4
2) missing prototype definitions
3) += directive use in COMMON definition
it does not work in gmake 3.62.
I've tested this with jit/intrp with dynamic lib, and now trying
to fix problem for static lib. Because my final target is to use
kaffe on Mips/BSD and m68k/SunOS4...
Kiyo
diff -cr kaffe-0.10.0/config/sparc/sunos4/md.h kaffe-0.10.0-release/config/sparc/sunos4/md.h
*** kaffe-0.10.0/config/sparc/sunos4/md.h Tue Mar 31 03:59:50 1998
--- kaffe-0.10.0-release/config/sparc/sunos4/md.h Fri May 15 02:24:50 1998
***************
*** 15,22 ****
--- 15,49 ----
#include "sparc/common.h"
#include "sparc/threads.h"
+ /*
+ * Redefine stack pointer offset.
+ */
+ #undef SP_OFFSET
+ #define SP_OFFSET 2
+
#if defined(TRANSLATOR)
#include "jit-md.h"
#endif
+
+ /*
+ * <sjg> SunOS does not have prototypes which we need...
+ */
+ #ifndef __P
+ #if defined(__STDC__) || defined(__cplusplus)
+ #define __P(p) p
+ #else
+ #define __P(p) ()
+ #endif
+ #endif
+
+ int rename __P((char *, char *));
+ int remove __P((char *));
+ int sendto __P((int, char *, int, int, struct sockaddr *, int));
+ int socket __P((int, int, int));
+ int setsockopt __P((int, int, int, char *, int *));
+ int getsockopt __P((int, int, int, char *, int));
+ int getsockname __P((int, struct sockaddr *, int *));
+ int getpeername __P((int, struct sockaddr *, int *));
+ int select __P((int, fd_set *, fd_set *, fd_set *, struct timeval *));
#endif
diff -cr kaffe-0.10.0/kaffe/kaffevm/Makefile.in kaffe-0.10.0-release/kaffe/kaffevm/Makefile.in
*** kaffe-0.10.0/kaffe/kaffevm/Makefile.in Tue Mar 31 03:59:52 1998
--- kaffe-0.10.0-release/kaffe/kaffevm/Makefile.in Fri May 15 01:48:15 1998
***************
*** 66,72 ****
#
# Use internal threads
#
! COMMON+= internal$(OBJEXT) \
internalCalls$(OBJEXT)
--- 66,72 ----
#
# Use internal threads
#
! THREAD= internal$(OBJEXT) \
internalCalls$(OBJEXT)
***************
*** 76,82 ****
@cpu_frag@
@cpu_os_frag@
! OBJECT= $(COMMON) $(ENGINE_OBJECTS) $(CPU_OBJECTS) $(CPUOS_OBJECTS)
mkkaffevm: $(LLIB)
--- 76,82 ----
@cpu_frag@
@cpu_os_frag@
! OBJECT= $(COMMON) $(THREAD) $(ENGINE_OBJECTS) $(CPU_OBJECTS) $(CPUOS_OBJECTS)
mkkaffevm: $(LLIB)
More information about the kaffe
mailing list