]> Creatis software - creaImageIO.git/blob - src2/CMakeLists.txt
bug correction : no spaces in descriptor files
[creaImageIO.git] / src2 / CMakeLists.txt
1 SET(LIBRARY_NAME creaImageIO2)
2
3 SET( SRCS
4   # SQLite 
5   CppSQLite3
6   
7   # wxTreeListCtrl
8 #  treelistctrl.cpp
9
10
11   # Attributed tree data structure
12   creaImageIOTree
13   creaImageIOTreeNode
14   creaImageIOTreeDescriptor
15   creaImageIOTreeLevelDescriptor
16   creaImageIOTreeAttributeDescriptor
17   creaImageIOTreeComparators
18
19   # Image readers
20   creaImageIOAbstractImageReader
21   creaImageIOVtkImageReader
22   creaImageIODicomImageReader
23   creaImageIOUltrasonixImageReader
24   creaImageIOImageReader
25   creaImageIOMultiThreadImageReader
26
27   # Tree Handlers
28   creaImageIOTreeHandler
29   creaImageIOSQLiteTreeHandler
30
31   # 
32   creaImageIOTreeHandlerImageAdder
33   
34   # 
35   creaImageIOGimmick
36   creaImageIOSynchronizer
37   creaImageIOTimestampDatabaseHandler
38
39   # Abstract views
40   creaImageIOGimmickView
41   creaImageIOTreeView
42
43   # The wxWidgets-based components
44   creaImageIOWxGimmickView
45   creaImageIOWxTreeView
46   creaImageIOWxGimmickReaderDialog
47   creaImageIOWxGimmickFrame
48
49   # 
50   BlockScopeWxApp
51   creaImageIOGimmickReaderDialog
52
53   #  Viewer
54   creaImageIOWxViewer
55   creaImageIOImagePointerHolder.h
56
57
58 )
59
60
61
62 OPTION(${LIBRARY_NAME}_BUILD_SHARED 
63   "Build ${LIBRARY_NAME} as a shared library (dynamic) ?" ON)
64 IF (${LIBRARY_NAME}_BUILD_SHARED)
65   SET(CREAIMAGEIO_BUILD_SHARED SHARED)
66   crea_DEFINE(CREAIMAGEIO_BUILD_SHARED)
67 ENDIF(${LIBRARY_NAME}_BUILD_SHARED)
68
69 crea_DEFINE(CREAIMAGEIO_EXPORT_SYMBOLS)
70
71 ADD_LIBRARY(${LIBRARY_NAME} ${CREAIMAGEIO_BUILD_SHARED} ${SRCS})
72
73
74
75 TARGET_LINK_LIBRARIES(${LIBRARY_NAME} 
76   ${crea_LIBRARIES}
77   ${WXWIDGETS_LIBRARIES}
78   ${VTK_LIBRARIES}
79   ${GDCM_LIBRARIES}
80   ${BOOST_LIBRARIES}
81   sqlite3)
82
83 #----------------------------------------------------------------------------
84 # INSTALLS LIBRARY
85 FILE(GLOB HEADERS "*.h")
86 INSTALL(
87   FILES ${HEADERS}
88   DESTINATION include/${LIBRARY_NAME}
89   )
90 IF (WIN32)
91   SET(CREAIMAGEIO_LIB_PATH bin)
92 ELSE (WIN32)
93   SET(CREAIMAGEIO_LIB_PATH lib)
94 ENDIF(WIN32)
95
96 INSTALL(
97   TARGETS ${LIBRARY_NAME} 
98   DESTINATION ${CREAIMAGEIO_LIB_PATH})
99
100   
101    # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE
102   SET(${LIBRARY_NAME}_INSTALL_FOLDER ${LIBRARY_NAME})
103   SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME})
104   
105   FILE(RELATIVE_PATH 
106     ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS 
107     ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
108     )
109   IF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
110     SET(CILFC_EXECUTABLE_OUTPUT_REL_PATH ".")
111   ELSE ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
112     FILE(RELATIVE_PATH 
113       CILFC_EXECUTABLE_OUTPUT_REL_PATH
114       ${PROJECT_BINARY_DIR} ${EXECUTABLE_OUTPUT_PATH})
115   ENDIF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
116
117   IF(UNIX)
118     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
119       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
120     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS lib)
121   ELSE(UNIX)
122     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
123       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
124     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS bin)
125   ENDIF(UNIX)
126   SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS include/${LIBRARY_NAME})
127   
128   SET(${LIBRARY_NAME}_HAS_ADDITIONAL_CONFIG_FILE TRUE)
129 SET(${LIBRARY_NAME}_ADDITIONAL_CONFIG_FILE 
130   ${PROJECT_SOURCE_DIR}/src2/Additional${LIBRARY_NAME}Config.cmake.in)
131 SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE 
132   ${PROJECT_SOURCE_DIR}/src2/AdditionalUse${LIBRARY_NAME}.cmake.in)
133
134   # Invoke the advanced macro
135   CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
136
137   
138 #CREA_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
139 #-----------------------------------------------------------------------------
140
141 OPTION( BUILD_DOXYGEN_DOC "Build doxygen doc ?" OFF)
142 IF(BUILD_DOXYGEN_DOC)
143   SUBDIRS(doxygen)
144 ENDIF(BUILD_DOXYGEN_DOC)
145
146 INCLUDE_DIRECTORIES(
147 #  ${PROJECT_BINARY_DIR}
148   ${PROJECT_SOURCE_DIR}/src2
149 #  ${PROJECT_SOURCE_DIR}/src2/CppSQLite3
150   )