This is the mail archive of the
java-discuss@sourceware.cygnus.com
mailing list for the Java project.
[Patch libgcj] FreeBSD-current (ELF)
- To: java-discuss@sourceware.cygnus.com
- Subject: [Patch libgcj] FreeBSD-current (ELF)
- From: Carlo Dapor <carlo@vis.ethz.ch>
- Date: Thu, 20 May 1999 17:36:09 +0200 (CEST)
I was able to build egcs-current as of May 17th.
So I went ahead to build libgcj as of May 17th, too.
Everything went well, except for jv-convert(?).
Some unknown reference to _GC_push_one was the problem in libgcjgc.so(?).
The problem lies in how FreeBSD-current (ELF) is is dealt with building
boehm-gc/mach_dep.o.
The following patch 'updates' got rid of the build problem.
Please include it in the next release.
Thanks !
Ciao, derweil,
--
Carlo
*** mach_dep.c.orig Wed Apr 7 16:56:05 1999
--- mach_dep.c Thu May 20 17:20:56 1999
*************** void GC_push_regs()
*** 170,176 ****
# if defined(I386) &&!defined(OS2) &&!defined(SVR4) &&!defined(MSWIN32) \
&& !defined(SCO) && !defined(SCO_ELF) && !(defined(LINUX) \
! && defined(__ELF__)) && !defined(DOS4GW)
/* I386 code, generic code does not appear to work */
/* It does appear to work under OS2, and asms dont */
/* This is used for some 38g UNIX variants and for CYGWIN32 */
--- 170,176 ----
# if defined(I386) &&!defined(OS2) &&!defined(SVR4) &&!defined(MSWIN32) \
&& !defined(SCO) && !defined(SCO_ELF) && !(defined(LINUX) \
! && defined(__ELF__)) && !defined(DOS4GW) && !defined(FREEBSD)
/* I386 code, generic code does not appear to work */
/* It does appear to work under OS2, and asms dont */
/* This is used for some 38g UNIX variants and for CYGWIN32 */
*************** void GC_push_regs()
*** 183,190 ****
asm("pushl %ebx"); asm("call _GC_push_one"); asm("addl $4,%esp");
# endif
! # if defined(I386) && defined(LINUX) && defined(__ELF__)
! /* This is modified for Linux with ELF (Note: _ELF_ only) */
asm("pushl %eax"); asm("call GC_push_one"); asm("addl $4,%esp");
asm("pushl %ecx"); asm("call GC_push_one"); asm("addl $4,%esp");
asm("pushl %edx"); asm("call GC_push_one"); asm("addl $4,%esp");
--- 183,190 ----
asm("pushl %ebx"); asm("call _GC_push_one"); asm("addl $4,%esp");
# endif
! # if defined(I386) && (defined(LINUX) || defined(FREEBSD)) && defined(__ELF__)
! /* This is modified for Linux/FreeBSD with ELF (Note: _ELF_ only) */
asm("pushl %eax"); asm("call GC_push_one"); asm("addl $4,%esp");
asm("pushl %ecx"); asm("call GC_push_one"); asm("addl $4,%esp");
asm("pushl %edx"); asm("call GC_push_one"); asm("addl $4,%esp");