[PATCH] CMake: Enable building clang-format's Visual Studio plugin

Alp Toker alp at nuanti.com
Thu Nov 21 19:12:23 PST 2013


On 22/11/2013 02:20, Hans Wennborg wrote:
> On Thu, Nov 21, 2013 at 5:55 PM, Alp Toker <alp at nuanti.com> wrote:
>> Hi Hans,
>>
>> Impressed that you've coaxed cmake into building and bundling the VS
>> package..
> It's not exactly my proudest moment, but it seems to work ;)
>
>> However not so convinced it's the right deployment model:
>>
>> 1) The installer gets copied into Program Files -- then what? Does the user
>> have look for and install it separately, or is it the site administrator's
>> job?
> We could have the installer run it when it copies in the files for the
> MSBuild integration. Or the user could install it manually - I'm kind
> of torn about this.
>
>> When the main uninstaller is run, does the extension get left behind?
> That's definitely an issue. If we teach install.bat to install the
> extension, uninstall.bat should remove it. From what I understand, the
> way to do this is to find vsxinstaller.exe and run that with
> /uninstall.

Another data point: According to the VSIX Deployment guide, extensions 
usually install per-user, whereas LLVM tends to get installed 
system-wide by default.

(The more I read through that page, the more I get the impression a 
balancing act with CPack/nsis isn't going to work out.)

>
>> If the main LLVM install is upgraded, what happens the the extension, and
>> which clang-format.exe version will it end up calling into post-upgrade?
> The new installer would presumably install the new extension too.
>
> But note that the clang-format extension is just a thing that calls
> clang-format in the LLVM installation dir. It doesn't contain a copy
> of clang-format itself, so it will always just call what's installed.
>
>> 2) The target audiences are fairly distinct. Most clang-format Visual Studio
>> extension users likely don't want or need an LLVM installation. This is the
>> crowd who'd benefit most from a single click installation on the download
>> page that works the same way as other VS extensions.
>>
>> Wouldn't it make more sense to offer the Visual Studio extension as a
>> separate download?
> If we want to support that, we should bake clang-format into the
> extension itself.

That sounds much better. Redacted from VSIX Best Practices:

  * Distribute your whole product in one independent VSIX if you can.
  * If you ship more than one VSIX, and they share common assemblies,
    copy the common assemblies into each separate VSIX.

The technique for bundling resources should work with clang-format.exe:

   http://msdn.microsoft.com/en-us/library/vstudio/ff363239.aspx

Alp.

-- 
http://www.nuanti.com
the browser experts

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131122/76673e5b/attachment.html>


More information about the cfe-commits mailing list