Initial Haiku support (#6568)

* Iitial Haiku support
This commit is contained in:
miqlas 2017-10-30 08:17:43 +01:00 committed by Loïc Blot
parent cd1140f69c
commit a95e0d1876
5 changed files with 23 additions and 5 deletions

@ -42,12 +42,14 @@ else()
PATHS PATHS
/usr/local/include/irrlicht /usr/local/include/irrlicht
/usr/include/irrlicht /usr/include/irrlicht
/system/develop/headers/irrlicht #Haiku
) )
find_library(IRRLICHT_LIBRARY NAMES libIrrlicht.so libIrrlicht.a Irrlicht find_library(IRRLICHT_LIBRARY NAMES libIrrlicht.so libIrrlicht.a Irrlicht
PATHS PATHS
/usr/local/lib /usr/local/lib
/usr/lib /usr/lib
/system/develop/lib # Haiku
) )
endif() endif()

@ -252,6 +252,12 @@ if(NOT MSVC)
set(USE_GPROF FALSE CACHE BOOL "Use -pg flag for g++") set(USE_GPROF FALSE CACHE BOOL "Use -pg flag for g++")
endif() 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 # Use cmake_config.h
add_definitions(-DUSE_CMAKE_CONFIG_H) add_definitions(-DUSE_CMAKE_CONFIG_H)
@ -300,7 +306,9 @@ if(WIN32)
else() else()
# Unix probably # Unix probably
if(BUILD_CLIENT) if(BUILD_CLIENT)
find_package(X11 REQUIRED) if(NOT HAIKU)
find_package(X11 REQUIRED)
endif(NOT HAIKU)
find_package(OpenGL REQUIRED) find_package(OpenGL REQUIRED)
find_package(JPEG REQUIRED) find_package(JPEG REQUIRED)
find_package(BZip2 REQUIRED) find_package(BZip2 REQUIRED)
@ -328,10 +336,12 @@ else()
endif(HAVE_LIBRT) endif(HAVE_LIBRT)
endif(APPLE) endif(APPLE)
if(NOT HAIKU)
# This way Xxf86vm is found on OpenBSD too # This way Xxf86vm is found on OpenBSD too
find_library(XXF86VM_LIBRARY Xxf86vm) find_library(XXF86VM_LIBRARY Xxf86vm)
mark_as_advanced(XXF86VM_LIBRARY) mark_as_advanced(XXF86VM_LIBRARY)
set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY}) set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY})
endif(NOT HAIKU)
# Prefer local iconv if installed # Prefer local iconv if installed
find_library(ICONV_LIBRARY iconv) find_library(ICONV_LIBRARY iconv)

@ -34,7 +34,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "inputhandler.h" #include "inputhandler.h"
#include "gettext.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 #define XORG_USED
#endif #endif
#ifdef XORG_USED #ifdef XORG_USED

@ -17,3 +17,7 @@ if (BUILD_CLIENT)
) )
endif() endif()
# Haiku networking support
if(HAIKU)
set(PLATFORM_LIBS -lnetwork ${PLATFORM_LIBS})
endif()

@ -16,6 +16,7 @@ src/clientiface.cpp
src/clientiface.h src/clientiface.h
src/client/joystick_controller.cpp src/client/joystick_controller.cpp
src/client/joystick_controller.h src/client/joystick_controller.h
src/client/renderingengine.cpp
src/clientmap.cpp src/clientmap.cpp
src/clientmap.h src/clientmap.h
src/clientmedia.cpp src/clientmedia.cpp