| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- set(BUILD_NUMBER 0)
- set(BUILD_COMMIT "unknown")
- set(BUILD_COMPILER "unknown")
- set(BUILD_TARGET "unknown")
- # Look for git
- find_package(Git)
- if(NOT Git_FOUND)
- find_program(GIT_EXECUTABLE NAMES git git.exe)
- if(GIT_EXECUTABLE)
- set(Git_FOUND TRUE)
- message(STATUS "Found Git: ${GIT_EXECUTABLE}")
- else()
- message(WARNING "Git not found. Build info will not be accurate.")
- endif()
- endif()
- # Get the commit count and hash
- if(Git_FOUND)
- execute_process(
- COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- OUTPUT_VARIABLE HEAD
- OUTPUT_STRIP_TRAILING_WHITESPACE
- RESULT_VARIABLE RES
- )
- if (RES EQUAL 0)
- set(BUILD_COMMIT ${HEAD})
- endif()
- execute_process(
- COMMAND ${GIT_EXECUTABLE} rev-list --count HEAD
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
- OUTPUT_VARIABLE COUNT
- OUTPUT_STRIP_TRAILING_WHITESPACE
- RESULT_VARIABLE RES
- )
- if (RES EQUAL 0)
- set(BUILD_NUMBER ${COUNT})
- endif()
- endif()
- if(MSVC)
- set(BUILD_COMPILER "${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION}")
- if (CMAKE_VS_PLATFORM_NAME)
- set(BUILD_TARGET ${CMAKE_VS_PLATFORM_NAME})
- else()
- set(BUILD_TARGET "${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_PROCESSOR}")
- endif()
- else()
- execute_process(
- COMMAND ${CMAKE_C_COMPILER} --version
- OUTPUT_VARIABLE OUT
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
- string(REGEX REPLACE " *\n.*" "" OUT "${OUT}")
- set(BUILD_COMPILER ${OUT})
- execute_process(
- COMMAND ${CMAKE_C_COMPILER} -dumpmachine
- OUTPUT_VARIABLE OUT
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
- set(BUILD_TARGET ${OUT})
- endif()
|