When these special variables are evaluated, they need to be shell-escaped.
There also needs to be scenarios where they're not escaped, such as getting the paths to certain files like the depfile, rspfile, and dyndep file. This is presumably so that you can do rspfile = $out.rsp
, and since ninja will directly open rspfile instead of going through the shell, it needs to not be escaped.
This change would merge conflict with my #112, so I'll probably just do the fix in the android fork and not upstream it.