This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Current build failure when libgcj is enabled on i386-unknown-freebsd4.2
- To: rittle at rsch dot comm dot mot dot com
- Subject: Re: Current build failure when libgcj is enabled on i386-unknown-freebsd4.2
- From: Bryce McKinlay <bryce at waitaki dot otago dot ac dot nz>
- Date: Wed, 25 Apr 2001 18:14:49 +1200
- Cc: java at gcc dot gnu dot org
On Wednesday, April 25, 2001, at 02:55 PM, Loren James Rittle wrote:
> OK, the obvious problem is that boehm-gc assumes that libpthread
> exists on the system. It does not on this system. Other parts of the
> gcc build machinery on this platform (i.e. libgcc and libstdc++-v3,
> before it no longer referenced the thread library directly) use
> -pthread (which is the correct way to do it on this platform) to find
> all libraries needed to support POSIX threads.
This can be set on a per-platform basis in boehm-gc/configure.in and
libjava/configure.in by explicitly setting the THREADLIBS flag. Maybe
Alex Oliva's threads configuration patch can be extended to provide a
THREADLIBS flag globally?
> Unfortunately, there is a deeper issue not immediately visible.
> During the configuration of boehm-gc, it doesn't detect the mismatch
> between the configuration requested and the fact that there is no code
> path for generic POSIX threads. It appears that this version of
> boehm-gc only supports POSIX threads on some platforms even though
> additional platforms support the required POSIX pthread_* API.
It is my understanding that in later versions of the collector,
linux-threads.c actually does implement more-or-less generic POSIX
threads, and it is intended that most POSIX platforms will eventually be
supported by that file. The best model, IMO, is to have the generic
parts in there with separate per-platform sysdeps files to provide
things like high-performance locks.
regards
[ bryce ]