File-TIMESTAMP-NotBogus.cmake 760 B

12345678910111213141516171819202122232425
  1. set(STAMP_FILENAME "${CMAKE_CURRENT_BINARY_DIR}/FileTimestamp-Stamp")
  2. set(STAMP_FORMAT "%Y-%m-%d")
  3. unset(ENV{SOURCE_DATE_EPOCH})
  4. string(TIMESTAMP timestamp1 "${STAMP_FORMAT}")
  5. file(WRITE "${STAMP_FILENAME}" "foo")
  6. file(TIMESTAMP "${STAMP_FILENAME}" timestamp2 "${STAMP_FORMAT}")
  7. string(TIMESTAMP timestamp3 "${STAMP_FORMAT}")
  8. message(STATUS "timestamp1 [${timestamp1}]")
  9. message(STATUS "timestamp2 [${timestamp2}]")
  10. message(STATUS "timestamp3 [${timestamp3}]")
  11. if(timestamp1 STREQUAL timestamp3)
  12. if(NOT timestamp1 STREQUAL timestamp2)
  13. message(FATAL_ERROR
  14. "timestamp mismatch [${timestamp1}] != [${timestamp2}]")
  15. else()
  16. message("all timestamps match")
  17. endif()
  18. else()
  19. message(WARNING "this test may race when run at midnight")
  20. endif()