25-Apr-99 14:38 you wrote:

> In article <19990425120742.A5476@epsilon> you wrote:

>> I think we should by default define _REENTRANT or _THREAD_SAFE or any
>> other system-dependent macros that are needed to get a library that
>> can be used in multi-threaded programs.  (This means, for example,
>> that errno is not a variable, but a macro of the form
>> (*__errno_location()), which uses a thread-local errno location --
>> &errno for the main thread, something different for the other ones).
>> At least when the library is installed to standard locations, it
>> probably can lead to very confusing results if it all depends on
>> whether one used "./config -D_REENTRANT" before compiling and
>> installing the library.

> But doesn't -D_REENTRANT or -D_THREAD_SAFE usually also implicitly assumes
> that one _links_ against the reentrant libc and this way doing only half the
> way could cause problems?

AFAIK it's system-dependant :-(( In glibc 2.x it's safe: "plain" libc.so.6 has
dummy __errno_location() and all needed functions to make programs with
-D_REENTRANT linkable and workable... XFree86 libraries in most modern
Linux distributions compiled this way AFAIK...



______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to