From a95e0d18762c8182a3c2ba074b5961d5c00a90a4 Mon Sep 17 00:00:00 2001 From: miqlas Date: Mon, 30 Oct 2017 08:17:43 +0100 Subject: Initial Haiku support (#6568) * Iitial Haiku support --- src/CMakeLists.txt | 18 ++++++++++++++---- src/client/renderingengine.cpp | 3 ++- src/network/CMakeLists.txt | 4 ++++ 3 files changed, 20 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index f836a9f66..82f60be86 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -252,6 +252,12 @@ if(NOT MSVC) set(USE_GPROF FALSE CACHE BOOL "Use -pg flag for g++") endif() +# Haiku endian support +if(HAIKU) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_BSD_SOURCE") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_BSD_SOURCE") +endif() + # Use cmake_config.h add_definitions(-DUSE_CMAKE_CONFIG_H) @@ -300,7 +306,9 @@ if(WIN32) else() # Unix probably if(BUILD_CLIENT) - find_package(X11 REQUIRED) + if(NOT HAIKU) + find_package(X11 REQUIRED) + endif(NOT HAIKU) find_package(OpenGL REQUIRED) find_package(JPEG REQUIRED) find_package(BZip2 REQUIRED) @@ -328,10 +336,12 @@ else() endif(HAVE_LIBRT) endif(APPLE) + if(NOT HAIKU) # This way Xxf86vm is found on OpenBSD too - find_library(XXF86VM_LIBRARY Xxf86vm) - mark_as_advanced(XXF86VM_LIBRARY) - set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY}) + find_library(XXF86VM_LIBRARY Xxf86vm) + mark_as_advanced(XXF86VM_LIBRARY) + set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY}) + endif(NOT HAIKU) # Prefer local iconv if installed find_library(ICONV_LIBRARY iconv) diff --git a/src/client/renderingengine.cpp b/src/client/renderingengine.cpp index b3abd824d..a57388596 100644 --- a/src/client/renderingengine.cpp +++ b/src/client/renderingengine.cpp @@ -34,7 +34,8 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "inputhandler.h" #include "gettext.h" -#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__ANDROID__) && !defined(SERVER) +#if !defined(_WIN32) && !defined(__APPLE__) && !defined(__ANDROID__) && \ + !defined(SERVER) && !defined(__HAIKU__) #define XORG_USED #endif #ifdef XORG_USED diff --git a/src/network/CMakeLists.txt b/src/network/CMakeLists.txt index dedca9f2b..c6995ab22 100644 --- a/src/network/CMakeLists.txt +++ b/src/network/CMakeLists.txt @@ -17,3 +17,7 @@ if (BUILD_CLIENT) ) endif() +# Haiku networking support +if(HAIKU) + set(PLATFORM_LIBS -lnetwork ${PLATFORM_LIBS}) +endif() -- cgit v1.2.3