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