95 lines
3.4 KiB
CMake
95 lines
3.4 KiB
CMake
# Get the latest git tag.
|
|
set(PADDLE_VERSION $ENV{PADDLE_VERSION})
|
|
|
|
if(NOT PADDLE_VERSION)
|
|
file(READ "${CMAKE_SOURCE_DIR}/version.txt" PADDLE_VERSION)
|
|
string(STRIP "${PADDLE_VERSION}" PADDLE_VERSION)
|
|
|
|
message(STATUS "Paddle version from version.txt: ${PADDLE_VERSION}")
|
|
execute_process(
|
|
COMMAND ${GIT_EXECUTABLE} show -s --format=%ci HEAD
|
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
|
OUTPUT_VARIABLE GIT_COMMIT_TIME
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
string(REGEX REPLACE " (.*)$" "" DATE_ONLY "${GIT_COMMIT_TIME}")
|
|
string(REPLACE "-" "" DATE_ONLY "${DATE_ONLY}")
|
|
# Print the last commit date
|
|
message(STATUS "Last commit date: ${DATE_ONLY}")
|
|
|
|
execute_process(
|
|
COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD
|
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
|
OUTPUT_VARIABLE GIT_BRANCH_NAME
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
message(STATUS "Current branch: ${GIT_BRANCH_NAME}")
|
|
|
|
execute_process(
|
|
COMMAND ${GIT_EXECUTABLE} rev-parse --short=11 HEAD
|
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
|
OUTPUT_VARIABLE GIT_COMMIT_HASH
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
message(STATUS "Commit hash: ${GIT_COMMIT_HASH}")
|
|
|
|
if(GIT_BRANCH_NAME STREQUAL "develop")
|
|
set(PADDLE_VERSION "${PADDLE_VERSION}.dev${DATE_ONLY}")
|
|
elseif(GIT_BRANCH_NAME MATCHES "^release")
|
|
set(PADDLE_VERSION "${PADDLE_VERSION}.post${DATE_ONLY}+${GIT_COMMIT_HASH}")
|
|
else()
|
|
set(PADDLE_VERSION "${PADDLE_VERSION}.dev${DATE_ONLY}")
|
|
endif()
|
|
message(STATUS "Final Paddle version: ${PADDLE_VERSION}")
|
|
endif()
|
|
|
|
string(REPLACE "-" "." PADDLE_VER_LIST ${PADDLE_VERSION})
|
|
string(REPLACE "." ";" PADDLE_VER_LIST ${PADDLE_VER_LIST})
|
|
list(GET PADDLE_VER_LIST 0 PADDLE_MAJOR_VER)
|
|
list(GET PADDLE_VER_LIST 1 PADDLE_MINOR_VER)
|
|
list(GET PADDLE_VER_LIST 2 PADDLE_PATCH_VER)
|
|
|
|
math(EXPR PADDLE_VERSION_INTEGER "${PADDLE_MAJOR_VER} * 1000000
|
|
+ ${PADDLE_MINOR_VER} * 1000 + ${PADDLE_PATCH_VER}")
|
|
|
|
add_definitions(-DPADDLE_VERSION=${PADDLE_VERSION})
|
|
add_definitions(-DPADDLE_VERSION_INTEGER=${PADDLE_VERSION_INTEGER})
|
|
message(STATUS "Paddle version is ${PADDLE_VERSION}")
|
|
|
|
# write paddle version
|
|
function(version version_file)
|
|
execute_process(
|
|
COMMAND ${GIT_EXECUTABLE} log --pretty=format:%H -1
|
|
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}
|
|
OUTPUT_VARIABLE PADDLE_GIT_COMMIT)
|
|
file(
|
|
WRITE ${version_file}
|
|
"Paddle version: ${PADDLE_VERSION}\n"
|
|
"GIT COMMIT ID: ${PADDLE_GIT_COMMIT}\n"
|
|
"WITH_MKL: ${WITH_MKL}\n"
|
|
"WITH_ONEDNN: ${WITH_ONEDNN}\n"
|
|
"WITH_OPENVINO: ${WITH_OPENVINO}\n"
|
|
"WITH_GPU: ${WITH_GPU}\n"
|
|
"WITH_ROCM: ${WITH_ROCM}\n"
|
|
"WITH_IPU: ${WITH_IPU}\n")
|
|
if(WITH_GPU)
|
|
file(APPEND ${version_file}
|
|
"CUDA version: ${CUDA_VERSION}\n"
|
|
"CUDNN version: v${CUDNN_MAJOR_VERSION}.${CUDNN_MINOR_VERSION}\n")
|
|
endif()
|
|
if(WITH_ROCM)
|
|
file(APPEND ${version_file}
|
|
"HIP version: v${HIP_MAJOR_VERSION}.${HIP_MINOR_VERSION}\n"
|
|
"MIOpen version: v${MIOPEN_MAJOR_VERSION}.${MIOPEN_MINOR_VERSION}\n")
|
|
endif()
|
|
if(WITH_IPU)
|
|
file(APPEND ${version_file} "PopART version: ${POPART_VERSION}\n")
|
|
endif()
|
|
file(APPEND ${version_file}
|
|
"CXX compiler version: ${CMAKE_CXX_COMPILER_VERSION}\n")
|
|
if(TENSORRT_FOUND)
|
|
file(
|
|
APPEND ${version_file}
|
|
"WITH_TENSORRT: ${TENSORRT_FOUND}\n"
|
|
"TensorRT version: v${TENSORRT_MAJOR_VERSION}.${TENSORRT_MINOR_VERSION}.${TENSORRT_PATCH_VERSION}.${TENSORRT_BUILD_VERSION}\n"
|
|
)
|
|
endif()
|
|
endfunction()
|