changeset 18:54d5dd1df2e5

support of FreeBSD
author jodogne
date Tue, 07 Apr 2015 17:09:25 +0200
parents b1eafe1e8511
children 20af33af313a
files NEWS Orthanc/SQLite/FunctionContext.cpp Orthanc/Toolbox.cpp Plugin/ParsedDicomImage.cpp Resources/CMake/Compiler.cmake Resources/CMake/JavaScriptLibraries.cmake Resources/CMake/SQLiteConfiguration.cmake
diffstat 7 files changed, 23 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/NEWS	Tue Apr 07 16:45:45 2015 +0200
+++ b/NEWS	Tue Apr 07 17:09:25 2015 +0200
@@ -2,6 +2,7 @@
 ===============================
 
 * Support of Visual Studio 2008
+* Support of FreeBSD
 
 
 Version 1.0.0 (2015-02-27)
--- a/Orthanc/SQLite/FunctionContext.cpp	Tue Apr 07 16:45:45 2015 +0200
+++ b/Orthanc/SQLite/FunctionContext.cpp	Tue Apr 07 17:09:25 2015 +0200
@@ -40,6 +40,7 @@
 #include "OrthancSQLiteException.h"
 
 #include <sqlite3.h>
+#include <string>
 
 namespace Orthanc
 {
--- a/Orthanc/Toolbox.cpp	Tue Apr 07 16:45:45 2015 +0200
+++ b/Orthanc/Toolbox.cpp	Tue Apr 07 17:09:25 2015 +0200
@@ -183,7 +183,7 @@
   {
 #if defined(_WIN32)
     ::Sleep(static_cast<DWORD>(microSeconds / static_cast<uint64_t>(1000)));
-#elif defined(__linux) || defined(__APPLE__) || defined(__FreeBSD_kernel__)
+#elif defined(__linux) || defined(__APPLE__) || defined(__FreeBSD_kernel__) || defined(__FreeBSD__)
     usleep(microSeconds);
 #else
 #error Support your platform here
--- a/Plugin/ParsedDicomImage.cpp	Tue Apr 07 16:45:45 2015 +0200
+++ b/Plugin/ParsedDicomImage.cpp	Tue Apr 07 17:09:25 2015 +0200
@@ -244,6 +244,9 @@
         case gdcm::PixelFormat::UINT8:
           accessor.AssignWritable(Orthanc::PixelFormat_Grayscale8, width, height, width, buffer);
           return true;
+
+      default:
+	return false;
       }
     }
     else if (image.GetPixelFormat().GetSamplesPerPixel() == 3 &&
@@ -254,6 +257,9 @@
         case gdcm::PixelFormat::UINT8:
           accessor.AssignWritable(Orthanc::PixelFormat_RGB24, width, height, 3 * width, buffer);
           return true;
+
+      default:
+	return false;
       }      
     }
 
--- a/Resources/CMake/Compiler.cmake	Tue Apr 07 16:45:45 2015 +0200
+++ b/Resources/CMake/Compiler.cmake	Tue Apr 07 17:09:25 2015 +0200
@@ -32,6 +32,11 @@
     SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static-libstdc++")
     SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -static-libgcc -static-libstdc++")
   endif()
+elseif (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
+  SET(OS_LIBRARIES uuid)
+  link_directories("/usr/local/lib")
+  # This line helps CHECK_INCLUDE_FILE_CXX macro to find files
+  SET(CMAKE_REQUIRED_INCLUDES "/usr/local/include")
 endif ()
 
 if (CMAKE_COMPILER_IS_GNUCXX)
--- a/Resources/CMake/JavaScriptLibraries.cmake	Tue Apr 07 16:45:45 2015 +0200
+++ b/Resources/CMake/JavaScriptLibraries.cmake	Tue Apr 07 17:09:25 2015 +0200
@@ -29,8 +29,8 @@
   "jquery-ui-1.11.3")
 
 DownloadPackage(
-  "8f27231a78218b959159e37daa3d86b3"
-  "${BASE_URL}/jsPanel-2.3.3.zip"
+  "169c56338f9ff812cae3e91ef72bda2e"
+  "${BASE_URL}/jsPanel-2.3.3-fixed.zip"
   "jspanel")
 
 DownloadPackage(
--- a/Resources/CMake/SQLiteConfiguration.cmake	Tue Apr 07 16:45:45 2015 +0200
+++ b/Resources/CMake/SQLiteConfiguration.cmake	Tue Apr 07 17:09:25 2015 +0200
@@ -46,8 +46,14 @@
     message(FATAL_ERROR "Please install the libsqlite3-dev package")
   endif()
 
+  find_path(SQLITE_INCLUDE_DIR sqlite3.h
+    /usr/include
+    /usr/local/include
+    )
+  message("SQLite include dir: ${SQLITE_INCLUDE_DIR}")
+
   # Autodetection of the version of SQLite
-  file(STRINGS "/usr/include/sqlite3.h" SQLITE_VERSION_NUMBER1 REGEX "#define SQLITE_VERSION_NUMBER.*$")    
+  file(STRINGS "${SQLITE_INCLUDE_DIR}/sqlite3.h" SQLITE_VERSION_NUMBER1 REGEX "#define SQLITE_VERSION_NUMBER.*$")    
   string(REGEX REPLACE "#define SQLITE_VERSION_NUMBER(.*)$" "\\1" SQLITE_VERSION_NUMBER ${SQLITE_VERSION_NUMBER1})
 
   message("Detected version of SQLite: ${SQLITE_VERSION_NUMBER}")