On 5/30/2012 1:07 PM, Peter Kuemmel wrote:
The cmake code needs to be updated to use the native ninja response
files. If you are interested in this work, I can help you figure out
where to make the changes.
-Bill
Have you started working on this? And is there somewhere already a branch?
If not, where is the best place for such a branch, github or stage?
Peter
No, no not much actual work...
However, what needs to be done is this:
http://martine.github.com/ninja/manual.html#_rule_variables
rspfile, rspfile_content
rule link
command = link.exe /OUT$out [usual link flags here] @$out.rsp
rspfile = $out.rsp
rspfile_content = $in
We have to add this code to the cmNinjaNormalTargetGenerator.cxx
I think this method will also have to be updated to know about rspfiles:
cmGlobalNinjaGenerator::WriteRule
Claus did this by hand and it worked:
rule CXX_EXECUTABLE_LINKER
#XXX command = cmd.exe /c $PRE_LINK &&
C:\Programme\CMake2.8\bin\cmake.exe -E vs_link_exe
c:\PROGRA~1\MICROS~4\VC\bin\link.exe /nologo /OUT:$out /DEBUG
/PDB:$TARGET_PDB /IMPLIB:$TARGET_IMPLIB /version:0.0 @$out.rsp &&
$POST_BUILD
command = cmd.exe /c $PRE_LINK &&
C:\PROGRA~1\MICROS~4\VC\bin\link.exe /nologo /OUT:$out /DEBUG
/PDB:$TARGET_PDB /IMPLIB:$TARGET_IMPLIB /version:0.0 @$out.rsp &&
$POST_BUILD
description = Linking CXX executable $out
rspfile = $out.rsp
rspfile_content = $FLAGS $LINK_FLAGS $LINK_LIBRARIES $in
--
Bill Hoffman
Kitware, Inc.
28 Corporate Drive
Clifton Park, NY 12065
[email protected]
http://www.kitware.com
518 881-4905 (Direct)
518 371-3971 x105
Fax (518) 371-4573
--
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake