[cfe-dev] Clang refactoring tools and clang-cl on Windows

Nico Weber via cfe-dev cfe-dev at lists.llvm.org
Fri Feb 16 06:26:30 PST 2018


Hi Liam,

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.
https://chromium.googlesource.com/chromium/src/+/lkcr/docs/clang_tool_refactoring.md
has some words on it;
https://cs.chromium.org/chromium/src/tools/clang/scripts/run_tool.py?q=run_tool.py&sq=package:chromium&dr=C&l=7
is the run_tool.py that's referenced there.

Under the hood, I believe the way this works is that libTooling looks for
either --driver-mode (maybe here?
http://llvm-cs.pcc.me.uk/tools/clang/lib/Tooling/Tooling.cpp#178) or for
the name of the clang binary in the comp db.

On Thu, Feb 15, 2018 at 12:49 AM, Mitchell, Liam via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Hi cfe-dev,
>
> 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.
>
> Thanks!
> Liam
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20180216/4bb30d25/attachment.html>


More information about the cfe-dev mailing list