mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-09-19 11:46:34 -04:00
43 lines
1.3 KiB
CMake
43 lines
1.3 KiB
CMake
|
include (CMakeParseArguments)
|
||
|
|
||
|
# set_build_type() function
|
||
|
#
|
||
|
# Configure the output artefacts and their names for development,
|
||
|
# Release Candidate (RC), or General Availability (GA) build type.
|
||
|
#
|
||
|
# Usage:
|
||
|
# set_build_type ()
|
||
|
# set_build_type (RC n)
|
||
|
# set_build_type (GA)
|
||
|
#
|
||
|
# With no arguments or with RC 0 a development is specified. The
|
||
|
# variable BUILD_TYPE_REVISION is set to "-devel".
|
||
|
#
|
||
|
# With RC n with n>0 specifies a Release Candidate build. The
|
||
|
# variable BUIlD_TYPE_REVISION is set to "-rcn".
|
||
|
#
|
||
|
# With GA a General Availability release is specified and the
|
||
|
# variable BUIlD_TYPE_REVISION is unset.
|
||
|
#
|
||
|
macro (set_build_type)
|
||
|
set (options GA)
|
||
|
set (oneValueArgs RC)
|
||
|
set (multiValueArgs)
|
||
|
cmake_parse_arguments (BUILD_TYPE "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||
|
|
||
|
if (BUILD_TYPE_UNPARSED_ARGUMENTS)
|
||
|
message (FATAL_ERROR "Unrecognized macro arguments: \"${BUILD_TYPE_UNPARSED_ARGUMENTS}\"")
|
||
|
endif ()
|
||
|
if (BUILD_TYPE_GA AND BUILD_TYPE_RC)
|
||
|
message (FATAL_ERROR "Only specify one build type from RC or GA.")
|
||
|
endif ()
|
||
|
if (NOT BUILD_TYPE_GA)
|
||
|
if (BUILD_TYPE_RC)
|
||
|
set (BUILD_TYPE_REVISION "-rc${BUILD_TYPE_RC}")
|
||
|
else ()
|
||
|
set (BUILD_TYPE_REVISION "-devel")
|
||
|
endif ()
|
||
|
endif ()
|
||
|
message (STATUS "Building ${PROJECT_NAME} v${PROJECT_VERSION}${BUILD_TYPE_REVISION}")
|
||
|
endmacro ()
|