LinkContentSHA1.cmake 926 B

12345678910111213141516171819202122
  1. include(ExternalData)
  2. set(ExternalData_LINK_CONTENT SHA1)
  3. set(ExternalData_SOURCE_ROOT ${CMAKE_CURRENT_BINARY_DIR})
  4. set(ExternalData_BINARY_ROOT ${CMAKE_CURRENT_BINARY_DIR}/ExternalData)
  5. set(input ${CMAKE_CURRENT_BINARY_DIR}/ToLink.txt)
  6. set(output ${CMAKE_CURRENT_BINARY_DIR}/ExternalData/ToLink.txt)
  7. set(staged "${CMAKE_CURRENT_BINARY_DIR}/.ExternalData_SHA1_114ee5dda251457fd2df63bec91d3b8db43aba58")
  8. file(REMOVE ${staged})
  9. file(REMOVE ${input}.sha1)
  10. file(WRITE ${input} "To be transformed into a content link.")
  11. ExternalData_Expand_Arguments(Data args DATA{${input}})
  12. if("x${args}" STREQUAL "x${output}")
  13. message(STATUS "Raw data correctly transformed to content link!")
  14. else()
  15. message(FATAL_ERROR "Data reference transformed to:\n ${args}\n"
  16. "but we expected:\n ${output}")
  17. endif()
  18. if(EXISTS "${staged}")
  19. message(STATUS "Staged content exists!")
  20. else()
  21. message(FATAL_ERROR "Staged content missing!")
  22. endif()