<div dir="ltr">

<span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">The following occurs with CMake on Windows, crosscompiling with ARMCC.</span><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">If the path contains "@", CMake ignores response file in the toolchain file:</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">SET( CMAKE_C_USE_RESPONSE_FILE_FOR_<wbr>OBJECTS 1 )</span> </div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"> The linker command is too long and fails.</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">The command is run in Jenkins, I have not seen a way to avoid generating @ in the path</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">A workaround could be to patch rules.ninja to add the rsp_file handling if missing.</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">Any configuration changes that resolves the problem?</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">Any hints how to debug and fix CMake for this?</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">/Gerhard</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br><div>------------------------------<wbr>---------</div><div>Run in Cygwin, using Windows binary (to use with Windows compiler)</div><div><br></div><div> "c:/Tools/CMake/3.11.2/bin/<wbr>cmake" -G "Ninja" --no-warn-unused-cli -DCMAKE_TOOLCHAIN_FILE=<wbr>toolchain.cmake .<br></div><div><div><br></div><div>Note that the WindRiver compiler is OK, a difference is that <span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">CMAKE_C_RESPONSE_FILE_<wbr>LINK_FLAG is "@" by default, no need to override to "--via" as for armcc.</span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><br></span></div><div>------------------------------<wbr>--------------</div><div>From rules.ninja, where the path contains a "@"</div><div>rule C_EXECUTABLE_LINKER__FBLZYNQ</div><div>  command = cmd.exe /C "$PRE_LINK && C:\Tools\ARM_Compiler_5\5.0.4.<wbr>82\bin64\</div><div>armlink.exe $LINK_FLAGS $LINK_PATH $LINK_LIBRARIES $in -o $TARGET_FILE && $POST_</div><div>BUILD"</div><div>  description = Linking C executable $TARGET_FILE</div><div>  restat = $RESTAT</div></div><div><br></div><div><br></div><div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">From rules.ninja, where the path has no "@"</span> </div><div>  rule C_EXECUTABLE_LINKER__FBLZYNQ</div><div>  command = cmd.exe /C "$PRE_LINK && C:\Tools\ARM_Compiler_5\5.0.4.<wbr>82\bin64\</div><div>armlink.exe $LINK_FLAGS  --via=$RSP_FILE -o $TARGET_FILE && $POST_BUILD"</div><div>  description = Linking C executable $TARGET_FILE</div><div>  rspfile = $RSP_FILE</div><div>  rspfile_content = $in_newline $LINK_PATH $LINK_LIBRARIES</div><div>  restat = $RESTAT</div></div><div><br></div><div><br></div><div>------------------------------<wbr>--------------</div><div>toolchain.cmake:</div><div><div>SET( CMAKE_SYSTEM_NAME Generic )</div><div><br></div><div># specify the cross compiler</div><div>SET( CMAKE_C_COMPILER "c:/Tools/ARM_Compiler_5/<a href="http://5.0.4.82/bin64/armcc.exe" target="_blank" style="color:rgb(17,85,204)">5.0.<wbr>4.82/bin64/armcc.exe</a>" )</div><div>SET( CMAKE_CXX_COMPILER "c:/Tools/ARM_Compiler_5/<a href="http://5.0.4.82/bin64/armcc.exe" target="_blank" style="color:rgb(17,85,204)">5.0.<wbr>4.82/bin64/armcc.exe</a>" )</div><div><br></div><div>#Disable some CMake checks - may be useful when updating the environment</div><div>SET (CMAKE_C_COMPILER_WORKS 1)</div><div>SET (CMAKE_CXX_COMPILER_WORKS 1)</div><div><br></div><div>#skip ABI checks</div><div>SET (CMAKE_DETERMINE_C_ABI_<wbr>COMPILED 1)</div><div>SET (CMAKE_DETERMINE_CXX_ABI_<wbr>COMPILED 1)</div><div>SET (CMAKE_DETERMINE_ASM_ABI_<wbr>COMPILED 1)</div><div><br></div><div># where is the target environment</div><div>SET( CMAKE_FIND_ROOT_PATH "c:/Tools/ARM_Compiler_5/<a href="http://5.0.4.82/" target="_blank" style="color:rgb(17,85,204)">5.0.<wbr>4.82</a>" )</div><div><br></div><div># search for programs in the build host directories</div><div>SET( CMAKE_FIND_ROOT_PATH_MODE_<wbr>PROGRAM NEVER )</div><div><br></div><div># for libraries and headers in the target directories</div><div>SET( CMAKE_FIND_ROOT_PATH_MODE_<wbr>LIBRARY ONLY )</div><div>SET( CMAKE_FIND_ROOT_PATH_MODE_<wbr>INCLUDE ONLY )</div><div><br></div><div>#Too long commandline in Windows (benefit in Linux too)</div><div>SET( CMAKE_C_USE_RESPONSE_FILE_FOR_<wbr>OBJECTS 1 )</div><div>SET( CMAKE_CXX_USE_RESPONSE_FILE_<wbr>FOR_OBJECTS 1 )</div><div><br></div><div>SET( CMAKE_ASM_COMPILER "c:/Tools/ARM_Compiler_5/<a href="http://5.0.4.82/bin64/armasm.exe" target="_blank" style="color:rgb(17,85,204)">5.0.<wbr>4.82/bin64/armasm.exe</a>"</div><div>)</div><div><br></div><div>SET( CMAKE_ASM_COMPILE_OBJECT "<CMAKE_ASM_COMPILER> <SOURCE> <DEFINES> <FLAGS> -</div><div>o <OBJECT>" )</div><div><br></div><div>SET( CMAKE_C_LINK_EXECUTABLE "<CMAKE_LINKER> <LINK_FLAGS> <LINK_LIBRARIES> <OBJE</div><div>CTS> -o <TARGET>" )</div><div><br></div><div>SET( CMAKE_C_RESPONSE_FILE_LINK_<wbr>FLAG "--via=" )</div><div><br></div><div>SET( CMAKE_DEPFILE_FLAGS_ASM "--depend=<OBJECT>.d --depend_format=unix" )</div><div><br></div><div>SET( CMAKE_DEPFILE_FLAGS_C "--depend=<OBJECT>.d --depend_format=unix --depend_si</div><div>ngle_line" )</div></div></div>

<br></div>