From 44b206a3fa1c3b16041ee77ace409b20ac64664b Mon Sep 17 00:00:00 2001 From: Fabio Alessandrelli Date: Thu, 1 Mar 2018 01:25:16 +0100 Subject: [PATCH] Fix server build on FreeBSD (cherry picked from commit 8f9914bd94fced7f60dff40e14fe734203d7c5d4) --- platform/server/detect.py | 8 +++++++- platform/server/platform_config.h | 6 ++++++ platform/x11/crash_handler_x11.cpp | 3 ++- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/platform/server/detect.py b/platform/server/detect.py index f550cca22a1..77193e592ba 100644 --- a/platform/server/detect.py +++ b/platform/server/detect.py @@ -1,4 +1,5 @@ import os +import platform import sys @@ -135,7 +136,12 @@ def configure(env): env.Append(CPPPATH=['#platform/server']) env.Append(CPPFLAGS=['-DSERVER_ENABLED', '-DUNIX_ENABLED']) env.Append(LIBS=['pthread']) - env.Append(LIBS=['dl']) + + if (platform.system() == "Linux"): + env.Append(LIBS=['dl']) + + if (platform.system().find("BSD") >= 0): + env.Append(LIBS=['execinfo']) # Link those statically for portability if env['use_static_cpp']: diff --git a/platform/server/platform_config.h b/platform/server/platform_config.h index af4cf07393e..2fa8eda337d 100644 --- a/platform/server/platform_config.h +++ b/platform/server/platform_config.h @@ -28,4 +28,10 @@ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ +#ifdef __linux__ #include +#endif +#if defined(__FreeBSD__) || defined(__OpenBSD__) +#include +#define PTHREAD_BSD_SET_NAME +#endif diff --git a/platform/x11/crash_handler_x11.cpp b/platform/x11/crash_handler_x11.cpp index 43b9051ea73..d39fc33f81e 100644 --- a/platform/x11/crash_handler_x11.cpp +++ b/platform/x11/crash_handler_x11.cpp @@ -32,8 +32,9 @@ #define CRASH_HANDLER_ENABLED 1 #endif +#include "crash_handler_x11.h" #include "main/main.h" -#include "os_x11.h" +#include "os/os.h" #include "project_settings.h" #ifdef CRASH_HANDLER_ENABLED