2017-05-27 16:01:49 +03:00
|
|
|
cmake_minimum_required (VERSION 3.4)
|
|
|
|
|
2018-03-13 23:55:07 +03:00
|
|
|
set (BARRIER_VERSION_MAJOR 2)
|
2021-11-01 23:46:43 +03:00
|
|
|
set (BARRIER_VERSION_MINOR 4)
|
|
|
|
set (BARRIER_VERSION_PATCH 0)
|
2020-07-14 20:37:45 +03:00
|
|
|
set (BARRIER_VERSION_STAGE "release")
|
2018-03-13 23:55:07 +03:00
|
|
|
|
2017-05-27 16:01:49 +03:00
|
|
|
#
|
2018-01-28 00:48:17 +03:00
|
|
|
# Barrier Version
|
2017-05-27 16:01:49 +03:00
|
|
|
#
|
2018-01-28 00:48:17 +03:00
|
|
|
if (NOT DEFINED BARRIER_VERSION_MAJOR)
|
|
|
|
if (DEFINED ENV{BARRIER_VERSION_MAJOR})
|
|
|
|
set (BARRIER_VERSION_MAJOR $ENV{BARRIER_VERSION_MAJOR})
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2019-10-03 04:26:26 +03:00
|
|
|
set (BARRIER_VERSION_MAJOR 2)
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (NOT DEFINED BARRIER_VERSION_MINOR)
|
|
|
|
if (DEFINED ENV{BARRIER_VERSION_MINOR})
|
|
|
|
set (BARRIER_VERSION_MINOR $ENV{BARRIER_VERSION_MINOR})
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2019-10-03 04:26:26 +03:00
|
|
|
set (BARRIER_VERSION_MINOR 3)
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (NOT DEFINED BARRIER_VERSION_PATCH)
|
|
|
|
if (DEFINED ENV{BARRIER_VERSION_PATCH})
|
|
|
|
set (BARRIER_VERSION_PATCH $ENV{BARRIER_VERSION_PATCH})
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2019-10-03 04:26:26 +03:00
|
|
|
set (BARRIER_VERSION_PATCH 2)
|
2018-01-28 00:48:17 +03:00
|
|
|
message (WARNING "Barrier version wasn't set. Set to ${BARRIER_VERSION_MAJOR}.${BARRIER_VERSION_MINOR}.${BARRIER_VERSION_PATCH}")
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (NOT DEFINED BARRIER_VERSION_STAGE)
|
|
|
|
if (DEFINED ENV{BARRIER_VERSION_STAGE})
|
|
|
|
set (BARRIER_VERSION_STAGE $ENV{BARRIER_VERSION_STAGE})
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2018-01-28 00:48:17 +03:00
|
|
|
set (BARRIER_VERSION_STAGE "snapshot")
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (NOT DEFINED BARRIER_REVISION)
|
2017-05-27 16:01:49 +03:00
|
|
|
if (DEFINED ENV{GIT_COMMIT})
|
2018-01-28 00:48:17 +03:00
|
|
|
string (SUBSTRING $ENV{GIT_COMMIT} 0 8 BARRIER_REVISION)
|
2018-03-01 18:57:13 +03:00
|
|
|
else()
|
2018-05-07 20:20:40 +03:00
|
|
|
find_program (GIT_BINARY git)
|
2018-05-14 19:55:03 +03:00
|
|
|
if (NOT GIT_BINARY STREQUAL "GIT_BINARY-NOTFOUND")
|
2018-05-07 20:20:40 +03:00
|
|
|
execute_process (
|
|
|
|
COMMAND git rev-parse --short=8 HEAD
|
|
|
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
|
|
|
OUTPUT_VARIABLE BARRIER_REVISION
|
|
|
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
|
|
)
|
|
|
|
endif()
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-05-14 19:55:03 +03:00
|
|
|
string(LENGTH "${BARRIER_REVISION}" BARRIER_REVISION_LENGTH)
|
|
|
|
if (NOT BARRIER_REVISION_LENGTH EQUAL 8 OR NOT BARRIER_REVISION MATCHES "^[a-f0-9]+")
|
|
|
|
set (BARRIER_REVISION "00000000")
|
|
|
|
message (WARNING "revision not found. setting to ${BARRIER_REVISION}")
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
2018-05-14 19:55:03 +03:00
|
|
|
unset (BARRIER_REVISION_LENGTH)
|
2017-05-27 16:01:49 +03:00
|
|
|
|
|
|
|
if (DEFINED ENV{BUILD_NUMBER})
|
2018-01-28 00:48:17 +03:00
|
|
|
set (BARRIER_BUILD_NUMBER $ENV{BUILD_NUMBER})
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2018-01-28 00:48:17 +03:00
|
|
|
set (BARRIER_BUILD_NUMBER 1)
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
string (TIMESTAMP BARRIER_BUILD_DATE "%Y%m%d" UTC)
|
|
|
|
set (BARRIER_SNAPSHOT_INFO ".${BARRIER_VERSION_STAGE}.${BARRIER_REVISION}")
|
2017-05-27 16:01:49 +03:00
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (BARRIER_VERSION_STAGE STREQUAL "snapshot")
|
|
|
|
set (BARRIER_VERSION_TAG "${BARRIER_VERSION_STAGE}.b${BARRIER_BUILD_NUMBER}-${BARRIER_REVISION}")
|
2017-05-27 16:01:49 +03:00
|
|
|
else()
|
2018-01-28 00:48:17 +03:00
|
|
|
set (BARRIER_VERSION_TAG "${BARRIER_VERSION_STAGE}")
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
|
2018-03-01 21:22:47 +03:00
|
|
|
set (BARRIER_VERSION "${BARRIER_VERSION_MAJOR}.${BARRIER_VERSION_MINOR}.${BARRIER_VERSION_PATCH}-${BARRIER_VERSION_STAGE}")
|
2018-01-28 00:48:17 +03:00
|
|
|
set (BARRIER_VERSION_STRING "${BARRIER_VERSION}-${BARRIER_VERSION_TAG}")
|
|
|
|
message (STATUS "Full Barrier version string is '" ${BARRIER_VERSION_STRING} "'")
|
2017-05-27 16:01:49 +03:00
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
add_definitions (-DBARRIER_VERSION="${BARRIER_VERSION}")
|
|
|
|
add_definitions (-DBARRIER_VERSION_STRING="${BARRIER_VERSION_STRING}")
|
2020-12-09 02:31:05 +03:00
|
|
|
add_definitions (-DBARRIER_VERSION_MAJOR=${BARRIER_VERSION_MAJOR})
|
|
|
|
add_definitions (-DBARRIER_VERSION_MINOR=${BARRIER_VERSION_MINOR})
|
|
|
|
add_definitions (-DBARRIER_VERSION_PATCH=${BARRIER_VERSION_PATCH})
|
2018-01-28 00:48:17 +03:00
|
|
|
add_definitions (-DBARRIER_REVISION="${BARRIER_REVISION}")
|
|
|
|
add_definitions (-DBARRIER_BUILD_DATE="${BARRIER_BUILD_DATE}")
|
|
|
|
add_definitions (-DBARRIER_BUILD_NUMBER=${BARRIER_BUILD_NUMBER})
|
2017-05-27 16:01:49 +03:00
|
|
|
|
2018-01-28 00:48:17 +03:00
|
|
|
if (BARRIER_DEVELOPER_MODE)
|
|
|
|
add_definitions (-DBARRIER_DEVELOPER_MODE=1)
|
2017-05-27 16:01:49 +03:00
|
|
|
endif()
|
|
|
|
|