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