<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Feb 3, 2014 at 11:01 AM, Hans Wennborg <span dir="ltr"><<a href="mailto:hans@chromium.org" target="_blank">hans@chromium.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Richard,<br>
<br>
I think the truth of the matter is that not many people have worked on<br>
the tooling stuff in a Windows environment, and that's why it's such a<br>
rough experience.<br>
<div class="im"><br>
On Sun, Feb 2, 2014 at 4:30 PM, Richard <<a href="mailto:legalize@xmission.com">legalize@xmission.com</a>> wrote:<br>
> I'm trying to do a presentation next Wednesday (yes, in 3 days) for<br>
> the Utah Software Craftsmen group on building a C++ refactoring tool<br>
> using libtooling.  This is a dry-run for the presentation I proposed<br>
> to C++ Now 2014 (proposal decisions will be announced Feb. 15th).<br>
> The tool is based on llvm/tools/clang/tools/extra/remove-cstr-calls.<br>
> I'm running into roadblocks that seem unnecessary.<br>
><br>
> 1) I must build from source because the prebuilt binaries don't include<br>
> libtooling headers or libraries, only libclang.  Why?<br>
<br>
</div>The Windows binaries (both the 3.4 release and the weekly snapshots)<br>
focus on shipping an LLVM-based toolchain, not headers and libraries.<br>
It would be great to have the latter but it hasn't been first<br>
priority.</blockquote><div><br></div><div>In particular, I don't want to distribute a whole pile of static libraries in the standard toolchain build of LLVM and Clang.</div><div><br></div><div>There are a couple of ways to avoid it, both of which require work:</div>
<div>1. Split into a libLLVM.dll, clang.dll, and clangTooling.ll</div><div>2. Create a separate installation with the usual static libraries</div><div><br></div><div>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:</div>
<div>clang.exe, clang-cl.exe, clang++.exe, and msbuild-bin/cl.exe</div><div><br></div><div>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.</div>
</div></div></div>