From 3b091995a03f431cc8c14e2e4488af6f66191621 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 11 Jan 2015 02:23:02 +0100 Subject: win32: drop hacks for possibly broken static pthreads-win32 linking We now use threads and other pthread API a lot, and not always we use it from threads created with pthread_create() (or the main thread). As I understand, with static linking we would have to use pthread_win32_thread_attach/detach_np() every time we enter or leave a foreign thread. We don't do this, and it's not feasible either, so it's just broken. This still should work with dynamic pthreads-win32. The MinGW pthread implementation should be unaffected from all of this. --- waftools/checks/custom.py | 1 - waftools/fragments/pthreads.c | 4 ---- 2 files changed, 5 deletions(-) (limited to 'waftools') diff --git a/waftools/checks/custom.py b/waftools/checks/custom.py index fb45d8697c..97bcf9cc5c 100644 --- a/waftools/checks/custom.py +++ b/waftools/checks/custom.py @@ -33,7 +33,6 @@ def check_pthreads(ctx, dependency_identifier): 'freebsd': '-D_THREAD_SAFE', 'netbsd': '-D_THREAD_SAFE', 'openbsd': '-D_THREAD_SAFE', - 'win32': '-DPTW32_STATIC_LIB', }.get(ctx.env.DEST_OS, '') libs = ['pthreadGC2', 'pthread'] checkfn = check_cc(fragment=pthreads_program, cflags=platform_cflags) diff --git a/waftools/fragments/pthreads.c b/waftools/fragments/pthreads.c index 6702f36f97..84f3d087fb 100644 --- a/waftools/fragments/pthreads.c +++ b/waftools/fragments/pthreads.c @@ -2,9 +2,5 @@ static void *func(void *arg) { return arg; } int main(void) { pthread_t tid; -#ifdef PTW32_STATIC_LIB - pthread_win32_process_attach_np(); - pthread_win32_thread_attach_np(); -#endif return pthread_create (&tid, 0, func, 0) != 0; } -- cgit v1.2.3