X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FCMakeLists.txt;h=6c7f8fe2205baa40097fbce84d68bfc77c355070;hb=53f34203827ffcfad26158aaf9c7f2f76822c050;hp=b68ceaa2a3abeace304a87406a129a9050620611;hpb=931a42358442f4ee4f314613c991c838d4b4e3b7;p=clitk.git diff --git a/vv/CMakeLists.txt b/vv/CMakeLists.txt index b68ceaa..6c7f8fe 100644 --- a/vv/CMakeLists.txt +++ b/vv/CMakeLists.txt @@ -1,13 +1,6 @@ cmake_minimum_required(VERSION 2.4) #========================================================= INCLUDE(${PROJECT_SOURCE_DIR}/cmake/common.cmake) -#========================================================= - -#Set a reasonable build mode default if the user hasn't set any -if (NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE RelWithDebInfo) -endif (NOT CMAKE_BUILD_TYPE) - #========================================================= # Find ITK (required) FIND_PACKAGE(ITK) @@ -33,9 +26,14 @@ INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ../common + ../tools ) #========================================================= +# To avoid warning with some version +if(COMMAND cmake_policy) + cmake_policy(SET CMP0003 NEW) +endif(COMMAND cmake_policy) #SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/bin) #SET(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH}/../lib) @@ -44,6 +42,7 @@ INCLUDE_DIRECTORIES( LINK_LIBRARIES ( #ITKIO clitkCommon + clitkDicomRTStruct clitkFilters ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} @@ -54,13 +53,14 @@ LINK_LIBRARIES ( vtkGraphics vtkWidgets vtkImaging + QVTK ) LINK_DIRECTORIES(${QT_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR} ) #========================================================= -OPTION(CLITK_VV_USE_BDCM "Build vv with Dicom selector bdcm" OFF) +# OPTION(CLITK_VV_USE_BDCM "Build vv with Dicom selector bdcm" OFF) SET(vv_SRCS vvInfoPanel.cxx @@ -69,17 +69,13 @@ SET(vv_SRCS vvLandmarksPanel.cxx vvQProgressDialogITKCommand.cxx vvQDicomSeriesSelector.cxx - QVTKWidget.cxx QTreePushButton.cxx - vvResamplerDialog.cxx vvSegmentationDialog.cxx vvSurfaceViewerDialog.cxx + vvMainWindowBase.cxx vvMainWindow.cxx vvDeformationDialog.cxx - vvInit.cxx vvImageWarp.cxx - nkitkXDRImageIOFactory.cxx - nkitkXDRImageIOReader.cxx vvDeformableRegistration.cxx vtkVOXImageWriter.cxx vvInteractorStyleNavigator.cxx @@ -100,14 +96,33 @@ SET(vv_SRCS vvMeshActor.cxx vvMeshReader.cxx vvStructSelector.cxx - vvCropDialog.cxx vvMidPosition.cxx vvImageMapToWLColors.cxx + vvIntensityValueSlider.cxx + vvToolManager.cxx + vvToolCreatorBase.cxx + vvToolWidgetBase.cxx + vvToolMedianFilter.cxx + vvToolRigidReg.cxx +# vvToolFoo.cxx +# vvToolFooWithWidgetBase.cxx + vvToolCropImage.cxx + vvToolBinarize.cxx + vvToolSimpleInputSelectorWidget.cxx + vvToolInputSelectorWidget.cxx + vvImageContour.cxx + vvBinaryImageOverlayActor.cxx + vvToolImageArithm.cxx + vvToolConvert.cxx + vvToolStructureSetManager.cxx + vvStructureSetActor.cxx + vvROIActor.cxx + vvToolResample.cxx ) QT4_WRAP_CPP(vv_SRCS + vvMainWindowBase.h vvMainWindow.h - QVTKWidget.h QTreePushButton.h vvInfoPanel.h vvLinkPanel.h @@ -117,13 +132,28 @@ QT4_WRAP_CPP(vv_SRCS vvHelpDialog.h vvProgressDialog.h vvQDicomSeriesSelector.h - vvResamplerDialog.h vvSegmentationDialog.h vvSurfaceViewerDialog.h vvDeformationDialog.h vvSlicerManager.h vvStructSelector.h - vvCropDialog.h + vvIntensityValueSlider.h + vvToolCreatorBase.h +# vvToolFoo.h +# vvToolFooWithWidgetBase.h + vvToolMedianFilter.h + vvToolRigidReg.h + vvToolBinarize.h + vvToolSimpleInputSelectorWidget.h + vvToolInputSelectorWidget.h + vvToolWidgetBase.h + vvToolCropImage.h + vvToolImageArithm.h + vvToolConvert.h + vvToolStructureSetManager.h + vvStructureSetActor.h + vvROIActor.h + vvToolResample.h ) QT4_WRAP_UI(vv_UI_CXX @@ -138,11 +168,21 @@ QT4_WRAP_UI(vv_UI_CXX qt_ui/vvDicomSeriesSelector.ui qt_ui/vvSegmentationDialog.ui qt_ui/vvSurfaceViewerDialog.ui - qt_ui/vvResamplerDialog.ui qt_ui/vvDeformationDialog.ui qt_ui/vvStructSelector.ui - qt_ui/vvCropDialog.ui qt_ui/vvDummyWindow.ui #For testing + qt_ui/vvIntensityValueSlider.ui + qt_ui/vvToolSimpleInputSelectorWidget.ui + qt_ui/vvToolInputSelectorWidget.ui + qt_ui/vvToolWidgetBase.ui + qt_ui/vvToolMedianFilter.ui + qt_ui/vvToolRigidReg.ui +# qt_ui/vvToolFoo.ui + qt_ui/vvToolCropImage.ui + qt_ui/vvToolBinarize.ui + qt_ui/vvToolImageArithm.ui + qt_ui/vvToolStructureSetManager.ui + qt_ui/vvToolResample.ui ) SET(vvUI_RCCS vvIcons.qrc) @@ -150,32 +190,33 @@ QT4_ADD_RESOURCES(vv_SRCS ${vvUI_RCCS}) #========================================================= #support for parallel deformable registration with OpenMP +IF(NOT __APPLE__) IF(CMAKE_COMPILER_IS_GNUCC) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp -march=native") ENDIF(CMAKE_COMPILER_IS_GNUCC) - +ENDIF(NOT __APPLE__) #========================================================= -IF (CLITK_VV_USE_BDCM) - FIND_PACKAGE(bdcm) - IF(bdcm_FOUND) - INCLUDE(${bdcm_USE_FILE}) - ELSE(bdcm_FOUND) - MESSAGE(FATAL_ERROR - "Cannot build without BDCM. Please set BDCM_DIR.") - ENDIF(bdcm_FOUND) - #LINK_DIRECTORIES(/home/dsarrut/src/bdcm/build/) - #INCLUDE_DIRECTORIES(/home/dsarrut/src/bdcm/src2/) - - FIND_PACKAGE(GDCM) - IF(GDCM_FOUND) - INCLUDE(${GDCM_USE_FILE}) - ELSE(GDCM_FOUND) - MESSAGE(FATAL_ERROR - "Cannot build without GDCM. Please set GDCM_DIR.") - ENDIF(GDCM_FOUND) - -ENDIF (CLITK_VV_USE_BDCM) +# IF (CLITK_VV_USE_BDCM) +# FIND_PACKAGE(bdcm) +# IF(bdcm_FOUND) +# INCLUDE(${bdcm_USE_FILE}) +# ELSE(bdcm_FOUND) +# MESSAGE(FATAL_ERROR +# "Cannot build without BDCM. Please set BDCM_DIR.") +# ENDIF(bdcm_FOUND) +# #LINK_DIRECTORIES(/home/dsarrut/src/bdcm/build/) +# #INCLUDE_DIRECTORIES(/home/dsarrut/src/bdcm/src2/) + +# FIND_PACKAGE(GDCM) +# IF(GDCM_FOUND) +# INCLUDE(${GDCM_USE_FILE}) +# ELSE(GDCM_FOUND) +# MESSAGE(FATAL_ERROR +# "Cannot build without GDCM. Please set GDCM_DIR.") +# ENDIF(GDCM_FOUND) + +# ENDIF (CLITK_VV_USE_BDCM) IF(WIN32) SET(EXE_ICON vvIcon.rc) @@ -218,45 +259,51 @@ ENDIF (CLITK_VV_USE_BDCM) #========================================================= # Installation file INSTALL(TARGETS vv vv - RUNTIME DESTINATION bin CONFIGURATIONS relwithdebinfo - LIBRARY DESTINATION lib CONFIGURATIONS relwithdebinfo - ARCHIVE DESTINATION lib CONFIGURATIONS relwithdebinfo) + RUNTIME DESTINATION bin CONFIGURATIONS ${CMAKE_BUILD_TYPE} + LIBRARY DESTINATION lib CONFIGURATIONS ${CMAKE_BUILD_TYPE} + ARCHIVE DESTINATION lib CONFIGURATIONS ${CMAKE_BUILD_TYPE}) INSTALL(FILES ${vv_HDRS} DESTINATION include) IF(WIN32) - INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/ducky.png DESTINATION bin) - INSTALL (FILES ${EXECUTABLE_OUTPUT_PATH}relwithdebinfo/vv.exe DESTINATION bin) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/ducky.png DESTINATION bin) + INSTALL (FILES ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_BUILD_TYPE}/vv.exe DESTINATION bin) INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtCore4.dll DESTINATION bin) INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtGui4.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkCommon.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtksys.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkRendering.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkGraphics.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkImaging.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkFiltering.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkGenericFiltering.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkIO.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/verdict.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/QVTK.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/QVTKWidgetPlugin.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkDICOMParser.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkexoIIc.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkexpat.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkmetaio.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkftgl.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkfreetype.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkGenericFiltering.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkHybrid.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkInfovis.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkjpeg.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtklibxml2.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkNetCDF.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkpng.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtktiff.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkViews.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkVolumeRendering.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkWidgets.dll DESTINATION bin) - INSTALL (FILES ${VTK_DIR}/bin/relwithdebinfo/vtkzlib.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtWebKit4.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtOpenGL4.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/phonon4.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtXmlPatterns4.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtNetwork4.dll DESTINATION bin) + INSTALL (FILES ${QT_PLUGINS_DIR}/../bin/QtSql4.dll DESTINATION bin) + INSTALL (FILES ${ITK_DIR}/bin/${CMAKE_BUILD_TYPE}/itkCommon.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkCommon.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtksys.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkRendering.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkGraphics.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkImaging.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkFiltering.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkGenericFiltering.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkIO.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkverdict.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/QVTK.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkDICOMParser.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkexoIIc.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkexpat.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkmetaio.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkftgl.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkfreetype.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkHybrid.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkInfovis.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkjpeg.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtklibxml2.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkNetCDF.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkpng.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtktiff.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkViews.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkWidgets.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkzlib.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkQtChart.dll DESTINATION bin) + INSTALL (FILES ${VTK_DIR}/bin/${CMAKE_BUILD_TYPE}/vtkalglib.dll DESTINATION bin) ENDIF(WIN32) IF(UNIX) @@ -274,14 +321,14 @@ SET(CPACK_PACKAGE_VENDOR "Creatis, CLB/RIO Team") SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/ReadMe.txt") SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/License.txt") SET(CPACK_PACKAGE_VERSION_MAJOR "1") -SET(CPACK_PACKAGE_VERSION_MINOR "0") +SET(CPACK_PACKAGE_VERSION_MINOR "1") SET(CPACK_PACKAGE_VERSION_PATCH "0") SET(CPACK_PACKAGE_INSTALL_DIRECTORY "vv ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}") IF(WIN32 AND NOT UNIX) # There is a bug in NSI that does not handle full unix paths properly. Make # sure there is at least one set of four (4) backlasshes. - SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}\\\\ducky.png") - SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/relwithdebinfo\\\\vv.exe") +# SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}\\\\ducky.png") +# SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/${CMAKE_BUILD_TYPE}\\\\vv.exe") SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} The 4D slicer") SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/rio") SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/rio")