1 # SPDX-FileCopyrightText: 2020 Michael Jeanson <mjeanson@efficios.com>
3 # SPDX-License-Identifier: GPL-2.0-or-later WITH LicenseRef-Autoconf-exception-macro
7 # AE_PTHREAD_GETNAME_NP
12 AC_DEFUN([AE_PTHREAD_GETNAME_NP], [
13 AC_REQUIRE([AX_PTHREAD])
16 ae_pthread_getname_np_save_LDFLAGS="$LDFLAGS"
17 ae_pthread_getname_np_save_LIBS="$LIBS"
18 LDFLAGS="$LDFLAGS $PTHREAD_CFLAGS"
19 LIBS="$LIBS $PTHREAD_LIBS"
21 # GLIBC >= 2.12, Solaris >= 11.3, FreeBSD >= 12.2, MacOS X >= 10.6, iOS >= 3.2
22 AC_MSG_CHECKING(for pthread_getname_np(pthread_t, char*, size_t))
25 [[#include <pthread.h>
27 #include <pthread_np.h>
29 #define AE_PTHREAD_NAMELEN 16
30 char ae_pthread_name[AE_PTHREAD_NAMELEN];]],
31 [pthread_getname_np(pthread_self(), ae_pthread_name, AE_PTHREAD_NAMELEN)])],
33 AC_DEFINE(HAVE_PTHREAD_GETNAME_NP_WITH_TID,1,
34 [Have function pthread_getname_np(pthread_t, char*, size_t)])],
37 AC_MSG_CHECKING(for pthread_getname_np(char*, size_t))
40 [[#include <pthread.h>
42 #include <pthread_np.h>
44 #define AE_PTHREAD_NAMELEN 16
45 char ae_pthread_name[AE_PTHREAD_NAMELEN];]],
46 [pthread_getname_np(ae_pthread_name, AE_PTHREAD_NAMELEN)])],
48 AC_DEFINE(HAVE_PTHREAD_GETNAME_NP_WITHOUT_TID,1,
49 [Have function pthread_getname_np(char*, size_t)])],
53 AC_MSG_CHECKING(for pthread_get_name_np(pthread_t, char*, size_t))
56 [[#include <pthread.h>
58 #include <pthread_np.h>
60 #define AE_PTHREAD_NAMELEN 16
61 char ae_pthread_name[AE_PTHREAD_NAMELEN];]],
62 [pthread_get_name_np(pthread_self(), ae_pthread_name, AE_PTHREAD_NAMELEN)])],
64 AC_DEFINE(HAVE_PTHREAD_GET_NAME_NP_WITH_TID,1,
65 [Have function pthread_get_name_np(pthread_t, char*, size_t)])],
68 LDFLAGS=$ae_pthread_getname_np_save_LDFLAGS
69 LIBS=$ae_pthread_getname_np_save_LIBS
72 ])dnl AE_PTHREAD_GETNAME_NP