From 963443070677dc28be0edba24053dede8560fb2e Mon Sep 17 00:00:00 2001
From: Augustin Cavalier <waddlesplash@gmail.com>
Date: Mon, 14 Jul 2014 16:33:25 -0400
Subject: [PATCH] Fix Strigi on Haiku.

---
 libstreamanalyzer/lib/saxeventanalyzer.cpp                   | 2 +-
 strigiclient/lib/CMakeLists.txt                              | 1 -
 strigiclient/lib/searchclient/CMakeLists.txt                 | 4 +++-
 strigidaemon/CMakeLists.txt                                  | 2 +-
 strigidaemon/bin/daemon/eventlistener/eventlistenerqueue.cpp | 2 +-
 strigidaemon/bin/daemon/strigithread.cpp                     | 3 ++-
 6 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/libstreamanalyzer/lib/saxeventanalyzer.cpp b/libstreamanalyzer/lib/saxeventanalyzer.cpp
index 1e5b386..d37857c 100644
--- a/libstreamanalyzer/lib/saxeventanalyzer.cpp
+++ b/libstreamanalyzer/lib/saxeventanalyzer.cpp
@@ -27,7 +27,7 @@
 #include <cstring>
 
 #ifndef LIBXML_THREAD_ENABLED
-#error Strigi needs a thread safe version of libxml2
+#warning Strigi needs a thread safe version of libxml2
 #endif
 
 using namespace Strigi;
diff --git a/strigiclient/lib/CMakeLists.txt b/strigiclient/lib/CMakeLists.txt
index ba07497..c5be26d 100644
--- a/strigiclient/lib/CMakeLists.txt
+++ b/strigiclient/lib/CMakeLists.txt
@@ -1,4 +1,3 @@
 if(NOT WIN32)
     add_subdirectory(htmlgui)
 endif(NOT WIN32)
-add_subdirectory(searchclient)
diff --git a/strigiclient/lib/searchclient/CMakeLists.txt b/strigiclient/lib/searchclient/CMakeLists.txt
index 9ddce18..061f481 100644
--- a/strigiclient/lib/searchclient/CMakeLists.txt
+++ b/strigiclient/lib/searchclient/CMakeLists.txt
@@ -1,4 +1,6 @@
-add_subdirectory(qtdbus)
+if(ENABLE_DBUS)
+	add_subdirectory(qtdbus)
+endif(ENABLE_DBUS)
 # disable searchclient for now
 if(NOT WIN32)
 add_subdirectory(filterwidget)
diff --git a/strigidaemon/CMakeLists.txt b/strigidaemon/CMakeLists.txt
index 759b72c..53d774a 100644
--- a/strigidaemon/CMakeLists.txt
+++ b/strigidaemon/CMakeLists.txt
@@ -115,7 +115,7 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/LibSearchClientConfig.cmake
 	DESTINATION ${LIB_DESTINATION}/libsearchclient)
 file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/dummy.cpp "")
 add_executable(strigidaemon dummy.cpp)
-target_link_libraries(strigidaemon libstrigidaemon)
+target_link_libraries(strigidaemon libstrigidaemon network)
 install(TARGETS strigidaemon
 	RUNTIME DESTINATION bin)
 # library
diff --git a/strigidaemon/bin/daemon/eventlistener/eventlistenerqueue.cpp b/strigidaemon/bin/daemon/eventlistener/eventlistenerqueue.cpp
index 9fcdcb1..88dae45 100644
--- a/strigidaemon/bin/daemon/eventlistener/eventlistenerqueue.cpp
+++ b/strigidaemon/bin/daemon/eventlistener/eventlistenerqueue.cpp
@@ -27,7 +27,7 @@
 #include <iostream>
 #include <stdio.h>
 
-#if defined(__SUNPRO_CC)
+#if defined(__SUNPRO_CC) || defined(__HAIKU__)
 #include <unistd.h>
 #endif
 
diff --git a/strigidaemon/bin/daemon/strigithread.cpp b/strigidaemon/bin/daemon/strigithread.cpp
index f2ddaed..ce87f70 100644
--- a/strigidaemon/bin/daemon/strigithread.cpp
+++ b/strigidaemon/bin/daemon/strigithread.cpp
@@ -30,7 +30,6 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <sys/resource.h>
-#include <sys/syscall.h>
 
 // define two enums and a constant for use of ioprio
 enum {
@@ -107,6 +106,7 @@ threadstarter(void *d) {
     param.sched_priority = 0;
     StrigiThread* thread = static_cast<StrigiThread*>(d);
 
+#ifndef __HAIKU__
 #ifndef __APPLE__
     if (thread->getPriority() > 0) {
 #ifndef SCHED_BATCH
@@ -138,6 +138,7 @@ threadstarter(void *d) {
 #endif
     }
 #endif
+#endif
 
     // start the actual work
     thread->run(0);
-- 
1.8.3.4

