]> Creatis software - creaImageIO.git/blob - src2/CMakeLists.txt
added first version of settings management.
[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   creaImageIOSynchron
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   creaImageIOWxGimmickPanel
49
50   # 
51   BlockScopeWxApp
52   creaImageIOGimmickReaderDialog
53
54   #  Viewer
55   creaImageIOWxViewer
56   creaImageIOImagePointerHolder.h
57   
58   # settings
59   creaImageIOSettings
60
61 )
62
63
64
65 OPTION(${LIBRARY_NAME}_BUILD_SHARED 
66   "Build ${LIBRARY_NAME} as a shared library (dynamic) ?" ON)
67 IF (${LIBRARY_NAME}_BUILD_SHARED)
68   SET(CREAIMAGEIO_BUILD_SHARED SHARED)
69   crea_DEFINE(CREAIMAGEIO_BUILD_SHARED)
70 ENDIF(${LIBRARY_NAME}_BUILD_SHARED)
71
72 crea_DEFINE(CREAIMAGEIO_EXPORT_SYMBOLS)
73
74 ADD_LIBRARY(${LIBRARY_NAME} ${CREAIMAGEIO_BUILD_SHARED} ${SRCS})
75
76
77
78 TARGET_LINK_LIBRARIES(${LIBRARY_NAME} 
79   ${crea_LIBRARIES}
80   ${WXWIDGETS_LIBRARIES}
81   ${VTK_LIBRARIES}
82   ${GDCM_LIBRARIES}
83   ${BOOST_LIBRARIES}
84   sqlite3)
85
86 #----------------------------------------------------------------------------
87 # INSTALLS LIBRARY
88 FILE(GLOB HEADERS "*.h")
89 INSTALL(
90   FILES ${HEADERS}
91   DESTINATION include/${LIBRARY_NAME}
92   )
93 IF (WIN32)
94   SET(CREAIMAGEIO_LIB_PATH bin)
95 ELSE (WIN32)
96   SET(CREAIMAGEIO_LIB_PATH lib)
97 ENDIF(WIN32)
98
99 INSTALL(
100   TARGETS ${LIBRARY_NAME} 
101   DESTINATION ${CREAIMAGEIO_LIB_PATH})
102
103   
104    # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE
105   SET(${LIBRARY_NAME}_INSTALL_FOLDER ${LIBRARY_NAME})
106   SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME})
107   
108   FILE(RELATIVE_PATH 
109     ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS 
110     ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
111     )
112   IF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
113     SET(CILFC_EXECUTABLE_OUTPUT_REL_PATH ".")
114   ELSE ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
115     FILE(RELATIVE_PATH 
116       CILFC_EXECUTABLE_OUTPUT_REL_PATH
117       ${PROJECT_BINARY_DIR} ${EXECUTABLE_OUTPUT_PATH})
118   ENDIF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
119
120   IF(UNIX)
121     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
122       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
123     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS lib)
124   ELSE(UNIX)
125     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
126       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
127     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS bin)
128   ENDIF(UNIX)
129   SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS include/${LIBRARY_NAME})
130   
131   SET(${LIBRARY_NAME}_HAS_ADDITIONAL_CONFIG_FILE TRUE)
132 SET(${LIBRARY_NAME}_ADDITIONAL_CONFIG_FILE 
133   ${PROJECT_SOURCE_DIR}/src2/Additional${LIBRARY_NAME}Config.cmake.in)
134 SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE 
135   ${PROJECT_SOURCE_DIR}/src2/AdditionalUse${LIBRARY_NAME}.cmake.in)
136
137   # Invoke the advanced macro
138   CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
139
140   
141 #CREA_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
142 #-----------------------------------------------------------------------------
143
144 OPTION( BUILD_DOXYGEN_DOC "Build doxygen doc ?" OFF)
145 IF(BUILD_DOXYGEN_DOC)
146   SUBDIRS(doxygen)
147 ENDIF(BUILD_DOXYGEN_DOC)
148
149 INCLUDE_DIRECTORIES(
150 #  ${PROJECT_BINARY_DIR}
151   ${PROJECT_SOURCE_DIR}/src2
152 #  ${PROJECT_SOURCE_DIR}/src2/CppSQLite3
153   )