[cfe-dev] Difficulties preparing libtooling based workshop

Reid Kleckner rnk at google.com
Mon Feb 3 11:39:56 PST 2014


On Mon, Feb 3, 2014 at 11:01 AM, Hans Wennborg <hans at chromium.org> wrote:

> Hi Richard,
>
> I think the truth of the matter is that not many people have worked on
> the tooling stuff in a Windows environment, and that's why it's such a
> rough experience.
>
> On Sun, Feb 2, 2014 at 4:30 PM, Richard <legalize at xmission.com> wrote:
> > I'm trying to do a presentation next Wednesday (yes, in 3 days) for
> > the Utah Software Craftsmen group on building a C++ refactoring tool
> > using libtooling.  This is a dry-run for the presentation I proposed
> > to C++ Now 2014 (proposal decisions will be announced Feb. 15th).
> > The tool is based on llvm/tools/clang/tools/extra/remove-cstr-calls.
> > I'm running into roadblocks that seem unnecessary.
> >
> > 1) I must build from source because the prebuilt binaries don't include
> > libtooling headers or libraries, only libclang.  Why?
>
> The Windows binaries (both the 3.4 release and the weekly snapshots)
> focus on shipping an LLVM-based toolchain, not headers and libraries.
> It would be great to have the latter but it hasn't been first
> priority.


In particular, I don't want to distribute a whole pile of static libraries
in the standard toolchain build of LLVM and Clang.

There are a couple of ways to avoid it, both of which require work:
1. Split into a libLLVM.dll, clang.dll, and clangTooling.ll
2. Create a separate installation with the usual static libraries

IMO doing 1 is the best, because then we can shrink the installation
footprint even further by avoiding 4 copies of a statically linked clang:
clang.exe, clang-cl.exe, clang++.exe, and msbuild-bin/cl.exe

The problem is that there's no easy way to just blithely export everything
on Windows like we would do on Linux, and we don't have any existing
annotations for our C++ APIs.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140203/d8c4d3b5/attachment.html>


More information about the cfe-dev mailing list