diff options
author | Brad King <brad.king@kitware.com> | 2016-10-17 14:15:12 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-10-17 14:15:12 (GMT) |
commit | 274ff520925deea9bf9532673c15b96616521615 (patch) | |
tree | 230a284ddc64df13e078b96591a78b829b439f3b | |
parent | 69be82394dcd9044c9aa392e0aa078a6e09ec460 (diff) | |
parent | 70e268da3e5f8e00bdf065786cd685a9660fe1c4 (diff) | |
download | CMake-274ff520925deea9bf9532673c15b96616521615.zip CMake-274ff520925deea9bf9532673c15b96616521615.tar.gz CMake-274ff520925deea9bf9532673c15b96616521615.tar.bz2 |
Merge topic 'cmcldeps-more-safety'
70e268da cmcldeps: prefer the /TC flag
47092d3e cmcldeps: append strings as strings
7db671a1 cmcldeps: search for single-byte strings as characters
-rw-r--r-- | Source/cmcldeps.cxx | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/Source/cmcldeps.cxx b/Source/cmcldeps.cxx index 167d60a..b86ad6e 100644 --- a/Source/cmcldeps.cxx +++ b/Source/cmcldeps.cxx @@ -205,7 +205,7 @@ static int process(const std::string& srcfilename, const std::string& dfile, std::vector<std::string> command; for (std::vector<std::string>::iterator i = args.begin(); i != args.end(); ++i) { - command.push_back(i->c_str()); + command.push_back(*i); } // run the command int exit_code = 0; @@ -258,7 +258,7 @@ int main() // needed to suppress filename output of msvc tools std::string srcfilename; { - std::string::size_type pos = srcfile.rfind("\\"); + std::string::size_type pos = srcfile.rfind('\\'); if (pos == std::string::npos) { srcfilename = srcfile; } else { @@ -279,12 +279,7 @@ int main() clrest = replace(clrest, "/fo", "/out:"); clrest = replace(clrest, objfile, objfile + ".dep.obj "); - // rc: src\x\x.rc -> cl: /Tc src\x\x.rc - if (srcfile.find(" ") != std::string::npos) - srcfile = "\"" + srcfile + "\""; - clrest = replace(clrest, srcfile, "/Tc " + srcfile); - - cl = "\"" + cl + "\" /P /DRC_INVOKED "; + cl = "\"" + cl + "\" /P /DRC_INVOKED /TC "; // call cl in object dir so the .i is generated there std::string objdir; |