diff options
author | Simon Rettberg | 2023-01-10 15:26:23 +0100 |
---|---|---|
committer | Simon Rettberg | 2023-01-10 15:26:23 +0100 |
commit | 44536234a4e70702f18e58a60b973bcfecbcf821 (patch) | |
tree | a34d5331b7d856a4087b25528046207b0f3ba97f /CMakeLists.txt | |
parent | Turn deprecated-declarations into warning (diff) | |
download | beamergui-44536234a4e70702f18e58a60b973bcfecbcf821.tar.gz beamergui-44536234a4e70702f18e58a60b973bcfecbcf821.tar.xz beamergui-44536234a4e70702f18e58a60b973bcfecbcf821.zip |
CMake: Use proper build config config
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 744c18a..bdb5093 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,11 +1,20 @@ -cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) - -# cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug .. +cmake_minimum_required(VERSION 3.15 FATAL_ERROR) + +set(beamergui_BUILD_TYPES Release Debug) +get_property(multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +if(multi_config) + set(CMAKE_CONFIGURATION_TYPES "${beamergui_BUILD_TYPES}" CACHE STRING "list of supported configuration types" FORCE) +else() + set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build Type of the project.") + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "${beamergui_BUILD_TYPES}") + if(NOT CMAKE_BUILD_TYPE IN_LIST beamergui_BUILD_TYPES) + message(FATAL_ERROR "Invalid build type '${CMAKE_BUILD_TYPE}'. Possible values:\n ${beamergui_BUILD_TYPES}") + endif() +endif() # project name project(beamergui) -set(CMAKE_BUILD_TYPE Release) set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -Wall -Wextra -pedantic -Werror") set(CMAKE_CXX_FLAGS_RELEASE "-O2") |