mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-04-29 14:59:39 -04:00
cmake: Respect user-provided configuration-specific flags
This commit is contained in:
parent
de90b47ea0
commit
2f68531c53
2 changed files with 11 additions and 7 deletions
|
@ -19,6 +19,10 @@ if(POLICY CMP0171)
|
||||||
cmake_policy(SET CMP0171 NEW)
|
cmake_policy(SET CMP0171 NEW)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# When adjusting CMake flag variables, we must not override those explicitly
|
||||||
|
# set by the user. These are a subset of the CACHE_VARIABLES property.
|
||||||
|
get_directory_property(precious_variables CACHE_VARIABLES)
|
||||||
|
|
||||||
#=============================
|
#=============================
|
||||||
# Project / Package metadata
|
# Project / Package metadata
|
||||||
#=============================
|
#=============================
|
||||||
|
|
|
@ -106,13 +106,13 @@ endfunction()
|
||||||
|
|
||||||
function(replace_cxx_flag_in_config config old_flag new_flag)
|
function(replace_cxx_flag_in_config config old_flag new_flag)
|
||||||
string(TOUPPER "${config}" config_uppercase)
|
string(TOUPPER "${config}" config_uppercase)
|
||||||
string(REGEX REPLACE "(^| )${old_flag}( |$)" "\\1${new_flag}\\2" new_flags "${CMAKE_CXX_FLAGS_${config_uppercase}}")
|
set(var_name CMAKE_CXX_FLAGS_${config_uppercase})
|
||||||
set(CMAKE_CXX_FLAGS_${config_uppercase} "${new_flags}" PARENT_SCOPE)
|
if("${var_name}" IN_LIST precious_variables)
|
||||||
set(CMAKE_CXX_FLAGS_${config_uppercase} "${new_flags}"
|
return()
|
||||||
CACHE STRING
|
endif()
|
||||||
"Flags used by the CXX compiler during ${config_uppercase} builds."
|
string(REGEX REPLACE "(^| )${old_flag}( |$)" "\\1${new_flag}\\2" ${var_name} "${${var_name}}")
|
||||||
FORCE
|
set(${var_name} "${${var_name}}" PARENT_SCOPE)
|
||||||
)
|
set_property(CACHE ${var_name} PROPERTY VALUE "${${var_name}}")
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
set_default_config(RelWithDebInfo)
|
set_default_config(RelWithDebInfo)
|
||||||
|
|
Loading…
Add table
Reference in a new issue