fix freebsd build for real

pull/695/head
Jeff Becker 5 years ago
parent b207990d01
commit ebab9b8905
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

2
.gitignore vendored

@ -29,6 +29,8 @@ callgrind.*
shadow.data
shadow.config.xml
*.log
*.pdf
*.xz
testnet_tmp

@ -4,7 +4,7 @@
#ifdef POSIX
#include <pthread.h>
#ifdef __FreeBSD__
#if defined(__FreeBSD__)
#include <pthread_np.h>
#endif
#endif
@ -17,18 +17,23 @@ namespace llarp
SetThreadName(const std::string& name)
{
#ifdef POSIX
#ifdef __MACH__
const int rc = pthread_setname_np(name.c_str());
#elif defined(__FreeBSD__)
const int rc = pthread_setname_np(pthread_self(), name.c_str(), nullptr);
#if defined(__FreeBSD__)
/* on free bsd this function has void return type */
pthread_set_name_np(pthread_self(), name.c_str();
#else
#if defined(__MACH__)
const int rc = pthread_setname_np(name.c_str());
#elif defined(__linux__)
const int rc = pthread_setname_np(pthread_self(), name.c_str());
#else
#error "unsupported platform"
#endif
if(rc)
{
LogError("Failed to set thread name to ", name, " errno = ", rc,
" errstr = ", strerror(rc));
}
#endif
#else
LogInfo("Thread name setting not supported on this platform");
(void)name;

Loading…
Cancel
Save