From 10607afa70e9db684952a68d3d499d5982aac448 Mon Sep 17 00:00:00 2001 From: Adam Gu Date: Thu, 7 Jun 2018 17:22:21 +0800 Subject: [PATCH] Add a string variable to CMake to configure log level. --- CMakeLists.txt | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d5097a..4715980 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,9 +6,25 @@ option(WEBCC_ENABLE_SOAP "Enable SOAP support (need pugixml)?" ON) option(WEBCC_BUILD_UNITTEST "Build unit test?" ON) option(WEBCC_BUILD_EXAMPLE "Build examples?" ON) +set(WEBCC_LOG_LEVEL "VERB" CACHE STRING "Log level (VERB, INFO, WARN, ERRO or FATA)") + if(WEBCC_ENABLE_LOG) add_definitions(-DWEBCC_ENABLE_LOG) - add_definitions(-DWEBCC_LOG_LEVEL=0) + + message(STATUS "WEBCC_LOG_LEVEL: ${WEBCC_LOG_LEVEL}") + + # Add definition of WEBCC_LOG_LEVEL according variable WEBCC_LOG_LEVEL. + if(WEBCC_LOG_LEVEL MATCHES "^VERB$") + add_definitions(-DWEBCC_LOG_LEVEL=0) + elseif(WEBCC_LOG_LEVEL MATCHES "^INFO$") + add_definitions(-DWEBCC_LOG_LEVEL=1) + elseif(WEBCC_LOG_LEVEL MATCHES "^WARN$") + add_definitions(-DWEBCC_LOG_LEVEL=2) + elseif(WEBCC_LOG_LEVEL MATCHES "^ERRO$") + add_definitions(-DWEBCC_LOG_LEVEL=3) + elseif(WEBCC_LOG_LEVEL MATCHES "^FATA$") + add_definitions(-DWEBCC_LOG_LEVEL=4) + endif() endif() if(WEBCC_ENABLE_SOAP)