summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt2
-rw-r--r--libs/enet/CMakeLists.txt5
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/client.cpp7
-rw-r--r--src/main.h2
5 files changed, 15 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d3a87236..fc188943 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,7 +38,7 @@ IF (WIN32)
SET(LOCALEDIR ".")
CONFIGURE_FILE(src/winver.h.in src/winver.h)
ELSE (WIN32)
- IF (NOT OSX)
+ IF (NOT OSX AND NOT BEOS)
OPTION(USE_X11 "Use X11 Clipboard functionality" ON)
ENDIF ()
SET(PKG_DATADIR ${CMAKE_INSTALL_PREFIX}/share/mana)
diff --git a/libs/enet/CMakeLists.txt b/libs/enet/CMakeLists.txt
index 714d9c03..52895918 100644
--- a/libs/enet/CMakeLists.txt
+++ b/libs/enet/CMakeLists.txt
@@ -52,4 +52,7 @@ SET (SRCS
INCLUDE_DIRECTORIES("include")
ADD_LIBRARY(enet STATIC ${SRCS})
-SET_TARGET_PROPERTIES(enet PROPERTIES COMPILE_FLAGS "${FLAGS}") \ No newline at end of file
+IF (BEOS)
+ TARGET_LINK_LIBRARIES(enet network)
+ENDIF()
+SET_TARGET_PROPERTIES(enet PROPERTIES COMPILE_FLAGS "${FLAGS}")
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f0c988dd..79dd72cc 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -54,7 +54,7 @@ ENDIF()
IF (WIN32)
SET(EXTRA_LIBRARIES ws2_32 winmm)
FIND_PACKAGE(LibIntl REQUIRED)
-ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR BEOS)
FIND_PACKAGE(LibIntl REQUIRED)
ELSEIF (CMAKE_SYSTEM_NAME STREQUAL SunOS)
# explicit linking to libintl is required on Solaris
diff --git a/src/client.cpp b/src/client.cpp
index f61b5612..71e2885d 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -1167,6 +1167,9 @@ void Client::initHomeDir()
mLocalDataDir = std::string(PHYSFS_getUserDir()) +
"/Library/Application Support/" +
branding.getValue("appName", "Mana");
+#elif defined __HAIKU__
+ mLocalDataDir = std::string(PHYSFS_getUserDir()) +
+ "/config/data/Mana";
#elif defined WIN32
mLocalDataDir = getSpecialFolderLocation(CSIDL_LOCAL_APPDATA);
if (mLocalDataDir.empty())
@@ -1189,6 +1192,10 @@ void Client::initHomeDir()
if (mConfigDir.empty()){
#ifdef __APPLE__
mConfigDir = mLocalDataDir + "/" + branding.getValue("appShort", "mana");
+#elif defined __HAIKU__
+ mConfigDir = std::string(PHYSFS_getUserDir()) +
+ "/config/settings/Mana" +
+ branding.getValue("appName", "Mana");
#elif defined WIN32
mConfigDir = getSpecialFolderLocation(CSIDL_APPDATA);
if (mConfigDir.empty())
diff --git a/src/main.h b/src/main.h
index 679f7c7d..38ab6337 100644
--- a/src/main.h
+++ b/src/main.h
@@ -78,6 +78,8 @@
#define PACKAGE_OS "Linux"
#elif defined __GNU__
#define PACKAGE_OS "GNU Hurd"
+#elif defined __HAIKU__
+#define PACKAGE_OS "Haiku"
#elif defined WIN32 || defined _WIN32 || defined __WIN32__ || defined __NT__ \
|| defined WIN64 || defined _WIN64 || defined __WIN64__
#define PACKAGE_OS "Windows"