added mcmodel flags for linker

Signed-off-by: Pratik Mankawde <pmankawde@ripple.com>
This commit is contained in:
Pratik Mankawde
2025-11-11 14:56:07 +00:00
parent 6b8d5b57e1
commit e347da9fac

View File

@@ -167,6 +167,8 @@ def generate_strategy_matrix(all: bool, config: Config) -> list:
if os['distro_version'] == 'bookworm':
# Use medium code model to avoid relocation errors with large binaries
extra_warning_flags = '-mcmodel=medium'
# Linker also needs to know about the code model
linker_flags = '-mcmodel=medium'
# Suppress false positive warnings in GCC with stringop-overflow
if os['compiler_name'] == 'gcc':
extra_warning_flags += ' -Wno-stringop-overflow'
@@ -177,7 +179,7 @@ def generate_strategy_matrix(all: bool, config: Config) -> list:
cxx_flags += " -O1"
if cxx_flags:
cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=address,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}"'
cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=address,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"'
else:
cmake_args_flags = f'{cmake_args}'
configurations.append({
@@ -194,7 +196,7 @@ def generate_strategy_matrix(all: bool, config: Config) -> list:
if os['compiler_name'] == 'gcc':
extra_warning_flags += ' -Wno-tsan'
if cxx_flags:
cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=thread,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}"'
cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=thread,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"'
else:
cmake_args_flags = f'{cmake_args}'
configurations.append({