From: Willy Tarreau Date: Wed, 2 Sep 2020 07:53:47 +0000 (+0200) Subject: BUILD: thread: limit the libgcc_s workaround to glibc only X-Git-Tag: v2.3-dev4~33 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=06a1806083dd9f0d21e045baad4c61559211f956;p=thirdparty%2Fhaproxy.git BUILD: thread: limit the libgcc_s workaround to glibc only Previous commit 77b98220e ("BUG/MINOR: threads: work around a libgcc_s issue with chrooting") broke the build on cygwin. I didn't even know we supported threads on cygwin. But the point is that it's actually the glibc-based libpthread which requires libgcc_s, so in absence of other reports we should not apply the workaround on other libraries. This should be backported along with the aforementioned patch. --- diff --git a/src/thread.c b/src/thread.c index b902aa38ca..5eb68e33ad 100644 --- a/src/thread.c +++ b/src/thread.c @@ -201,7 +201,7 @@ static void __thread_init(void) exit(1); } -#if defined(__GNUC__) && (__GNUC__ >= 3) && !defined(__clang__) +#if defined(__GNUC__) && (__GNUC__ >= 3) && defined(__GNU_LIBRARY__) && !defined(__clang__) /* make sure libgcc_s is already loaded, because pthread_exit() may * may need it on exit after the chroot! _Unwind_Find_FDE() is defined * there since gcc 3.0, has no side effect, doesn't take any argument