evmc/CableBuildType.cmake
Paweł Bylica 6ee4682924 Squashed 'cmake/cable/' changes from 5fd6d89..caeabb3
caeabb3 CableBuildInfo: Specify gitinfo.txt byproduct
69a5abc CableBuildInfo: Remove broken debug logs
a5a1829 CableCompilerSettings: Enabled conversion warnings by default
0790aec README: Add section about git subtree
4056c71 Add the project name to every file
612d1b2 Add cxx11-c99 toolchain file

git-subtree-dir: cmake/cable
git-subtree-split: caeabb3a9f054f5c0b5076aa958968c42f7a5df4
2018-05-11 16:58:08 +02:00

45 lines
1.4 KiB
CMake

# Cable: CMake Bootstrap Library.
# Copyright 2018 Pawel Bylica.
# Licensed under the Apache License, Version 2.0. See the LICENSE file.
if(cable_build_type_included)
return()
endif()
set(cable_build_type_included TRUE)
macro(cable_set_build_type)
if(NOT PROJECT_IS_NESTED)
# Do this configuration only in the top project.
if(NOT PROJECT_SOURCE_DIR)
message(FATAL_ERROR "cable_set_build_type() can be used only after project()")
endif()
cmake_parse_arguments(build_type "" DEFAULT CONFIGURATION_TYPES ${ARGN})
if(CMAKE_CONFIGURATION_TYPES)
if(build_type_CONFIGURATION_TYPES)
set(
CMAKE_CONFIGURATION_TYPES
${build_type_CONFIGURATION_TYPES}
CACHE
STRING
"Available configurations for multi-configuration generators"
FORCE
)
endif()
cable_log("Configurations: ${CMAKE_CONFIGURATION_TYPES}")
else()
if(build_type_DEFAULT AND NOT CMAKE_BUILD_TYPE)
set(
CMAKE_BUILD_TYPE
${build_type_DEFAULT}
CACHE STRING
"Build type for single-configuration generators"
FORCE
)
endif()
cable_log("Build type: ${CMAKE_BUILD_TYPE}")
endif()
endif()
endmacro()