diff --git a/kitty/threading.h b/kitty/threading.h index 6aa518c37..5ac6d9b57 100644 --- a/kitty/threading.h +++ b/kitty/threading.h @@ -12,17 +12,25 @@ // I cant figure out how to get pthread.h to include this definition on macOS. MACOSX_DEPLOYMENT_TARGET does not work. extern int pthread_setname_np(const char *name); #else +#ifdef __FreeBSD__ +void pthread_set_name_np(pthread_t tid, const char *name); +#else // Need _GNU_SOURCE for pthread_setname_np on linux and that causes other issues on systems with old glibc extern int pthread_setname_np(pthread_t, const char *name); #endif +#endif static inline void set_thread_name(const char *name) { int ret = 0; #ifdef __APPLE__ - ret = pthread_setname_np(name); + ret = pthreadset_name_np(name); +#else +#ifdef __FreeBSD__ + pthread_set_name_np(pthread_self(), name); #else ret = pthread_setname_np(pthread_self(), name); +#endif #endif if (ret != 0) perror("Failed to set thread name"); }