X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FCMakeLists.txt;h=a32e582c36e6de283165fb12348d69658fe28b94;hb=2b4229b2e82be6bd48817b0171afb2d69a9e9758;hp=0780ef82c1b8e75e2b2a18af7f84c20f2c639e3d;hpb=af096ff87ff2196adae5e1ca9f55f1fbbbb1f2d2;p=clitk.git diff --git a/vv/CMakeLists.txt b/vv/CMakeLists.txt index 0780ef8..a32e582 100644 --- a/vv/CMakeLists.txt +++ b/vv/CMakeLists.txt @@ -21,6 +21,7 @@ SET(vv_SRCS vvSurfaceViewerDialog.cxx vvMainWindowBase.cxx vvMainWindow.cxx + vvProgressDialog.cxx vvDeformationDialog.cxx vvImageWarp.cxx vvDeformableRegistration.cxx @@ -46,9 +47,11 @@ SET(vv_SRCS vvMidPosition.cxx vvImageMapToWLColors.cxx vvIntensityValueSlider.cxx + vvThreadedFilter.cxx vvToolManager.cxx vvToolCreatorBase.cxx vvToolWidgetBase.cxx +# vvToolWidgetWithStepsBase.cxx vvToolMedianFilter.cxx vvToolRigidReg.cxx # vvToolFoo.cxx @@ -66,6 +69,10 @@ SET(vv_SRCS vvROIActor.cxx vvToolResample.cxx vvBlendImageActor.cxx + vvLabelImageLoaderWidget.cxx + vvToolExtractLung.cxx + vvToolPlastimatch.cxx +# vvToolConnectedComponentLabeling.cxx ) #========================================================= @@ -91,6 +98,7 @@ QT4_WRAP_CPP(vv_SRCS vvSlicerManager.h vvStructSelector.h vvIntensityValueSlider.h + vvThreadedFilter.h vvToolCreatorBase.h # vvToolFoo.h # vvToolFooWithWidgetBase.h @@ -100,6 +108,7 @@ QT4_WRAP_CPP(vv_SRCS vvToolSimpleInputSelectorWidget.h vvToolInputSelectorWidget.h vvToolWidgetBase.h +# vvToolWidgetWithStepsBase.h vvToolCropImage.h vvToolImageArithm.h vvToolConvert.h @@ -107,6 +116,10 @@ QT4_WRAP_CPP(vv_SRCS vvStructureSetActor.h vvROIActor.h vvToolResample.h + vvLabelImageLoaderWidget.h + vvToolExtractLung.h + vvToolPlastimatch.h +# vvToolConnectedComponentLabeling.h ) QT4_WRAP_UI(vv_UI_CXX @@ -125,9 +138,10 @@ QT4_WRAP_UI(vv_UI_CXX qt_ui/vvStructSelector.ui qt_ui/vvDummyWindow.ui #For testing qt_ui/vvIntensityValueSlider.ui - qt_ui/vvToolSimpleInputSelectorWidget.ui +# qt_ui/vvToolSimpleInputSelectorWidget.ui qt_ui/vvToolInputSelectorWidget.ui qt_ui/vvToolWidgetBase.ui +# qt_ui/vvToolWidgetWithStepsBase.ui qt_ui/vvToolMedianFilter.ui qt_ui/vvToolRigidReg.ui # qt_ui/vvToolFoo.ui @@ -136,11 +150,29 @@ QT4_WRAP_UI(vv_UI_CXX qt_ui/vvToolImageArithm.ui qt_ui/vvToolStructureSetManager.ui qt_ui/vvToolResample.ui + qt_ui/vvLabelImageLoaderWidget.ui + qt_ui/vvToolExtractLung.ui + qt_ui/vvToolPlastimatch.ui +# qt_ui/vvToolConnectedComponentLabeling.ui ) QT4_ADD_RESOURCES(vv_SRCS vvIcons.qrc) -ADD_DEFINITIONS(-DQT_DLL) + +# if Windows and Qt was built as a static lib then don't set QT_DLL flag +SET(QT_STATIC 0) +IF (WIN32) + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.prl) + FILE(READ ${QT_LIBRARY_DIR}/QtCore.prl QT_CORE_PRL) + IF(${QT_CORE_PRL} MATCHES "static") + SET(QT_STATIC 1) + ENDIF(${QT_CORE_PRL} MATCHES "static") + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.prl) +ENDIF(WIN32) +IF(NOT QT_STATIC) + ADD_DEFINITIONS(-DQT_DLL) +ENDIF(NOT QT_STATIC) + ADD_DEFINITIONS(-DQT_THREAD_SUPPORT) INCLUDE_DIRECTORIES( @@ -157,7 +189,7 @@ INCLUDE_DIRECTORIES( #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") + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp") ENDIF(CMAKE_COMPILER_IS_GNUCC) ENDIF(NOT __APPLE__) #========================================================= @@ -166,56 +198,44 @@ ENDIF(NOT __APPLE__) INCLUDE_DIRECTORIES( ../common ../tools + ../segmentation ) +IF(WIN32) + SET(EXE_ICON vvIcon.rc) +ENDIF(WIN32) + LINK_DIRECTORIES(${QT_INCLUDES}) ADD_EXECUTABLE(vv ${vv_SRCS} vv.cxx ${vv_UI_CXX} ${EXE_ICON}) -TARGET_LINK_LIBRARIES(vv clitkCommon clitkDicomRTStruct clitkFilters ${ITK_LIBRARIES} QVTK vtkHybrid) +TARGET_LINK_LIBRARIES(vv clitkCommon clitkDicomRTStruct clitkFilters clitkSegmentationFilters ${ITK_LIBRARIES} QVTK vtkHybrid) -IF (CLITK_VV_USE_BDCM) - TARGET_LINK_LIBRARIES(vv bdcm) -ENDIF (CLITK_VV_USE_BDCM) #========================================================= #========================================================= # Install options (also used by CPack) IF(UNIX AND NOT APPLE) - INSTALL(TARGETS vv - DESTINATION .) + INSTALL (FILES ${EXECUTABLE_OUTPUT_PATH}/vv DESTINATION . PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE) + INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/ducky.png DESTINATION .) + #QT - FOREACH(LIB QtCore QtGui QtOpenGL QtWebKit QtXmlPatterns QtNetwork QtSql) - INSTALL(FILES "${QT_LIBRARY_DIR}/lib${LIB}.so.${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH}" - RENAME "lib${LIB}.so.${QT_VERSION_MAJOR}" - DESTINATION .) - ENDFOREACH(LIB) - - #VTK - FOREACH(LIB QVTK vtkQtChart vtkViews vtkInfovis vtkWidgets vtkHybrid vtkRendering vtkImaging vtkGraphics vtkverdict - vtkIO vtkFiltering vtkCommon vtkDICOMParser vtkmetaio vtksqlite vtkpng vtktiff vtkjpeg vtkexpat vtksys - vtkftgl vtkfreetype vtkexoIIc vtkNetCDF vtklibxml2 vtkzlib vtkalglib) - INSTALL(FILES "${VTK_DIR}/bin/lib${LIB}.so.${VTK_VERSION_MAJOR}.${VTK_VERSION_MINOR}.0" - RENAME "lib${LIB}.so.${VTK_VERSION_MAJOR}.${VTK_VERSION_MINOR}" - DESTINATION .) - ENDFOREACH(LIB) - - #ITK - FOREACH(LIB ITKAlgorithms ITKStatistics ITKFEM itkNetlibSlatec ITKNumerics ITKBasicFilters ITKIO ITKNrrdIO itkgdcm - itkjpeg12 itkjpeg16 itkopenjpeg itkpng itktiff itkjpeg8 ITKSpatialObject ITKCommon itkvnl_inst - itkvnl_algo itkv3p_netlib itkvnl itkvcl ITKMetaIO itksys ITKDICOMParser ITKEXPAT ITKniftiio ITKznz itkzlib) - INSTALL(FILES "${ITK_DIR}/bin/lib${LIB}.so.${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.0" - RENAME "lib${LIB}.so.${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}" - DESTINATION .) - ENDFOREACH(LIB) + #FOREACH(LIB QtCore QtGui QtOpenGL QtNetwork QtSql) + # INSTALL(FILES "${QT_LIBRARY_DIR}/lib${LIB}.so.${QT_VERSION_MAJOR}.${QT_VERSION_MINOR}.${QT_VERSION_PATCH}" + # RENAME "lib${LIB}.so.${QT_VERSION_MAJOR}" + # DESTINATION .) + #ENDFOREACH(LIB) ENDIF(UNIX AND NOT APPLE) IF(WIN32) - SET(EXE_ICON vvIcon.rc) + #INCLUDE(InstallRequiredSystemLibraries) + INSTALL(FILES ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_BUILD_TYPE}/vv.exe DESTINATION .) + #INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/icons/ducky.png DESTINATION .) ENDIF(WIN32) +#========================================================= #========================================================= # CPack options -INCLUDE(InstallRequiredSystemLibraries) - +SET(CPACK_PACKAGE_NAME "vv") +SET(CPACK_SOURCE_PACKAGE_FILE_NAME "vv-src") SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "vv, the 4D slicer : let's jump into a new dimension !") SET(CPACK_PACKAGE_VENDOR "Creatis-CLB") SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/ReadMe.txt") @@ -224,18 +244,23 @@ SET(CPACK_PACKAGE_VERSION_MAJOR "1") SET(CPACK_PACKAGE_VERSION_MINOR "1") SET(CPACK_PACKAGE_VERSION_PATCH "0") SET(CPACK_PACKAGE_INSTALL_DIRECTORY "vv") -#IF(WIN32 AND NOT UNIX) + +IF(WIN32) # 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/${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") -# SET(CPACK_NSIS_MODIFY_PATH ON) -#ELSE(WIN32 AND NOT UNIX) -# SET(CPACK_STRIP_FILES "bin/vv") -# SET(CPACK_SOURCE_STRIP_FILES "") -#ENDIF(WIN32 AND NOT UNIX) -SET(CPACK_PACKAGE_EXECUTABLES "vv" "vv") + SET(CPACK_NSIS_MUI_ICON "${CMAKE_CURRENT_SOURCE_DIR}\\\\icons\\\\ducky.ico") + SET(CPACK_NSIS_INSTALLED_ICON_NAME "${CMAKE_BUILD_TYPE}\\\\vv.exe") + SET(CPACK_NSIS_DISPLAY_NAME "vv - The 4D slicer") + SET(CPACK_NSIS_HELP_LINK "http://www.creatis.insa-lyon.fr/rio/vv") + SET(CPACK_NSIS_URL_INFO_ABOUT "http://www.creatis.insa-lyon.fr/rio") + SET(CPACK_NSIS_CONTACT "vv@creatis.insa-lyon.fr") + SET(CPACK_NSIS_CREATE_ICONS_EXTRA "CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\vv.lnk\\\" \\\"$INSTDIR\\\\vv.exe\\\" ") + SET(CPACK_NSIS_DELETE_ICONS_EXTRA "Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\vv.lnk\\\" ") + #SET(CPACK_NSIS_MODIFY_PATH ON) SR: buggy, wait for cmake updates for a fix + #SET(CPACK_BINARY_ZIP ON) +ELSE(WIN32) + SET(CPACK_GENERATOR "STGZ") + SET(CPACK_SOURCE_GENERATOR "TGZ") +ENDIF(WIN32) INCLUDE(CPack) +#=========================================================