]> Creatis software - cpPlugins.git/blob - appli/ImageMPR/CMakeLists.txt
d67386d2acebda4d120f7482f7aedf78feb451f2
[cpPlugins.git] / appli / ImageMPR / CMakeLists.txt
1 IF(USE_QT4)
2   find_package(ITK REQUIRED)
3   include(${ITK_USE_FILE})
4   find_package(VTK REQUIRED)
5   include(${VTK_USE_FILE})
6
7   CONFIGURE_FILE(
8     Plugins.cfg.in
9     ${PROJECT_BINARY_DIR}/Plugins.cfg
10     @ONLY
11     )
12
13   ## ====================================================
14   ## = Source code, user interafaces and resources here =
15   ## ====================================================
16
17   SET(App_NAME       "ImageMPR")
18   SET(App_SOURCE_DIR "${PROJECT_SOURCE_DIR}/appli/${App_NAME}")
19   SET(App_BINARY_DIR "${PROJECT_BINARY_DIR}/appli/${App_NAME}")
20
21   SET(
22     App_QT_SOURCES
23     ImageMPR.cxx
24     )
25   SET(
26     App_SOURCES
27     MementoState.cxx
28     main.cxx
29     )
30   SET(
31     App_QT_HEADERS
32     ImageMPR.h
33     )
34   SET(
35     App_HEADERS
36     MementoState.h
37     )
38   FILE(GLOB App_QT_UI  "${App_SOURCE_DIR}/*.ui")
39   FILE(GLOB App_QT_RES "${App_SOURCE_DIR}/*.qrc")
40
41   ## =====================
42   ## = Compilation rules =
43   ## =====================
44
45   INCLUDE_DIRECTORIES(
46     ${App_BINARY_DIR}
47     )
48
49   QT4_WRAP_UI(App_QT_UI_Headers ${App_QT_UI})
50   QT4_WRAP_CPP(App_QT_HEADERS_MOC_SOURCES ${App_QT_HEADERS})
51   QT4_ADD_RESOURCES(App_QT_RES_SOURCES ${App_QT_RES})
52
53   SET(GUI_TYPE "")
54   IF(WIN32)
55     SET(GUI_TYPE WIN32)
56   ENDIF(WIN32)
57   IF(APPLE)
58     SET(GUI_TYPE MACOSX_BUNDLE)
59   ENDIF(APPLE)
60
61   ADD_EXECUTABLE(
62     ${App_NAME}
63     ${GUI_TYPE}
64     ${App_QT_UI_Headers}
65     ${App_SOURCES}
66     ${App_QT_SOURCES}
67     ${App_QT_HEADERS_MOC_SOURCES}
68     ${App_QT_RES_SOURCES}
69     )
70   TARGET_LINK_LIBRARIES(
71     ${App_NAME}
72     ${QT_LIBRARIES}
73     cpExtensions
74     cpPlugins_Interface
75         )
76 ENDIF(USE_QT4)
77
78 ## eof - $RCSfile$
79
80 ##===================================================
81 ## cpPack
82 ##===================================================
83 ## It´s configured for windows
84 ## TODO: check rpm and deb configuration for linux
85 ##
86
87 set(QT_PACKAGE_LIBRARIES 
88    C:/src/qt/qt4.8.6/bin/QtCore4.dll
89    C:/src/qt/qt4.8.6/bin/QtCored4.dll
90    C:/src/qt/qt4.8.6/bin/QtDeclarative4.dll
91    C:/src/qt/qt4.8.6/bin/QtDeclaratived4.dll
92    C:/src/qt/qt4.8.6/bin/QtDesigner4.dll
93    C:/src/qt/qt4.8.6/bin/QtDesignerComponents4.dll
94    C:/src/qt/qt4.8.6/bin/QtDesignerComponentsd4.dll
95    C:/src/qt/qt4.8.6/bin/QtDesignerd4.dll
96    C:/src/qt/qt4.8.6/bin/QtGui4.dll
97    C:/src/qt/qt4.8.6/bin/QtGuid4.dll
98    C:/src/qt/qt4.8.6/bin/QtHelp4.dll
99    C:/src/qt/qt4.8.6/bin/QtHelpd4.dll
100    C:/src/qt/qt4.8.6/bin/QtMultimedia4.dll
101    C:/src/qt/qt4.8.6/bin/QtMultimediad4.dll
102    C:/src/qt/qt4.8.6/bin/QtNetwork4.dll
103    C:/src/qt/qt4.8.6/bin/QtNetworkd4.dll
104    C:/src/qt/qt4.8.6/bin/QtOpenGL4.dll
105    C:/src/qt/qt4.8.6/bin/QtOpenGLd4.dll
106    C:/src/qt/qt4.8.6/bin/QtScript4.dll
107    C:/src/qt/qt4.8.6/bin/QtScriptd4.dll
108    C:/src/qt/qt4.8.6/bin/QtScriptTools4.dll
109    C:/src/qt/qt4.8.6/bin/QtScriptToolsd4.dll
110    C:/src/qt/qt4.8.6/bin/QtSql4.dll
111    C:/src/qt/qt4.8.6/bin/QtSqld4.dll
112    C:/src/qt/qt4.8.6/bin/QtSvg4.dll
113    C:/src/qt/qt4.8.6/bin/QtSvgd4.dll
114    C:/src/qt/qt4.8.6/bin/QtTest4.dll
115    C:/src/qt/qt4.8.6/bin/QtTestd4.dll
116    C:/src/qt/qt4.8.6/bin/QtXml4.dll
117    C:/src/qt/qt4.8.6/bin/QtXmld4.dll
118    C:/src/qt/qt4.8.6/bin/QtXmlPatterns4.dll
119    C:/src/qt/qt4.8.6/bin/QtXmlPatternsd4.dll
120 )
121
122 set(ITK_PACKAGE_LIBRARIES 
123   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKCommon-4.8.dll
124   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOBioRad-4.8.dll
125   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOBMP-4.8.dll
126   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOGE-4.8.dll
127   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOGIPL-4.8.dll
128   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOHDF5-4.8.dll
129   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOImageBase-4.8.dll
130   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOIPL-4.8.dll
131   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOJPEG-4.8.dll
132   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOLSM-4.8.dll
133   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOMesh-4.8.dll
134   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOMeta-4.8.dll
135   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIONIFTI-4.8.dll
136   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIONRRD-4.8.dll
137   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOPNG-4.8.dll
138   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOSiemens-4.8.dll
139   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOStimulate-4.8.dll
140   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOTIFF-4.8.dll
141   C:/src/itk/4.8.0/build/bin/MinSizeRel/ITKIOVTK-4.8.dll
142 )
143
144 set(VTK_PACKAGE_LIBRARIES 
145   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkalglib-6.3.dll
146   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkChartsCore-6.3.dll
147   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonColor-6.3.dll
148   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonComputationalGeometry-6.3.dll
149   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonCore-6.3.dll
150   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonDataModel-6.3.dll
151   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonExecutionModel-6.3.dll
152   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonMath-6.3.dll
153   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonMisc-6.3.dll
154   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonSystem-6.3.dll
155   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkCommonTransforms-6.3.dll
156   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkDICOMParser-6.3.dll
157   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkDomainsChemistry-6.3.dll
158   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkexoIIc-6.3.dll
159   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkexpat-6.3.dll
160   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersAMR-6.3.dll
161   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersCore-6.3.dll
162   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersExtraction-6.3.dll
163   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersFlowPaths-6.3.dll
164   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersGeneral-6.3.dll
165   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersGeneric-6.3.dll
166   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersGeometry-6.3.dll
167   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersHybrid-6.3.dll
168   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersHyperTree-6.3.dll
169   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersImaging-6.3.dll
170   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersModeling-6.3.dll
171   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersParallel-6.3.dll
172   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersParallelImaging-6.3.dll
173   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersProgrammable-6.3.dll
174   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersSelection-6.3.dll
175   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersSMP-6.3.dll
176   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersSources-6.3.dll
177   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersStatistics-6.3.dll
178   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersTexture-6.3.dll
179   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkFiltersVerdict-6.3.dll
180   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkfreetype-6.3.dll
181   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkftgl-6.3.dll
182   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkGeovisCore-6.3.dll
183   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkgl2ps-6.3.dll
184   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkGUISupportQt-6.3.dll
185   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkGUISupportQtOpenGL-6.3.dll
186   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkhdf5-6.3.dll
187   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkhdf5_hl-6.3.dll
188   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingColor-6.3.dll
189   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingCore-6.3.dll
190   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingFourier-6.3.dll
191   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingGeneral-6.3.dll
192   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingHybrid-6.3.dll
193   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingMath-6.3.dll
194   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingMorphological-6.3.dll
195   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingSources-6.3.dll
196   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingStatistics-6.3.dll
197   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkImagingStencil-6.3.dll
198   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkInfovisCore-6.3.dll
199   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkInfovisLayout-6.3.dll
200   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkInteractionImage-6.3.dll
201   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkInteractionStyle-6.3.dll
202   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkInteractionWidgets-6.3.dll
203   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOAMR-6.3.dll
204   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOCore-6.3.dll
205   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOEnSight-6.3.dll
206   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOExodus-6.3.dll
207   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOExport-6.3.dll
208   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOGeometry-6.3.dll
209   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOImage-6.3.dll
210   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOImport-6.3.dll
211   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOInfovis-6.3.dll
212   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOLegacy-6.3.dll
213   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOLSDyna-6.3.dll
214   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOMINC-6.3.dll
215   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOMovie-6.3.dll
216   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIONetCDF-6.3.dll
217   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOParallel-6.3.dll
218   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOParallelXML-6.3.dll
219   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOPLY-6.3.dll
220   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOSQL-6.3.dll
221   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOVideo-6.3.dll
222   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOXML-6.3.dll
223   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkIOXMLParser-6.3.dll
224   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkjpeg-6.3.dll
225   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkjsoncpp-6.3.dll
226   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtklibxml2-6.3.dll
227   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkmetaio-6.3.dll
228   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkNetCDF-6.3.dll
229   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkNetCDF_cxx-6.3.dll
230   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkoggtheora-6.3.dll
231   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkParallelCore-6.3.dll
232   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkpng-6.3.dll
233   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkproj4-6.3.dll
234   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingAnnotation-6.3.dll
235   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingContext2D-6.3.dll
236   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingContextOpenGL-6.3.dll
237   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingCore-6.3.dll
238   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingFreeType-6.3.dll
239   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingGL2PS-6.3.dll
240   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingImage-6.3.dll
241   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingLabel-6.3.dll
242   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingLIC-6.3.dll
243   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingLOD-6.3.dll
244   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingOpenGL-6.3.dll
245   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingVolume-6.3.dll
246   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkRenderingVolumeOpenGL-6.3.dll
247   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtksys-6.3.dll
248   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtktiff-6.3.dll
249   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkverdict-6.3.dll
250   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkViewsContext2D-6.3.dll
251   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkViewsCore-6.3.dll
252   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkViewsInfovis-6.3.dll
253   C:/src/vtk/6.3.0/build/bin/MinSizeRel/vtkzlib-6.3.dll
254 )
255
256 set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS 
257   ${QT_PACKAGE_LIBRARIES}  
258   ${ITK_PACKAGE_LIBRARIES}
259   ${VTK_PACKAGE_LIBRARIES}
260 )
261
262 # Tell CMake to copy CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS content into the package
263 include(InstallRequiredSystemLibraries)
264     
265
266 set(CPACK_PACKAGE_NAME "cpPluginsMprViewer")
267 set(CPACK_PACKAGE_VENDOR "Creatis")
268 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "cpPlugins - MPR-Viewer")
269 set(CPACK_PACKAGE_VERSION "1.0.0")
270 set(CPACK_PACKAGE_VERSION_MAJOR "1")
271 set(CPACK_PACKAGE_VERSION_MINOR "0")
272 set(CPACK_PACKAGE_VERSION_PATCH "0")
273 set(CPACK_PACKAGE_INSTALL_DIRECTORY "MPR-Viewer")
274
275 install(TARGETS ImageMPR
276    RUNTIME
277    DESTINATION bin
278    COMPONENT applications)
279
280 set(CPACK_COMPONENT_APPLICATIONS_DISPLAY_NAME "Standard MPR viewer application")
281
282 #set (CPACK_NSIS_MODIFY_PATH "ON")
283 SET( CPACK_PACKAGE_EXECUTABLES ImageMPR ImageMPR ) 
284 SET( CPACK_CREATE_DESKTOP_LINKS ImageMPR ) 
285
286 INCLUDE(CPack)