diff --git a/cmake/toolchain.cmake b/cmake/toolchain.cmake index 38e138c936..50dbeda600 100644 --- a/cmake/toolchain.cmake +++ b/cmake/toolchain.cmake @@ -76,3 +76,22 @@ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "" CACHE STRING "" FORCE) set(CMAKE_ASM_FLAGS_DEBUG "" CACHE STRING "" FORCE) set(CMAKE_ASM_FLAGS_RELEASE "" CACHE STRING "" FORCE) set(CMAKE_ASM_FLAGS_RELWITHDEBINFO "" CACHE STRING "" FORCE) + +# Use response files always +set(CMAKE_ASM_USE_RESPONSE_FILE_FOR_INCLUDES 1) +set(CMAKE_C_USE_RESPONSE_FILE_FOR_INCLUDES 1) +set(CMAKE_CXX_USE_RESPONSE_FILE_FOR_INCLUDES 1) + +set(CMAKE_ASM_USE_RESPONSE_FILE_FOR_OBJECTS 1) +set(CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS 1) +set(CMAKE_CXX_USE_RESPONSE_FILE_FOR_OBJECTS 1) + +set(CMAKE_ASM_USE_RESPONSE_FILE_FOR_LIBRARIES 1) +set(CMAKE_C_USE_RESPONSE_FILE_FOR_LIBRARIES 1) +set(CMAKE_CXX_USE_RESPONSE_FILE_FOR_LIBRARIES 1) + +# Ninja requires to be forced for response files +if ("${CMAKE_GENERATOR}" MATCHES "Ninja") + set(CMAKE_NINJA_FORCE_RESPONSE_FILE 1 CACHE INTERNAL "") +endif() +