On 06/14/2014 06:08 PM, Paul Eggert wrote: > I looked into this some more, and found some problems: > > * On Solaris we also need to define _POSIX_PTHREAD_SEMANTICS to prefer POSIX > to pre-POSIX semantics for a few functions; see > <http://docs.oracle.com/cd/E19683-01/806-6867/compile-fig-5/index.html>. The > extensions module does this, so a simple fix is to depend on the extensions > module. Almost everybody uses extensions anyway so I don't view this as > being a big issue. (Maybe threadlib should also depend on extensions, > instead its calls to AC_USE_SYSTEM_EXTENSIONS and AC_GNU_SOURCE?) > > * The patch uses $host_os so it should AC_REQUIRE([AC_CANONICAL_HOST]). But > why bother? AC_CANONICAL_HOST is expensive and not every project needs it. > Instead, just define the symbols on all platforms; that's what 'extensions' > does. > > * This new behavior should be done in gl_EARLY, as _REENTRANT and > _THREAD_SAFE affect the visibility of many other symbols. > > So, how about the attached patch instead? (I haven't tested it.)
Looks good thanks, though it would be worth mentioning in the commit why extensions is used. thanks, Pádraig.