buildnumber.cmake 835 B

123456789101112131415161718192021222324252627282930
  1. # CMake build number module
  2. include_guard(GLOBAL)
  3. # Define build number cache file
  4. set(
  5. _BUILD_NUMBER_CACHE
  6. "${CMAKE_CURRENT_SOURCE_DIR}/cmake/.CMakeBuildNumber"
  7. CACHE INTERNAL
  8. "OBS build number cache file"
  9. )
  10. # Read build number from cache file or manual override
  11. if(NOT DEFINED PLUGIN_BUILD_NUMBER)
  12. if(EXISTS "${_BUILD_NUMBER_CACHE}")
  13. file(READ "${_BUILD_NUMBER_CACHE}" PLUGIN_BUILD_NUMBER)
  14. math(EXPR PLUGIN_BUILD_NUMBER "${PLUGIN_BUILD_NUMBER}+1")
  15. else()
  16. if("$ENV{CI}")
  17. if("$ENV{GITHUB_RUN_ID}")
  18. set(PLUGIN_BUILD_NUMBER "$ENV{GITHUB_RUN_ID}")
  19. elseif("$ENV{GITLAB_RUN_ID}")
  20. set(PLUGIN_BUILD_NUMBER "$ENV{GITLAB_RUN_ID}")
  21. else()
  22. set(PLUGIN_BUILD_NUMBER "1")
  23. endif()
  24. endif()
  25. endif()
  26. file(WRITE "${_BUILD_NUMBER_CACHE}" "${PLUGIN_BUILD_NUMBER}")
  27. endif()