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