]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-125434: Fix building on OpenBSD (GH-132393)
authorSerhiy Storchaka <storchaka@gmail.com>
Sat, 12 Apr 2025 08:25:35 +0000 (11:25 +0300)
committerGitHub <noreply@github.com>
Sat, 12 Apr 2025 08:25:35 +0000 (11:25 +0300)
pthread_get_name_np is defined in pthread_np.h.

Python/traceback.c

index 6a6a3c29859fbca132609bd8c7eea9048f210861..d30ba586cfcca41b23a28e06aa3cc062a6e615be 100644 (file)
@@ -1039,6 +1039,17 @@ _Py_DumpTraceback(int fd, PyThreadState *tstate)
     dump_traceback(fd, tstate, 1);
 }
 
+#if defined(HAVE_PTHREAD_GETNAME_NP) || defined(HAVE_PTHREAD_GET_NAME_NP)
+# if defined(__OpenBSD__)
+    /* pthread_*_np functions, especially pthread_{get,set}_name_np().
+       pthread_np.h exists on both OpenBSD and FreeBSD but the latter declares
+       pthread_getname_np() and pthread_setname_np() in pthread.h as long as
+       __BSD_VISIBLE remains set.
+     */
+#   include <pthread_np.h>
+# endif
+#endif
+
 /* Write the thread identifier into the file 'fd': "Current thread 0xHHHH:\" if
    is_current is true, "Thread 0xHHHH:\n" otherwise.