This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Current build failure when libgcj is enabled on i386-unknown-freebsd4.2


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 ]


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]