On 3 February 2015 at 02:53, Emil Velikov <emil.l.veli...@gmail.com> wrote: > Hi Felix, > > On 2 February 2015 at 19:04, Felix Janda <felix.ja...@posteo.de> wrote: >> Previously PTHREAD_MUTEX_RECURSIVE_NP had been used on linux for >> compatibility with old glibc. Since mesa defines __GNU_SOURCE__ >> on linux PTHREAD_MUTEX_RECURSIVE is also available since at least >> 1998. So we can unconditionally use the portable version >> PTHREAD_MUTEX_RECURSIVE. >> --- >> Previous patch didn't work as intended since on glibc these are >> part of an enum and not defines. >> > From a quick look at {e,}glibc sources [1] > > PTHREAD_MUTEX_RECURSIVE_NP, > ... > #if defined __USE_UNIX98 || defined __USE_XOPEN2K8 > ... > PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP, > ... > > Which does not seem to have relation with _GNU_SOURCE_ as the commit > mentions. Note I don't even pretend to know the convoluted web of > macros, so I could be a bit off :-) > Upon closer look things could be fine, as
linux/gnu: _GNU_SOURCE sets _POSIX_C_SOURCE 200809L. With the latter of which guarding the __USE_XOPEN2K8 definition. cygwin: (hmm does it even set __linux*) we set _XOPEN_SOURCE=700. Which is the guard for __USE_XOPEN2K8. If one wants to be extra careful we can change #if defined(__linux__) || defined(__linux) to check for the said old versions of glibc, but I believe we should be safe. Would anyone else have comments on this patch ? Cheers, Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev