2022-07-04 03:09:56 +02:00
|
|
|
include("../version.cmake")
|
|
|
|
|
|
2023-04-23 01:45:55 +02:00
|
|
|
function(compare_test)
|
2022-07-04 03:09:56 +02:00
|
|
|
cmake_parse_arguments(
|
|
|
|
|
PARSE_ARGV 1
|
2022-07-05 02:22:28 +02:00
|
|
|
_6edc8bbd
|
2023-04-23 01:45:55 +02:00
|
|
|
"FAIL"
|
|
|
|
|
""
|
2022-07-04 03:09:56 +02:00
|
|
|
""
|
|
|
|
|
)
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_TEST_ERROR)
|
|
|
|
|
if(_6edc8bbd_FAIL)
|
2022-07-04 03:09:56 +02:00
|
|
|
message(STATUS "PASSED: '${ARGV0}'.\n\t${_TEST_ERROR}")
|
|
|
|
|
else()
|
|
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}'.\n\t${_TEST_ERROR}")
|
|
|
|
|
endif()
|
|
|
|
|
else()
|
2022-07-05 02:22:28 +02:00
|
|
|
if((ARGV0 STREQUAL _TEST) AND (NOT _6edc8bbd_FAIL))
|
2022-07-04 03:09:56 +02:00
|
|
|
message(STATUS "PASSED: '${ARGV0}'.")
|
|
|
|
|
else()
|
|
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}' != '${_TEST}'.")
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
|
|
function(test_parse)
|
|
|
|
|
cmake_parse_arguments(
|
|
|
|
|
PARSE_ARGV 1
|
2022-07-05 02:22:28 +02:00
|
|
|
_6edc8bbd
|
2022-07-04 03:09:56 +02:00
|
|
|
"FAIL"
|
|
|
|
|
"MAJOR;MINOR;PATCH;TWEAK;PRERELEASE;BUILD"
|
|
|
|
|
""
|
|
|
|
|
)
|
|
|
|
|
version(PARSE _TEST "${ARGV0}")
|
|
|
|
|
|
|
|
|
|
set(FAILED OFF)
|
|
|
|
|
set(MESSAGE "${_TEST_ERROR}")
|
2022-07-05 02:22:28 +02:00
|
|
|
if(NOT _TEST_ERROR)
|
|
|
|
|
if(_6edc8bbd_MAJOR)
|
|
|
|
|
if(NOT _TEST_MAJOR)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "MAJOR component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_MAJOR STREQUAL _6edc8bbd_MAJOR))
|
|
|
|
|
set(MESSAGE "MAJOR component mismatch: '${_TEST_MAJOR}' != '${_6edc8bbd_MAJOR}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_MINOR)
|
|
|
|
|
if(NOT _TEST_MINOR)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "MINOR component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_MINOR STREQUAL _6edc8bbd_MINOR))
|
|
|
|
|
set(MESSAGE "MINOR component mismatch: '${_TEST_MINOR}' != '${_6edc8bbd_MINOR}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_PATCH)
|
|
|
|
|
if(NOT _TEST_PATCH)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "PATCH component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_PATCH STREQUAL _6edc8bbd_PATCH))
|
|
|
|
|
set(MESSAGE "PATCH component mismatch: '${_TEST_PATCH}' != '${_6edc8bbd_PATCH}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_TWEAK)
|
|
|
|
|
if(NOT _TEST_TWEAK)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "TWEAK component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_TWEAK STREQUAL _6edc8bbd_TWEAK))
|
|
|
|
|
set(MESSAGE "TWEAK component mismatch: '${_TEST_TWEAK}' != '${_6edc8bbd_TWEAK}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_PRERELEASE)
|
|
|
|
|
if(NOT _TEST_PRERELEASE)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "PRERELEASE component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_PRERELEASE STREQUAL _6edc8bbd_PRERELEASE))
|
|
|
|
|
set(MESSAGE "PRERELEASE component mismatch: '${_TEST_PRERELEASE}' != '${_6edc8bbd_PRERELEASE}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_BUILD)
|
|
|
|
|
if(NOT _TEST_BUILD)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "BUILD component missing during parse.")
|
|
|
|
|
set(FAILED ON)
|
2022-07-05 02:22:28 +02:00
|
|
|
elseif(NOT (_TEST_BUILD STREQUAL _6edc8bbd_BUILD))
|
|
|
|
|
set(MESSAGE "BUILD component mismatch: '${_TEST_BUILD}' != '${_6edc8bbd_BUILD}'")
|
2022-07-04 03:09:56 +02:00
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
else()
|
|
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
if(FAILED)
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_FAIL)
|
2022-07-04 03:09:56 +02:00
|
|
|
message(STATUS "PASSED: '${ARGV0}'.\n\t${MESSAGE}")
|
|
|
|
|
else()
|
|
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}'.\n\t${MESSAGE}")
|
|
|
|
|
endif()
|
|
|
|
|
else()
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_FAIL)
|
2022-07-04 03:09:56 +02:00
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}'.")
|
|
|
|
|
else()
|
|
|
|
|
message(STATUS "PASSED: '${ARGV0}'.")
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
|
|
function(test_compare)
|
|
|
|
|
cmake_parse_arguments(
|
|
|
|
|
PARSE_ARGV 3
|
2022-07-05 02:22:28 +02:00
|
|
|
_6edc8bbd
|
2022-07-04 03:09:56 +02:00
|
|
|
"FAIL"
|
|
|
|
|
"RESULT"
|
|
|
|
|
""
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
version(COMPARE _TEST "${ARGV0}" "${ARGV2}")
|
|
|
|
|
set(FAILED OFF)
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_TEST_ERROR)
|
2022-07-04 03:09:56 +02:00
|
|
|
set(MESSAGE "${_TEST_ERROR}")
|
|
|
|
|
set(FAILED ON)
|
|
|
|
|
else()
|
|
|
|
|
if(NOT (_TEST STREQUAL ARGV1))
|
|
|
|
|
set(MESSAGE "'${_TEST}' != '${ARGV1}'")
|
|
|
|
|
set(FAILED ON)
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
if(FAILED)
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_FAIL)
|
2022-07-04 03:09:56 +02:00
|
|
|
message(STATUS "PASSED: '${ARGV0}' '${ARGV1}' '${ARGV2}'.\n\t${MESSAGE}")
|
|
|
|
|
else()
|
|
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}' '${ARGV1}' '${ARGV2}'.\n\t${MESSAGE}")
|
|
|
|
|
endif()
|
|
|
|
|
else()
|
2022-07-05 02:22:28 +02:00
|
|
|
if(_6edc8bbd_FAIL)
|
2022-07-04 03:09:56 +02:00
|
|
|
message(SEND_ERROR "FAILED: '${ARGV0}' '${ARGV1}' '${ARGV2}'.\n\t${MESSAGE}")
|
|
|
|
|
else()
|
|
|
|
|
message(STATUS "PASSED: '${ARGV0}' '${ARGV1}' '${ARGV2}'.")
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
endfunction()
|