| arch = environment.x64 | |
| rule cc | |
| command = ninja -t msvc -e $arch -- $cc /nologo /showIncludes /FC @${out}.rsp /c ${in} /Fo${out} | |
| description = CC ${out} | |
| rspfile = ${out}.rsp | |
| rspfile_content = ${defines} ${includes} ${cflags} ${cflags_c} | |
| deps = msvc | |
| rule cxx | |
| command = ninja -t msvc -e $arch -- $cxx /nologo /showIncludes /FC @${out}.rsp /c ${in} /Fo${out} | |
| description = CXX ${out} | |
| rspfile = ${out}.rsp | |
| rspfile_content = ${defines} ${includes} ${cflags} ${cflags_cc} | |
| deps = msvc | |
| rule alink_thin | |
| command = ninja -t msvc -e $arch -- $ar /nologo /ignore:4221 /OUT:${out} @${out}.rsp | |
| description = LIB ${out} | |
| rspfile = ${out}.rsp | |
| rspfile_content = ${in_newline} | |
| rule link | |
| command = ninja -t msvc -e $arch -- $ld /nologo /OUT:${out} /PDB:${out}.pdb @${out}.rsp | |
| description = LINK ${out} | |
| rspfile = ${out}.rsp | |
| rspfile_content = ${in_newline} ${libs} ${solibs} ${ldflags} |