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