VTK.cmake 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #
  2. # VTK
  3. #
  4. SET (VTK_DEPENDS)
  5. ctkMacroShouldAddExternalProject(VTK_LIBRARIES add_project)
  6. IF(${add_project})
  7. # Sanity checks
  8. IF(DEFINED VTK_DIR AND NOT EXISTS ${VTK_DIR})
  9. MESSAGE(FATAL_ERROR "VTK_DIR variable is defined but corresponds to non-existing directory")
  10. ENDIF()
  11. SET(additional_vtk_cmakevars )
  12. IF(MINGW)
  13. SET(additional_vtk_cmakevars "-DCMAKE_USE_PTHREADS:BOOL=OFF")
  14. ENDIF()
  15. SET(proj VTK)
  16. SET(proj_DEPENDENCIES)
  17. SET(VTK_DEPENDS ${proj})
  18. IF(NOT DEFINED VTK_DIR)
  19. # MESSAGE(STATUS "Adding project:${proj}")
  20. ExternalProject_Add(${proj}
  21. GIT_REPOSITORY ${git_protocol}://vtk.org/VTK.git
  22. INSTALL_COMMAND ""
  23. CMAKE_GENERATOR ${gen}
  24. CMAKE_ARGS
  25. ${ep_common_args}
  26. ${additional_vtk_cmakevars}
  27. -DVTK_WRAP_TCL:BOOL=OFF
  28. -DVTK_WRAP_PYTHON:BOOL=OFF
  29. -DVTK_WRAP_JAVA:BOOL=OFF
  30. -DBUILD_SHARED_LIBS:BOOL=ON
  31. -DDESIRED_QT_VERSION:STRING=4
  32. -DVTK_USE_GUISUPPORT:BOOL=ON
  33. -DVTK_USE_QVTK_QTOPENGL:BOOL=ON
  34. -DVTK_USE_QT:BOOL=ON
  35. -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
  36. DEPENDS
  37. ${proj_DEPENDENCIES}
  38. )
  39. SET(VTK_DIR ${ep_build_dir}/${proj})
  40. # Since the link directories associated with VTK is used, it makes sens to
  41. # update CTK_EXTERNAL_LIBRARY_DIRS with its associated library output directory
  42. LIST(APPEND CTK_EXTERNAL_LIBRARY_DIRS ${VTK_DIR}/bin)
  43. ELSE()
  44. ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
  45. ENDIF()
  46. ENDIF()