From 2454efe018af51c6fc83557fd6e42755de45b79b Mon Sep 17 00:00:00 2001 From: Michal Klocek Date: Wed, 3 Aug 2022 09:58:00 +0200 Subject: Fix debug build on arm MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We need --long-plt for arm debug builds. Pick-to: 6.4 6.3 Change-Id: I99fa6a2f8ec803cc399509d02a5cc9ad22fd0f87 Reviewed-by: Michael BrĂ¼ning --- cmake/Functions.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'cmake') diff --git a/cmake/Functions.cmake b/cmake/Functions.cmake index 3055252a0..3df8fde5e 100644 --- a/cmake/Functions.cmake +++ b/cmake/Functions.cmake @@ -433,6 +433,10 @@ function(add_linker_options target buildDir completeStatic) set(libs_rsp "${buildDir}/${ninjaTarget}_libs.rsp") set_target_properties(${cmakeTarget} PROPERTIES STATIC_LIBRARY_OPTIONS "@${objects_rsp}") if(LINUX) + get_gn_arch(cpu ${TEST_architecture_arch}) + if(CMAKE_CROSSCOMPILING AND cpu STREQUAL "arm" AND ${config} STREQUAL "Debug") + target_link_options(${cmakeTarget} PRIVATE "LINKER:--long-plt") + endif() target_link_options(${cmakeTarget} PRIVATE "$<$:@${objects_rsp}>") # Chromium is meant for linking with gc-sections, which seems to not always get applied otherwise target_link_options(${cmakeTarget} PRIVATE "-Wl,--gc-sections") @@ -445,7 +449,6 @@ function(add_linker_options target buildDir completeStatic) target_link_libraries(${cmakeTarget} PRIVATE "$<1:-Wl,--no-fatal-warnings $<$:@${libs_rsp}> -Wl,--no-fatal-warnings>" ) - endif() if(MACOS) target_link_options(${cmakeTarget} PRIVATE "$<$:@${objects_rsp}>") -- cgit v1.2.1