OpenIGTLink.cmake 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #
  2. # OpenIGTLink
  3. #
  4. ctkMacroShouldAddExternalproject(OpenIGTLink_LIBRARIES add_project)
  5. if(${add_project})
  6. # Sanity checks
  7. if(DEFINED OpenIGTLink_DIR AND NOT EXISTS ${OpenIGTLink_DIR})
  8. message(FATAL_ERROR "OpenIGTLink_DIR variable is defined but corresponds to non-existing directory")
  9. endif()
  10. set(OpenIGTLink_enabling_variable OpenIGTLink_LIBRARIES)
  11. set(proj OpenIGTLink)
  12. set(proj_DEPENDENCIES)
  13. list(APPEND CTK_DEPENDENCIES ${proj})
  14. set(${OpenIGTLink_enabling_variable}_LIBRARY_DIRS OpenIGTLink_LIBRARY_DIRS)
  15. set(${OpenIGTLink_enabling_variable}_INCLUDE_DIRS OpenIGTLink_INCLUDE_DIRS)
  16. set(${OpenIGTLink_enabling_variable}_FIND_PACKAGE_CMD OpenIGTLink)
  17. if(CTK_SUPERBUILD)
  18. if(NOT DEFINED OpenIGTLink_DIR)
  19. # Set CMake OSX variable to pass down the external project
  20. set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
  21. if(APPLE)
  22. list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
  23. -DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
  24. -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}
  25. -DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET})
  26. endif()
  27. # message(STATUS "Adding project:${proj}")
  28. ExternalProject_Add(${proj}
  29. SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
  30. BINARY_DIR ${proj}-build
  31. PREFIX ${proj}${ep_suffix}
  32. SVN_REPOSITORY "http://svn.na-mic.org/NAMICSandBox/trunk/OpenIGTLink"
  33. INSTALL_COMMAND ""
  34. CMAKE_GENERATOR ${gen}
  35. CMAKE_CACHE_ARGS
  36. -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
  37. -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
  38. -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
  39. -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
  40. ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
  41. DEPENDS
  42. ${proj_DEPENDENCIES}
  43. )
  44. set(OpenIGTLink_DIR ${CMAKE_BINARY_DIR}/${proj}-build)
  45. else()
  46. ctkMacroEmptyExternalproject(${proj} "${proj_DEPENDENCIES}")
  47. endif()
  48. list(APPEND CTK_SUPERBUILD_EP_VARS OpenIGTLink_DIR:PATH)
  49. endif()
  50. endif()