adding project tp build 2017 templates

This commit is contained in:
Jonathon Marolf 2017-10-10 11:50:00 -07:00
Родитель 35654ed6c4
Коммит 37d002e99b
9 изменённых файлов: 236 добавлений и 3 удалений

1
.gitignore поставляемый
Просмотреть файл

@ -26,6 +26,7 @@ bld/
# ignore templates modified by build output
src/Templates/VS2015/ModifiedTemplates
src/Templates/VS2017/ModifiedTemplates
# Visual Studio 2015 cache/options directory
.vs/

Просмотреть файл

@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.27005.2
VisualStudioVersion = 15.0.27009.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SyntaxVisualizerControl", "src\Tools\SyntaxVisualizer\SyntaxVisualizerControl\SyntaxVisualizerControl.csproj", "{3B6ED9E7-C19E-4501-AAE6-9BE4EA6C18D7}"
EndProject
@ -13,10 +13,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{DC4EAEF7
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SyntaxVisualizer", "SyntaxVisualizer", "{65AB9A87-CEB0-4CC1-BFFE-FBC393C4DA75}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Templates.VisualStudio.2015", "src\Templates\VS2015\Templates.VisualStudio.2015.csproj", "{E31F654A-1D4C-4898-8D3C-7A487F82317E}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Templates.VisualStudio.2015", "src\Templates\VS2015\Templates.VisualStudio.2015.csproj", "{E31F654A-1D4C-4898-8D3C-7A487F82317E}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Templates", "Templates", "{AB77CD09-4C32-4F58-8F07-915F8B050520}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Templates.VisualStudio.2017", "src\Templates\VS2017\Templates.VisualStudio.2017.csproj", "{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -39,6 +41,10 @@ Global
{E31F654A-1D4C-4898-8D3C-7A487F82317E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E31F654A-1D4C-4898-8D3C-7A487F82317E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E31F654A-1D4C-4898-8D3C-7A487F82317E}.Release|Any CPU.Build.0 = Release|Any CPU
{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -49,6 +55,7 @@ Global
{E268163A-17EB-4C14-A892-868ADFB3108E} = {65AB9A87-CEB0-4CC1-BFFE-FBC393C4DA75}
{65AB9A87-CEB0-4CC1-BFFE-FBC393C4DA75} = {DC4EAEF7-A2C9-4628-85FA-809F7287E234}
{E31F654A-1D4C-4898-8D3C-7A487F82317E} = {AB77CD09-4C32-4F58-8F07-915F8B050520}
{44E6D9DB-89FD-41C8-BAEB-5B96AA7793F6} = {AB77CD09-4C32-4F58-8F07-915F8B050520}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7075E20E-F8B5-460C-8CF0-132F617F386C}

Просмотреть файл

@ -8,7 +8,7 @@
<Tags>roslyn,template,SDK</Tags>
</Metadata>
<Installation InstalledByMsi="false">
<InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[14.0,)" />
<InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[14.0,15.3]" />
</Installation>
<Dependencies>
<Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" d:Source="Manual" Version="[4.5,)" />

Просмотреть файл

@ -0,0 +1,35 @@
<VSTemplate Version="2.0.0" Type="ProjectGroup"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Code Refactoring (VSIX)</Name>
<Description>Create a C# refactoring, deployed as a VSIX extension</Description>
<ProjectType>CSharp</ProjectType>
<ProjectSubType></ProjectSubType>
<SortOrder>1000</SortOrder>
<CreateNewFolder>true</CreateNewFolder>
<DefaultName>CodeRefactoring</DefaultName>
<ProvideDefaultName>true</ProvideDefaultName>
<LocationField>Enabled</LocationField>
<EnableLocationBrowseButton>true</EnableLocationBrowseButton>
<Icon>CodeInformation.ico</Icon>
<RequiredFrameworkVersion>4.6</RequiredFrameworkVersion>
<PromptForSaveOnCreation>true</PromptForSaveOnCreation>
</TemplateData>
<TemplateContent>
<!-- These projects are created in the order they are listed.
Our wizard depends on this order.
Modifying it requires changes to the wizard code.-->
<ProjectCollection>
<ProjectTemplateLink ProjectName="$safeprojectname$">
ProjectTemplates\CSharp\CodeRefactoring\Ref\CSharpCodeRefactoring.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="$safeprojectname$.Vsix">
ProjectTemplates\CSharp\CodeRefactoring\Vsix\Deployment.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
<WizardExtension>
<Assembly>Roslyn.SDK.VS2015, Version=$(AssemblyVersion), Culture=neutral, PublicKeyToken=31bf3856ad364e35</Assembly>
<FullClassName>RoslynSDKRootTemplateWizard</FullClassName>
</WizardExtension>
</VSTemplate>

Просмотреть файл

@ -0,0 +1,34 @@
<VSTemplate Version="2.0.0" Type="ProjectGroup"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>Analyzer with Code Fix (NuGet + VSIX)</Name>
<Description>Create a C# analyzer that comes with a code fix and generates diagnostics. The analyzer can be deployed as either a NuGet package or a VSIX extension.</Description>
<ProjectType>CSharp</ProjectType>
<ProjectSubType></ProjectSubType>
<SortOrder>1000</SortOrder>
<DefaultName>Analyzer</DefaultName>
<ProvideDefaultName>true</ProvideDefaultName>
<Icon>CodeInformation.ico</Icon>
<RequiredFrameworkVersion>4.6</RequiredFrameworkVersion>
</TemplateData>
<TemplateContent>
<!-- These projects are created in the order they are listed.
Our wizard depends on this order.
Modifying it requires changes to the wizard code.-->
<ProjectCollection>
<ProjectTemplateLink ProjectName="$safeprojectname$">
ProjectTemplates\CSharp\Diagnostic\Analyzer\DiagnosticAnalyzer.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="$safeprojectname$.Test">
ProjectTemplates\CSharp\Diagnostic\Test\Test.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="$safeprojectname$.Vsix">
ProjectTemplates\CSharp\Diagnostic\Vsix\Deployment.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
<WizardExtension>
<Assembly>Roslyn.SDK.VS2015, Version=$(AssemblyVersion), Culture=neutral, PublicKeyToken=31bf3856ad364e35</Assembly>
<FullClassName>RoslynSDKRootTemplateWizard</FullClassName>
</WizardExtension>
</VSTemplate>

Двоичные данные
src/Templates/VS2017/CodeInformation.ico Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 128 KiB

Просмотреть файл

@ -0,0 +1,13 @@
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project>
<PropertyGroup>
<OutDirName>Templates\$(MSBuildProjectName)</OutDirName>
</PropertyGroup>
<Import Project="..\..\Directory.Build.props"/>
<PropertyGroup>
<DebugSymbols>false</DebugSymbols>
</PropertyGroup>
<ItemGroup>
<None Include="source.extension.vsixmanifest" />
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,115 @@
<!-- Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net461</TargetFramework>
<RootNamespace>Roslyn.SDK.VS2017</RootNamespace>
<AssemblyName>Roslyn.SDK.VS2017</AssemblyName>
<EnableDefaultEmbeddedResourceItems>false</EnableDefaultEmbeddedResourceItems>
<IsProductComponent>false</IsProductComponent>
<GeneratePkgDefFile>false</GeneratePkgDefFile>
<EnableDefaultItems>false</EnableDefaultItems>
<!-- VSIX -->
<ExtensionInstallationRoot>CommonExtensions</ExtensionInstallationRoot>
<ExtensionInstallationFolder>Microsoft\RoslynSDK\2017</ExtensionInstallationFolder>
<VisualStudioInsertionComponent>RoslynSDK.2017</VisualStudioInsertionComponent>
</PropertyGroup>
<!-- Template Wizard Code -->
<ItemGroup>
<Compile Include="Wizard\*.cs" />
</ItemGroup>
<!-- Package References -->
<ItemGroup>
<PackageReference Include="EnvDTE" Version="$(EnvDTEVersion)" />
<PackageReference Include="EnvDTE80" Version="$(EnvDTE80Version)" />
<PackageReference Include="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="$(MicrosoftCodeAnalysisEditorFeaturesTextVersionVS2015)" />
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(MicrosoftCodeAnalysisWorkspacesCommonVersionVS2015)" />
<PackageReference Include="Microsoft.VisualStudio.ComponentModelHost" Version="$(MicrosoftVisualStudioComponentModelHostVersion)" />
<PackageReference Include="Microsoft.VisualStudio.CoreUtility" Version="$(MicrosoftVisualStudioCoreUtilityVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Editor" Version="$(MicrosoftVisualStudioEditorVersion)" />
<PackageReference Include="Microsoft.VisualStudio.OLE.Interop" Version="$(MicrosoftVisualStudioOLEInteropVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Shell.14.0" Version="$(MicrosoftVisualStudioShell140Version)" />
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop" Version="$(MicrosoftVisualStudioShellInteropVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.8.0" Version="$(MicrosoftVisualStudioShellInterop80Version)" />
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.9.0" Version="$(MicrosoftVisualStudioShellInterop90Version)" />
<PackageReference Include="Microsoft.VisualStudio.Shell.Interop.10.0" Version="$(MicrosoftVisualStudioShellInterop100Version)" />
<PackageReference Include="Microsoft.VisualStudio.Text.Data" Version="$(MicrosoftVisualStudioTextDataVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Text.Logic" Version="$(MicrosoftVisualStudioTextLogicVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Text.UI" Version="$(MicrosoftVisualStudioTextUIVersion)" />
<PackageReference Include="Microsoft.VisualStudio.TextManager.Interop" Version="$(MicrosoftVisualStudioTextManagerInteropVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="$(MicrosoftVisualStudioThreadingVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Utilities" Version="$(MicrosoftVisualStudioUtilitiesVersion)" />
<PackageReference Include="Microsoft.VisualStudio.Utilities" Version="$(MicrosoftVisualStudioUtilitiesVersion)" />
<PackageReference Include="VSLangProj" Version="$(VSLangProjVersion)" />
<PackageReference Include="VSSDK.TemplateWizardInterface" Version="$(VSSDKTemplateWizardInterfaceVersion)" />
</ItemGroup>
<!-- Setting Template Content to None -->
<ItemGroup>
<None Include="ProjectTemplates\CSharp\**\*.cs" />
<None Include="ProjectTemplates\CSharp\**\*.csproj" />
<None Include="ProjectTemplates\**\*.vsixmanifest" />
<None Include="ProjectTemplates\**\CodeRefactoring\**\*.vstemplate" />
<None Include="ProjectTemplates\**\Diagnostic\**\*.vstemplate" />
<None Include="ProjectTemplates\**\ConsoleApplication\**\*.vstemplate" />
<None Include="*.vstemplate" />
</ItemGroup>
<!-- C# Project Templates -->
<ItemGroup>
<VSTemplate Include="CSRef.vstemplate">
<SubType>Designer</SubType>
<OutputSubPath>Extensibility</OutputSubPath>
</VSTemplate>
<VSTemplate Include="CSharpDiagnostic.vstemplate">
<SubType>Designer</SubType>
<OutputSubPath>Extensibility</OutputSubPath>
</VSTemplate>
<VSTemplate Include="ProjectTemplates\CSharp\ConsoleApplication\CSharpConsoleApplication.vstemplate">
<SubType>Designer</SubType>
<OutputSubPath>Extensibility</OutputSubPath>
</VSTemplate>
</ItemGroup>
<!-- Content to Include in VSIX -->
<ItemGroup>
<Content Include="..\..\Tools\SyntaxVisualizer\SyntaxVisualizerExtension\SyntaxTree.bmp">
<Link>SyntaxTree.bmp</Link>
<IncludeInVSIX>true</IncludeInVSIX>
</Content>
<Content Include="..\..\Tools\SyntaxVisualizer\SyntaxVisualizerExtension\SyntaxTree.ico">
<Link>SyntaxTree.ico</Link>
<IncludeInVSIX>true</IncludeInVSIX>
</Content>
<Content Include="..\ThirdPartyNotices.rtf">
<Link>ThirdPartyNotices.rtf</Link>
<IncludeInVSIX>true</IncludeInVSIX>
</Content>
<Content Include="..\EULA.rtf">
<Link>EULA.rtf</Link>
<IncludeInVSIX>true</IncludeInVSIX>
</Content>
</ItemGroup>
<!-- Project References to Include In VSIX -->
<ItemGroup>
<ProjectReference Include="..\..\Tools\SyntaxVisualizer\SyntaxVisualizerControl\SyntaxVisualizerControl.csproj" />
<ProjectReference Include="..\..\Tools\SyntaxVisualizer\SyntaxVisualizerDgmlHelper\SyntaxVisualizerDgmlHelper.vbproj" />
<ProjectReference Include="..\..\Tools\SyntaxVisualizer\SyntaxVisualizerExtension\SyntaxVisualizerExtension.csproj">
<Name>SyntaxVisualizerExtension</Name>
<IncludeOutputGroupsInVSIX>BuiltProjectOutputGroup%3bGetCopyToOutputDirectoryItems%3bPkgdefProjectOutputGroup</IncludeOutputGroupsInVSIX>
<IncludeOutputGroupsInVSIXLocalOnly>DebugSymbolsProjectOutputGroup%3b</IncludeOutputGroupsInVSIXLocalOnly>
<ForceIncludeInVSIX>true</ForceIncludeInVSIX>
</ProjectReference>
</ItemGroup>
<!-- rewriting of .vstemplate files to reference the correct assembly version number -->
<UsingTask AssemblyFile="$(ArtifactsBinDir)UpdateTemplateVersion\net461\UpdateTemplateVersion.dll" TaskName="UpdateTemplateVersion" />
<Target Name="UpdateAssemblyVersionInTemplates" BeforeTargets="GetZipFilesFromVSTemplates">
<ItemGroup>
<_OriginalVSTemplate Include="@(VSTemplate)" />
</ItemGroup>
<UpdateTemplateVersion VSTemplatesToRewrite="@(VSTemplate)"
AssemblyVersion="$(AssemblyVersion)"
IntermediatePath="ModifiedTemplates">
<Output TaskParameter="NewVSTemplates" ItemName="VSTemplate" />
</UpdateTemplateVersion>
<ItemGroup>
<VSTemplate Remove="@(_OriginalVSTemplate)" />
</ItemGroup>
</Target>
</Project>

Просмотреть файл

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<PackageManifest Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011" xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
<Metadata>
<Identity Id="ef918f69-be54-4b44-b381-81d6cecef939" Version="|%CurrentProject%;GetBuildVersion|" Language="en-US" Publisher="Microsoft" />
<DisplayName>.NET Compiler Platform SDK For Visual Studio 2017</DisplayName>
<Description xml:space="preserve">The .NET Compiler Platform ("Roslyn") provides open-source C# and Visual Basic compilers with rich code analysis APIs. You can build code analysis tools with the same APIs that Microsoft is using to implement Visual Studio! Also includes the Syntax Visualizer, a Visual Studio extension that allows you to inspect and explore the syntax trees you'll use as you build applications and VS extensions atop the .NET Compiler Platform ("Roslyn").</Description>
<License>EULA.rtf</License>
<Tags>roslyn,template,SDK</Tags>
</Metadata>
<Installation InstalledByMsi="false">
<InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[15.4,)" />
</Installation>
<Dependencies>
<Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" d:Source="Manual" Version="[4.5,)" />
<Dependency Id="Microsoft.VisualStudio.MPF.14.0" DisplayName="Visual Studio MPF 14.0" d:Source="Installed" Version="[14.0]" />
</Dependencies>
<Assets>
<Asset Type="Microsoft.VisualStudio.ProjectTemplate" Path="CSharpConsoleApplication"/>
<Asset Type="Microsoft.VisualStudio.ProjectTemplate" Path="CSharpDiagnostic"/>
<Asset Type="Microsoft.VisualStudio.ProjectTemplate" Path="CSRef"/>
<Asset Type="Microsoft.VisualStudio.Assembly" d:Source="Project" d:ProjectName="%CurrentProject%" Path="|%CurrentProject%|" AssemblyName="|%CurrentProject%;AssemblyName|" />
<Asset Type="Microsoft.VisualStudio.VsPackage" d:Source="Project" d:ProjectName="SyntaxVisualizerExtension" Path="|SyntaxVisualizerExtension;PkgdefProjectOutputGroup|" />
</Assets>
<Prerequisites>
<Prerequisite Id="Microsoft.VisualStudio.Component.CoreEditor" Version="[15.0,16.0)" DisplayName="Visual Studio core editor" />
<Prerequisite Id="Microsoft.VisualStudio.Component.VSSDK" Version="[15.0,16.0)" DisplayName="Visual Studio SDK" />
</Prerequisites>
</PackageManifest>