]> Creatis software - creaImageIO.git/blob - src/CMakeLists.txt
no message
[creaImageIO.git] / src / CMakeLists.txt
1 SET( SRCS
2   # SQLite 
3   CppSQLite3
4   
5   # wxTreeListCtrl
6   treelistctrl.cpp
7
8   # Image readers
9   creaImageIOImageReader
10   creaImageIOMultiThreadImageReader
11
12   # Dicom database management
13   creaImageIODicomNode
14   creaImageIODicomNodeComparators
15   creaImageIODicomNodeTypeDescription
16   creaImageIODicomDatabaseStructure
17   creaImageIODicomDatabase
18   creaImageIOField
19
20   # The Gimmick! widgets
21   creaImageIOWxGimmick
22   creaImageIOWxGimmickSettings
23   creaImageIOWxGimmickFieldsView
24
25   creaImageIOWxGimmickDialog
26
27 #  creaImageIOWxDicomDatabaseTreeView
28 #  creaImageIOWxDicomDatabaseTreeViewSettings
29 #  creaImageIOWxDicomNodeFieldsView
30   
31   # File selector wxDialog using a DDB tree view
32 #  creaImageIOWxDicomFilesSelectorDialog
33
34   # wx-free function which opens a file selector dialog 
35 #  BlockScopeWxApp
36 #  creaImageIODicomFilesSelectorDialog
37
38 )
39
40
41
42 OPTION(creaImageIO_BUILD_SHARED 
43   "Build creaImageIO as a shared library (dynamic) ?" ON)
44 IF (creaImageIO_BUILD_SHARED)
45   SET(CREAIMAGEIO_BUILD_SHARED SHARED)
46   crea_DEFINE(CREAIMAGEIO_BUILD_SHARED)
47 ENDIF(creaImageIO_BUILD_SHARED)
48
49 crea_DEFINE(CREAIMAGEIO_EXPORT_SYMBOLS)
50
51 ADD_LIBRARY(creaImageIO ${CREAIMAGEIO_BUILD_SHARED} ${SRCS})
52
53
54
55 TARGET_LINK_LIBRARIES(creaImageIO 
56   ${crea_LIBRARIES}
57   ${WXWIDGETS_LIBRARIES}
58   ${VTK_LIBRARIES}
59   ${GDCM_LIBRARIES}
60   ${BOOST_LIBRARIES}
61   sqlite3)
62
63 #----------------------------------------------------------------------------
64 # INSTALLS LIBRARY
65 FILE(GLOB HEADERS "*.h")
66 INSTALL(
67   FILES ${HEADERS}
68   DESTINATION include/creaImageIO
69   )
70 IF (WIN32)
71   SET(CREAIMAGEIO_LIB_PATH bin)
72 ELSE (WIN32)
73   SET(CREAIMAGEIO_LIB_PATH lib)
74 ENDIF(WIN32)
75
76 INSTALL(
77   TARGETS creaImageIO 
78   DESTINATION ${CREAIMAGEIO_LIB_PATH})
79
80   
81    # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE
82    SET(LIBRARY_NAME creaImageIO)
83   SET(${LIBRARY_NAME}_INSTALL_FOLDER ${LIBRARY_NAME})
84   SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME})
85   
86   FILE(RELATIVE_PATH 
87     ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS 
88     ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
89     )
90   IF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
91     SET(CILFC_EXECUTABLE_OUTPUT_REL_PATH ".")
92   ELSE ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
93     FILE(RELATIVE_PATH 
94       CILFC_EXECUTABLE_OUTPUT_REL_PATH
95       ${PROJECT_BINARY_DIR} ${EXECUTABLE_OUTPUT_PATH})
96   ENDIF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} )
97
98   IF(UNIX)
99     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
100       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
101     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS lib)
102   ELSE(UNIX)
103     SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS 
104       ${CILFC_EXECUTABLE_OUTPUT_REL_PATH})
105     SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS bin)
106   ENDIF(UNIX)
107   SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS include/${LIBRARY_NAME})
108   
109   SET(${LIBRARY_NAME}_HAS_ADDITIONAL_CONFIG_FILE TRUE)
110 SET(${LIBRARY_NAME}_ADDITIONAL_CONFIG_FILE 
111   ${PROJECT_SOURCE_DIR}/src/AdditionalcreaImageIOConfig.cmake.in)
112 SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE 
113   ${PROJECT_SOURCE_DIR}/src/AdditionalUsecreaImageIO.cmake.in)
114
115   # Invoke the advanced macro
116   CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
117
118   
119 #CREA_INSTALL_LIBRARY_FOR_CMAKE(creaImageIO)
120 #-----------------------------------------------------------------------------
121
122 OPTION( BUILD_DOXYGEN_DOC "Build doxygen doc ?" OFF)
123 IF(BUILD_DOXYGEN_DOC)
124   SUBDIRS(doxygen)
125 ENDIF(BUILD_DOXYGEN_DOC)