Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.

Commit cec7652

Browse files
committed
Fixes TRILFRAME-120
1 parent ec84080 commit cec7652

File tree

3 files changed

+10
-3
lines changed

3 files changed

+10
-3
lines changed

src/setprogramoptions/SetProgramOptionsCMake.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,13 @@ def _program_option_handler_opt_set_cmake_var_bash(self, params, value) -> str:
182182
params.append(":" + param_opts['TYPE'])
183183

184184
# Cache 'known' CMake vars here.
185+
try:
186+
if self._var_formatter_cache[varname] is not None and not param_opts['FORCE']:
187+
# Do not add this to the output unless it's a forceful set
188+
return None
189+
except:
190+
pass
191+
185192
self._var_formatter_cache[varname] = value
186193

187194
return self._generic_program_option_handler_bash(params, value)

src/setprogramoptions/unittests/files_ini/config_test_setprogramoptions.ini

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,15 +146,15 @@ opt-set-cmake-var CMAKE_CXX_FLAGS STRING : "${LDFLAGS|ENV} -foo"
146146
[TEST_VAR_EXPANSION_UPDATE_01]
147147
opt-set cmake
148148
use TEST_VAR_EXPANSION_COMMON
149-
opt-set-cmake-var CMAKE_CXX_FLAGS STRING: "${CMAKE_CXX_FLAGS|CMAKE} -bar"
149+
opt-set-cmake-var CMAKE_CXX_FLAGS STRING FORCE : "${CMAKE_CXX_FLAGS|CMAKE} -bar"
150150

151151
[TEST_VAR_EXPANSION_UPDATE_02]
152152
use TEST_VAR_EXPANSION_UPDATE_01
153153
opt-set-cmake-var CMAKE_F90_FLAGS STRING: "${CMAKE_F90_FLAGS|CMAKE} -baz"
154154

155155
[TEST_VAR_EXPANSION_UPDATE_03]
156156
use TEST_VAR_EXPANSION_UPDATE_01
157-
opt-set-cmake-var CMAKE_CXX_FLAGS STRING: "${CMAKE_CXX_FLAGS|CMAKE} -bif"
157+
opt-set-cmake-var CMAKE_CXX_FLAGS STRING FORCE : "${CMAKE_CXX_FLAGS|CMAKE} -bif"
158158

159159
[TEST_STRING_DOUBLE_QUOTES]
160160
opt-set-cmake-var Panzer_FADTYPE STRING: Sacado::Fad::DFad<RealType>

src/setprogramoptions/unittests/test_SetProgramOptionsCMake.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ def test_SetProgramOptionsCMake_gen_option_list_cmake_fragment_expandvars(self):
303303

304304
option_list_expect = [
305305
'set(CMAKE_CXX_FLAGS "$ENV{LDFLAGS} -foo" CACHE STRING "from .ini configuration")',
306-
'set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -bar" CACHE STRING "from .ini configuration")',
306+
'set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -bar" CACHE STRING "from .ini configuration" FORCE)',
307307
'set(CMAKE_F90_FLAGS "${CMAKE_F90_FLAGS} -baz" CACHE STRING "from .ini configuration")'
308308
]
309309

0 commit comments

Comments
 (0)