diff options
| author | Jörg Frings-Fürst <debian@jff.email> | 2018-03-07 05:31:03 +0100 | 
|---|---|---|
| committer | Jörg Frings-Fürst <debian@jff.email> | 2018-03-07 05:31:03 +0100 | 
| commit | f7c3580478601e3a77dc864e5a1d91c1edad5187 (patch) | |
| tree | 26f2b85233e76ce30cbd013559944404e66a6552 /lib/glthread/lock.h | |
| parent | 44a3eaeba04ef78835ca741592c376428ada5f71 (diff) | |
New upstream version 0.9.9upstream/0.9.9
Diffstat (limited to 'lib/glthread/lock.h')
| -rw-r--r-- | lib/glthread/lock.h | 16 | 
1 files changed, 13 insertions, 3 deletions
| diff --git a/lib/glthread/lock.h b/lib/glthread/lock.h index 06285558..ffb2b0e5 100644 --- a/lib/glthread/lock.h +++ b/lib/glthread/lock.h @@ -1,5 +1,5 @@  /* Locking in multithreaded situations. -   Copyright (C) 2005-2017 Free Software Foundation, Inc. +   Copyright (C) 2005-2018 Free Software Foundation, Inc.     This program is free software: you can redistribute it and/or     modify it under the terms of either: @@ -158,8 +158,18 @@ extern int glthread_in_use (void);  #  endif  #  if !PTHREAD_IN_USE_DETECTION_HARD -#   pragma weak pthread_cancel -#   define pthread_in_use() (pthread_cancel != NULL) +    /* On most platforms, pthread_cancel or pthread_kill can be used to +       determine whether libpthread is in use. +       On newer versions of FreeBSD, however, this is no longer possible, +       because pthread_cancel and pthread_kill got added to libc.  Therefore +       use pthread_create to test whether libpthread is in use.  */ +#   if defined __FreeBSD__ || defined __DragonFly__ /* FreeBSD */ +#    pragma weak pthread_create +#    define pthread_in_use() (pthread_create != NULL) +#   else /* glibc, NetBSD, OpenBSD, IRIX, OSF/1, Solaris */ +#    pragma weak pthread_cancel +#    define pthread_in_use() (pthread_cancel != NULL) +#   endif  #  endif  # else | 
