]> Creatis software - gdcm.git/blob - vtk/CMakeLists.txt
using EXPORT should help...
[gdcm.git] / vtk / CMakeLists.txt
1 #-----------------------------------------------------------------------------
2 # VTK GDCM Reader subdir
3 # Rebuild gdcm whenever a file starting with vtk* is modified
4 INCLUDE_REGULAR_EXPRESSION("^vtk.*$")
5
6      if(COMMAND cmake_policy)
7        cmake_policy(SET CMP0003 NEW)
8      endif(COMMAND cmake_policy)
9
10 #-----------------------------------------------------------------------------
11 # Include the VTK library
12
13 # EED 5/Mars/2010
14 SET(VTK_BUILD_SETTINGS_FILE OFF)
15
16 INCLUDE(${VTK_USE_FILE})
17
18 # Need gdcm header files
19 INCLUDE_DIRECTORIES(
20   ${GDCM_SOURCE_DIR}/src/
21   ${GDCM_BINARY_DIR}/
22 )
23
24 # Depending on VTK version build more stuff:
25 IF("${VTK_MAJOR_VERSION}" GREATER 4)
26   SET(VTKGDCM_LIB_SRCS
27     vtkGdcmReader.cxx
28     vtkGdcmWriter.cxx
29     vtkImageColorViewer.cxx
30     vtkImageMapToWindowLevelColors2.cxx
31     vtkGdcm4DSplitter.cxx
32   )
33 ELSE("${VTK_MAJOR_VERSION}" GREATER 4)
34   SET(VTKGDCM_LIB_SRCS
35     vtkGdcmReader.cxx
36     vtkGdcmWriter.cxx
37   )
38 ENDIF("${VTK_MAJOR_VERSION}" GREATER 4)
39
40 #-----------------------------------------------------------------------------
41 # Create vtkgdcm library
42 ADD_LIBRARY(vtkgdcm ${VTKGDCM_LIB_SRCS})
43 TARGET_LINK_LIBRARIES(vtkgdcm
44   gdcm
45   vtkCommon
46   vtkIO
47   vtkFiltering
48 )
49 IF("${VTK_MAJOR_VERSION}" GREATER 4)
50   TARGET_LINK_LIBRARIES(vtkgdcm
51     vtkRendering
52   )
53 ENDIF("${VTK_MAJOR_VERSION}" GREATER 4)
54
55 #-----------------------------------------------------------------------------
56 SET(vtkgdcmdemo_SOURCES
57   vtkGdcmDemo.cxx
58 )
59 ADD_EXECUTABLE(vtkgdcmdemo ${vtkgdcmdemo_SOURCES})
60 TARGET_LINK_LIBRARIES(vtkgdcmdemo
61   vtkgdcm
62   vtkGraphics
63   vtkRendering
64 )
65
66 #-----------------------------------------------------------------------------
67 SET(Bmp2Dcm_SOURCES
68   Bmp2Dcm.cxx
69 )
70
71 ADD_EXECUTABLE(Bmp2Dcm ${Bmp2Dcm_SOURCES})
72 TARGET_LINK_LIBRARIES(Bmp2Dcm
73   vtkgdcm
74   vtkImaging
75 )
76
77 #-----------------------------------------------------------------------------
78 #ADD_EXECUTABLE(exUnMosaic2 exUnMosaic2.cxx)
79 #TARGET_LINK_LIBRARIES(exUnMosaic2
80 #  vtkgdcm
81   ##vtkRendering
82 #)
83
84 #ADD_EXECUTABLE(exUnMosaic3 exUnMosaic3.cxx)
85 #TARGET_LINK_LIBRARIES(exUnMosaic3
86 #  vtkgdcm
87 #  #vtkRendering
88 #)
89
90 #ADD_EXECUTABLE(exUnMosaic4 exUnMosaic4.cxx)
91 #TARGET_LINK_LIBRARIES(exUnMosaic4
92 #  vtkgdcm
93 #  #vtkRendering
94 #)
95 #-----------------------------------------------------------------------------
96 SET(vtkgdcmViewer_SOURCES
97   vtkgdcmViewer.cxx
98 )
99
100 SET(vtkgdcmViewer2_SOURCES
101   vtkgdcmViewer2.cxx
102 )
103
104 # let's do some APPLE/WIN32 magic here
105 #IF(WIN32)
106 #  SET(GUI_EXECUTABLE WIN32)
107 #ENDIF(WIN32)
108 IF(APPLE)
109   IF(VTK_USE_CARBON)
110     SET(GUI_EXECUTABLE MACOSX_BUNDLE)
111   ENDIF(VTK_USE_CARBON)
112   IF(VTK_USE_COCOA)
113     SET(GUI_EXECUTABLE MACOSX_BUNDLE)
114   ENDIF(VTK_USE_COCOA)
115   # when using X11 on Apple you don't need this...
116 ENDIF(APPLE)
117
118 ADD_EXECUTABLE(vtkgdcmViewer ${GUI_EXECUTABLE} ${vtkgdcmViewer_SOURCES})
119 TARGET_LINK_LIBRARIES(vtkgdcmViewer
120   vtkgdcm
121   vtkRendering
122 )
123
124 #ADD_EXECUTABLE(vtkJPEGViewer ${GUI_EXECUTABLE} ${vtkJPEGViewer_SOURCES})
125 #TARGET_LINK_LIBRARIES( vtkJPEGViewer
126 #  vtkRendering
127 #)
128
129 #ADD_EXECUTABLE(vtkJPEGViewer2 ${GUI_EXECUTABLE} ${vtkJPEGViewer2_SOURCES})
130 #TARGET_LINK_LIBRARIES( vtkJPEGViewer2
131 #  vtkgdcm
132 #  vtkRendering
133 #)
134
135 #-----------------------------------------------------------------------------
136 SET(test4DSplitter_SOURCES
137   test4DSplitter.cxx
138 )
139
140 ADD_EXECUTABLE(test4DSplitter ${GUI_EXECUTABLE} ${test4DSplitter_SOURCES})
141 TARGET_LINK_LIBRARIES( test4DSplitter
142   ${test4DSplitter_LINK_LIBRARIES} 
143 )
144
145 #-----------------------------------------------------------------------------
146 #SET(testEmilie1_SOURCES
147 #  testEmilie1.cxx
148 #)
149 #
150 #ADD_EXECUTABLE(testEmilie1 ${GUI_EXECUTABLE} ${testEmilie1_SOURCES})
151 #TARGET_LINK_LIBRARIES( testEmilie1
152 #  vtkgdcm 
153 #)
154 #-----------------------------------------------------------------------------
155
156 ADD_EXECUTABLE(vtkgdcmViewer2 ${GUI_EXECUTABLE} vtkgdcmViewer2.cxx)
157 TARGET_LINK_LIBRARIES(vtkgdcmViewer2
158   vtkgdcm
159   vtkRendering
160 )
161
162 ADD_EXECUTABLE(vtkgdcmSerieViewer ${GUI_EXECUTABLE} vtkgdcmSerieViewer.cxx)
163 TARGET_LINK_LIBRARIES(vtkgdcmSerieViewer
164   vtkgdcm
165   vtkRendering
166 )
167
168 ADD_EXECUTABLE(vtkgdcmSerieViewer2 ${GUI_EXECUTABLE} vtkgdcmSerieViewer2.cxx)
169 TARGET_LINK_LIBRARIES(vtkgdcmSerieViewer2
170   vtkgdcm
171   vtkRendering
172 )
173
174 #-----------------------------------------------------------------------------
175 SET(vtkWriteDicom_SOURCES
176   vtkWriteDicom.cxx
177 )
178
179 SET(vtkWriteDicomExtended_SOURCES
180   vtkWriteDicomExtended.cxx  
181 )
182
183 ADD_EXECUTABLE(vtkWriteDicom ${vtkWriteDicom_SOURCES})
184 TARGET_LINK_LIBRARIES(vtkWriteDicom
185   vtkgdcm
186   vtkIO
187   vtkRendering
188 )
189
190 ADD_EXECUTABLE(vtkWriteDicomExtended ${vtkWriteDicomExtended_SOURCES})
191 TARGET_LINK_LIBRARIES(vtkWriteDicomExtended
192   vtkgdcm
193   vtkIO
194   vtkRendering
195 )
196 #-----------------------------------------------------------------------------
197 # Install vtk header
198 IF(NOT GDCM_INSTALL_NO_DEVELOPMENT)
199   INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES vtkGdcmReader.h)
200   INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES vtkGdcmWriter.h)
201   INSTALL_FILES(${GDCM_INSTALL_INCLUDE_DIR} FILES vtkGdcm4DSplitter.h)
202 ENDIF(NOT GDCM_INSTALL_NO_DEVELOPMENT)
203
204 IF(NOT GDCM_INSTALL_NO_LIBRARIES)
205   INSTALL_TARGETS(${GDCM_INSTALL_LIB_DIR} vtkgdcm)
206   INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmViewer)
207   INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmViewer)
208
209  # INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkJPEGViewer)
210  # INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkJPEGViewer2)
211
212   INSTALL_TARGETS(${GDCM_INSTALL_BIN_DIR} vtkgdcmSerieViewer)
213 ENDIF(NOT GDCM_INSTALL_NO_LIBRARIES)
214