]> Creatis software - creaImageIO.git/blob - CMakeLists.txt
correction of bugs
[creaImageIO.git] / CMakeLists.txt
1 #
2 # Test CMake version
3 #
4
5 CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
6
7 #MARK_AS_ADVANCED( FORCE CMAKE_BACKWARDS_COMPATIBILITY )
8 # for CMake 2.6 corrected behaviour (see "cmake --help-policy CMP0003")
9 IF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
10   CMAKE_POLICY(SET CMP0003 NEW)
11   CMAKE_POLICY(SET CMP0005 NEW)
12   CMAKE_POLICY(SET CMP0011 NEW)
13 ENDIF(COMMAND cmake_policy AND ${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} GREATER 4)
14
15
16 PROJECT(creaImageIO)
17
18 SET(PROJECT_MAJOR_VERSION 0)
19 SET(PROJECT_MINOR_VERSION 2)
20 SET(PROJECT_BUILD_VERSION 5)
21 SET(CREA_VERBOSE_CMAKE TRUE)
22
23 FIND_PACKAGE(crea REQUIRED)
24 IF (crea_FOUND)
25   INCLUDE(${crea_USE_FILE})
26
27 ENDIF(crea_FOUND)
28
29
30
31
32 SET(USE_GDCM_VTK ON)
33
34 SET(USE_VTK ON)
35 SET(USE_ITK OFF)
36 SET(USE_BOOST ON)
37 OPTION(USE_WXWIDGETS "Use WxWidgets GUI" ON)
38 OPTION(USE_QT4 "USE WxWidgets GUI"       OFF)
39 OPTION(USE_XERCES "USE Xerces if you want to use an beta version of outputModel" OFF)
40
41 IF(USE_QT4)
42         IF(USE_WXWIDGETS)
43                  MESSAGE(STATUS "CANNOT USE QT WXWIDGETS IN SAME TIME")
44         ENDIF(USE_WXWIDGETS)
45 ENDIF(USE_QT4)
46                  
47                  
48 OPTION(USE_GDCM "Use gdcm 1.3" ON)
49 OPTION(USE_GDCM2 "Use gdcm 2.0.14 at least" OFF)
50  MESSAGE(STATUS "GDCM LIB ....= ${GDCM_LIBRARIES}")
51 IF(USE_GDCM2)
52         OPTION(USE_GDCM_ANOM "use gdcm2 anonymizer tool" OFF)
53         #TO DO TEST IF GDCM_USE_SYSTEM_OPENSSL is valid
54 ENDIF(USE_GDCM2)
55 CREA_FIND_AND_USE_LIBRARIES()
56
57 SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
58 SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR})
59 MARK_AS_ADVANCED(
60   CMAKE_BACKWARDS_COMPATIBILITY
61   EXECUTABLE_OUTPUT_PATH 
62   LIBRARY_OUTPUT_PATH
63   )
64
65 IF(WIN32)
66         IF(MSVC AND CMAKE_SIZEOF_VOID_P MATCHES 4)
67                 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
68                 LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/win32)
69         endif()
70         IF(MSVC AND CMAKE_SIZEOF_VOID_P MATCHES 8)
71                 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win64)
72                 LINK_DIRECTORIES(${PROJECT_SOURCE_DIR}/win64)
73         endif()
74 ENDIF(WIN32)
75
76 SET(LIBNAME creaImageIO)
77         INCLUDE_DIRECTORIES(
78     ${PROJECT_BINARY_DIR}
79     ${PROJECT_SOURCE_DIR}/src
80     )
81 SUBDIRS(src)
82
83
84 OPTION(BUILD_CREA_BRUKER "Build creaIRM with creaBruker?" ON)
85
86 IF (BUILD_CREA_BRUKER)
87         FIND_PACKAGE(creaBruker REQUIRED)
88         IF (creaBruker_FOUND)
89                 INCLUDE(${creaBruker_USE_FILE})
90                 CREA_DEFINE(BUILD_BRUKER)
91         ENDIF(creaBruker_FOUND)
92 ENDIF (BUILD_CREA_BRUKER)
93
94
95 # To Use PACS connection library
96 OPTION(BUILD_CREA_PACS "Build creaImageIO with PACS connection library ?" OFF)
97 IF (BUILD_CREA_PACS)
98         CREA_DEFINE(BUILD_PACS)
99 ENDIF(BUILD_CREA_PACS)
100
101 #
102 SUBDIRS(appli)
103 SUBDIRS(bbtk)
104
105 IF(MSVC AND CMAKE_SIZEOF_VOID_P MATCHES 4)
106         SUBDIRS(win32)
107 endif()
108 IF(MSVC AND CMAKE_SIZEOF_VOID_P MATCHES 8)
109         SUBDIRS(win64)
110 endif()
111
112 SUBDIRS(install)
113