Can anyone please give me some clues as to how to build X with thread support
enabled.  I think the right way to do it is to add the relevant options to
config/cf/FreeBSD.cf, something like

#define HasPosixThreads         YES
#define ThreadedX               YES
#define ThreadsLibraries        -pthread  /* (or should it be -lc_r ? */
#define SystemMTDefines         -D_REENTRANT  /*  required ???  */
#define HasThreadSafeAPI        NO
                                ^^
---------------------------------

Here's the thing - FreeBSD doesn't seem to have thread-safe interfaces for
functions like getpwnam, getpwuid, getpwent (Solaris has getpwnam_r,
getpwuid_r, getpwent_r), hence lots of unresolved references.  Then there's
the file

     xc/include/Xos_r.h

which contains definitions of same (basically, pwd.h wrappers) for various 
platforms, but not FreeBSD (I guess at the time FreeBSD didn't have threads). 
Unfortunately, the wrappers for other platforms are no good, as FreeBSD's pwd
structures are different from everything else.

If anyone has gotten the darn thing to compile, could you please send me the
relevant patches?  Alternatively, is anyone looking into implementing the _r
API for getpwent?

Any help will be much appreciated.

Francis

____________________________________________________________________
Get your own FREE, personal Netscape WebMail account today at 
http://webmail.netscape.com.


To Unsubscribe: send mail to majord...@freebsd.org
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to