<div dir="ltr">Hi Liam,<div><br></div><div>I think this should basically work fine. In Chromium, we've used clang tooling to do various things, and we use cl.exe style flags on Windows. <a href="https://chromium.googlesource.com/chromium/src/+/lkcr/docs/clang_tool_refactoring.md">https://chromium.googlesource.com/chromium/src/+/lkcr/docs/clang_tool_refactoring.md</a> has some words on it; <a href="https://cs.chromium.org/chromium/src/tools/clang/scripts/run_tool.py?q=run_tool.py&sq=package:chromium&dr=C&l=7">https://cs.chromium.org/chromium/src/tools/clang/scripts/run_tool.py?q=run_tool.py&sq=package:chromium&dr=C&l=7</a> is the run_tool.py that's referenced there.</div><div><br></div><div>Under the hood, I believe the way this works is that libTooling looks for either --driver-mode (maybe here? <a href="http://llvm-cs.pcc.me.uk/tools/clang/lib/Tooling/Tooling.cpp#178">http://llvm-cs.pcc.me.uk/tools/clang/lib/Tooling/Tooling.cpp#178</a>) or for the name of the clang binary in the comp db.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Feb 15, 2018 at 12:49 AM, Mitchell, Liam via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi cfe-dev,<br>
<br>
I'm interested in using the Clang refactoring tools on Windows code. We have a large multi-platform codebase, and while we use Clang to compile a lot of it, we still have quite a bit of Windows-specific code which we compile with MSVC. Initial results refactoring the Clang-compatible code were good, so I'm hopeful I can parse most of the MSVC-specific stuff as well. Is it possible to use clang-cl somehow as the frontend for the refactoring tools? I can get a compilation database with the CL.exe flags pretty easily, but translating that to clang flags across our whole codebase is likely to be challenging. I'm open to modifying the refactoring tools a bit/writing my own tools if that's what it takes.<br>
<br>
Thanks!<br>
Liam<br>
______________________________<wbr>_________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div>