Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
eaaf287e
R
roslyn
项目概览
lwm1986
/
roslyn
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
roslyn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
eaaf287e
编写于
6月 20, 2017
作者:
J
Jared Parsons
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
BuildBoss validates project system GUIDs
上级
cf58eb2c
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
202 addition
and
118 deletion
+202
-118
CrossPlatform.sln
CrossPlatform.sln
+42
-42
src/Samples/Samples.sln
src/Samples/Samples.sln
+23
-23
src/Tools/BuildBoss/ProjectData.cs
src/Tools/BuildBoss/ProjectData.cs
+4
-6
src/Tools/BuildBoss/ProjectEntry.cs
src/Tools/BuildBoss/ProjectEntry.cs
+11
-5
src/Tools/BuildBoss/ProjectUtil.cs
src/Tools/BuildBoss/ProjectUtil.cs
+37
-20
src/Tools/BuildBoss/SolutionCheckerUtil.cs
src/Tools/BuildBoss/SolutionCheckerUtil.cs
+84
-21
src/Tools/BuildBoss/SolutionUtil.cs
src/Tools/BuildBoss/SolutionUtil.cs
+1
-1
未找到文件。
CrossPlatform.sln
浏览文件 @
eaaf287e
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26228.10
MinimumVisualStudioVersion = 10.0.40219.1
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CodeAnalysis", "src\Compilers\Core\Portable\CodeAnalysis.csproj", "{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CodeAnalysis", "src\Compilers\Core\Portable\CodeAnalysis.csproj", "{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{A41D1B99-F489-4C43-BBDF-96D61B19A6B9}"
EndProject
...
...
@@ -11,69 +11,69 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Compilers", "Compilers", "{
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CSharp", "CSharp", "{32A48625-F0AD-419D-828B-A50BDABA38EA}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCodeAnalysis", "src\Compilers\CSharp\Portable\CSharpCodeAnalysis.csproj", "{B501A547-C911-4A05-AC6E-274A50DFF30E}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCodeAnalysis", "src\Compilers\CSharp\Portable\CSharpCodeAnalysis.csproj", "{B501A547-C911-4A05-AC6E-274A50DFF30E}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCompilerSyntaxTest", "src\Compilers\CSharp\Test\Syntax\CSharpCompilerSyntaxTest.csproj", "{50D26304-0961-4A51-ABF6-6CAD1A56D202}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCompilerSyntaxTest", "src\Compilers\CSharp\Test\Syntax\CSharpCompilerSyntaxTest.csproj", "{50D26304-0961-4A51-ABF6-6CAD1A56D202}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VisualBasic", "VisualBasic", "{C65C6143-BED3-46E6-869E-9F0BE6E84C37}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CompilerTestResources", "src\Compilers\Test\Resources\Core\CompilerTestResources.csproj", "{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CompilerTestResources", "src\Compilers\Test\Resources\Core\CompilerTestResources.csproj", "{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCompilerTestUtilities", "src\Compilers\Test\Utilities\CSharp\CSharpCompilerTestUtilities.csproj", "{4371944A-D3BA-4B5B-8285-82E5FFC6D1F9}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCompilerTestUtilities", "src\Compilers\Test\Utilities\CSharp\CSharpCompilerTestUtilities.csproj", "{4371944A-D3BA-4B5B-8285-82E5FFC6D1F9}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicCodeAnalysis", "src\Compilers\VisualBasic\Portable\BasicCodeAnalysis.vbproj", "{2523D0E6-DF32-4A3E-8AE0-A19BFFAE2EF6}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicCodeAnalysis", "src\Compilers\VisualBasic\Portable\BasicCodeAnalysis.vbproj", "{2523D0E6-DF32-4A3E-8AE0-A19BFFAE2EF6}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "PdbUtilities", "src\Test\PdbUtilities\PdbUtilities.csproj", "{AFDE6BEA-5038-4A4A-A88E-DBD2E4088EED}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "PdbUtilities", "src\Test\PdbUtilities\PdbUtilities.csproj", "{AFDE6BEA-5038-4A4A-A88E-DBD2E4088EED}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Workspaces", "Workspaces", "{55A62CFA-1155-46F1-ADF3-BEEE51B58AB5}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "Workspaces", "src\Workspaces\Core\Portable\Workspaces.csproj", "{5F8D2414-064A-4B3A-9B42-8E2A04246BE5}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "Workspaces", "src\Workspaces\Core\Portable\Workspaces.csproj", "{5F8D2414-064A-4B3A-9B42-8E2A04246BE5}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{FD0FAF5F-1DED-485C-99FA-84B97F3A8EEC}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CompilersBoundTreeGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\BoundTreeGenerator\CompilersBoundTreeGenerator.csproj", "{02459936-CD2C-4F61-B671-5C518F2A3DDC}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CompilersBoundTreeGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\BoundTreeGenerator\CompilersBoundTreeGenerator.csproj", "{02459936-CD2C-4F61-B671-5C518F2A3DDC}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpErrorFactsGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\CSharpErrorFactsGenerator\CSharpErrorFactsGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2E}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpErrorFactsGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\CSharpErrorFactsGenerator\CSharpErrorFactsGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2E}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpSyntaxGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2D}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpSyntaxGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2D}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "VisualBasicSyntaxGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\VisualBasicSyntaxGenerator\VisualBasicSyntaxGenerator.vbproj", "{6AA96934-D6B7-4CC8-990D-DB6B9DD56E34}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "VisualBasicSyntaxGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\VisualBasicSyntaxGenerator\VisualBasicSyntaxGenerator.vbproj", "{6AA96934-D6B7-4CC8-990D-DB6B9DD56E34}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "VisualBasicErrorFactsGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\VisualBasicErrorFactsGenerator\VisualBasicErrorFactsGenerator.vbproj", "{909B656F-6095-4AC2-A5AB-C3F032315C45}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "VisualBasicErrorFactsGenerator", "src\Tools\Source\CompilerGeneratorTools\Source\VisualBasicErrorFactsGenerator\VisualBasicErrorFactsGenerator.vbproj", "{909B656F-6095-4AC2-A5AB-C3F032315C45}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpWorkspace", "src\Workspaces\CSharp\Portable\CSharpWorkspace.csproj", "{21B239D0-D144-430F-A394-C066D58EE267}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpWorkspace", "src\Workspaces\CSharp\Portable\CSharpWorkspace.csproj", "{21B239D0-D144-430F-A394-C066D58EE267}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicWorkspace", "src\Workspaces\VisualBasic\Portable\BasicWorkspace.vbproj", "{57CA988D-F010-4BF2-9A2E-07D6DCD2FF2C}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicWorkspace", "src\Workspaces\VisualBasic\Portable\BasicWorkspace.vbproj", "{57CA988D-F010-4BF2-9A2E-07D6DCD2FF2C}"
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "AnalyzerDriver", "src\Compilers\Core\AnalyzerDriver\AnalyzerDriver.shproj", "{D0BC9BE7-24F6-40CA-8DC6-FCB93BD44B34}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CscCore", "src\Compilers\CSharp\CscCore\CscCore.csproj", "{E3CD2895-76A8-4D11-A316-EA67CB5EA42C}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CscCore", "src\Compilers\CSharp\CscCore\CscCore.csproj", "{E3CD2895-76A8-4D11-A316-EA67CB5EA42C}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "VbcCore", "src\Compilers\VisualBasic\VbcCore\VbcCore.csproj", "{8CE3A581-2969-4864-A803-013E9D977C3A}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "VbcCore", "src\Compilers\VisualBasic\VbcCore\VbcCore.csproj", "{8CE3A581-2969-4864-A803-013E9D977C3A}"
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommandLine", "src\Compilers\Core\CommandLine\CommandLine.shproj", "{AD6F474E-E6D4-4217-91F3-B7AF1BE31CCC}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{50509463-6012-4061-99BF-6C5C8262E643}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "TestUtilities", "src\Test\Utilities\Portable\TestUtilities.csproj", "{CCBD3438-3E84-40A9-83AD-533F23BCFCA5}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "TestUtilities", "src\Test\Utilities\Portable\TestUtilities.csproj", "{CCBD3438-3E84-40A9-83AD-533F23BCFCA5}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "DeployCoreClrTestRuntime", "src\Test\DeployCoreClrTestRuntime\DeployCoreClrTestRuntime.csproj", "{59BABFC3-C19B-4472-A93D-3DD3835BC219}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "DeployCoreClrTestRuntime", "src\Test\DeployCoreClrTestRuntime\DeployCoreClrTestRuntime.csproj", "{59BABFC3-C19B-4472-A93D-3DD3835BC219}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Scripting", "Scripting", "{A6F70573-57FE-49F9-A26C-75B8D202B795}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "ScriptingTest", "src\Scripting\CoreTest\ScriptingTest.csproj", "{2DAE4406-7A89-4B5F-95C3-BC5472CE47CE}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "ScriptingTest", "src\Scripting\CoreTest\ScriptingTest.csproj", "{2DAE4406-7A89-4B5F-95C3-BC5472CE47CE}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "DeployCompilerGeneratorToolsRuntime", "src\Tools\Source\CompilerGeneratorTools\DeployCompilerGeneratorToolsRuntime\DeployCompilerGeneratorToolsRuntime.csproj", "{6DA08F12-32F2-4DD9-BBAD-982EB71A2C9B}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "DeployCompilerGeneratorToolsRuntime", "src\Tools\Source\CompilerGeneratorTools\DeployCompilerGeneratorToolsRuntime\DeployCompilerGeneratorToolsRuntime.csproj", "{6DA08F12-32F2-4DD9-BBAD-982EB71A2C9B}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "Scripting", "src\Scripting\Core\Scripting.csproj", "{12A68549-4E8C-42D6-8703-A09335F97997}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "Scripting", "src\Scripting\Core\Scripting.csproj", "{12A68549-4E8C-42D6-8703-A09335F97997}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpScripting", "src\Scripting\CSharp\CSharpScripting.csproj", "{066F0DBD-C46C-4C20-AFEC-99829A172625}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpScripting", "src\Scripting\CSharp\CSharpScripting.csproj", "{066F0DBD-C46C-4C20-AFEC-99829A172625}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicScripting", "src\Scripting\VisualBasic\BasicScripting.vbproj", "{3E7DEA65-317B-4F43-A25D-62F18D96CFD7}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicScripting", "src\Scripting\VisualBasic\BasicScripting.vbproj", "{3E7DEA65-317B-4F43-A25D-62F18D96CFD7}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpScriptingTest", "src\Scripting\CSharpTest\CSharpScriptingTest.csproj", "{2DAE4406-7A89-4B5F-95C3-BC5422CE47CE}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpScriptingTest", "src\Scripting\CSharpTest\CSharpScriptingTest.csproj", "{2DAE4406-7A89-4B5F-95C3-BC5422CE47CE}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicScriptingTest", "src\Scripting\VisualBasicTest\BasicScriptingTest.vbproj", "{ABC7262E-1053-49F3-B846-E3091BB92E8C}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicScriptingTest", "src\Scripting\VisualBasicTest\BasicScriptingTest.vbproj", "{ABC7262E-1053-49F3-B846-E3091BB92E8C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dependencies", "Dependencies", "{A18BACE1-BB66-4156-8E89-81429A5814C6}"
EndProject
...
...
@@ -81,43 +81,43 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.CodeAnalysis.Debu
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.CodeAnalysis.PooledObjects", "src\Dependencies\PooledObjects\Microsoft.CodeAnalysis.PooledObjects.shproj", "{C1930979-C824-496B-A630-70F5369A636F}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "MSBuildTask", "src\Compilers\Core\MSBuildTask\MSBuildTask.csproj", "{7AD4FE65-9A30-41A6-8004-AA8F89BCB7F3}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "MSBuildTask", "src\Compilers\Core\MSBuildTask\MSBuildTask.csproj", "{7AD4FE65-9A30-41A6-8004-AA8F89BCB7F3}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "ScriptingTestUtilities", "src\Scripting\CoreTestUtilities\ScriptingTestUtilities.csproj", "{21A01C2D-2501-4619-8144-48977DD22D9C}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "ScriptingTestUtilities", "src\Scripting\CoreTestUtilities\ScriptingTestUtilities.csproj", "{21A01C2D-2501-4619-8144-48977DD22D9C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Interactive", "Interactive", "{FED79E76-76A7-48A1-B0F1-E5E56B5E7FE4}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Hosts", "Hosts", "{0F0F4F95-0BEC-4623-9B26-DBD662F1193F}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CsiCore", "src\Interactive\CsiCore\CsiCore.csproj", "{D1B051A4-F2A1-4E97-9747-C41D13E475FD}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CsiCore", "src\Interactive\CsiCore\CsiCore.csproj", "{D1B051A4-F2A1-4E97-9747-C41D13E475FD}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "VbiCore", "src\Interactive\VbiCore\VbiCore.vbproj", "{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "VbiCore", "src\Interactive\VbiCore\VbiCore.vbproj", "{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "TestUtilities.CoreClr", "src\Test\Utilities\CoreClr\TestUtilities.CoreClr.csproj", "{67CA3EEE-37F1-4EDF-BD9B-C11911748F37}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "TestUtilities.CoreClr", "src\Test\Utilities\CoreClr\TestUtilities.CoreClr.csproj", "{67CA3EEE-37F1-4EDF-BD9B-C11911748F37}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Features", "Features", "{C1BB2B88-87E2-4AA4-9F82-770873D3F434}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CodeStyle", "CodeStyle", "{6B83F334-CB79-47C8-8EA9-5391DA1601F4}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CodeStyle", "src\CodeStyle\Core\Analyzers\CodeStyle.csproj", "{275812EE-DEDB-4232-9439-91C9757D2AE4}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CodeStyle", "src\CodeStyle\Core\Analyzers\CodeStyle.csproj", "{275812EE-DEDB-4232-9439-91C9757D2AE4}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CodeStyleFixes", "src\CodeStyle\Core\CodeFixes\CodeStyleFixes.csproj", "{5FF1E493-69CC-4D0B-83F2-039F469A04E1}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CodeStyleFixes", "src\CodeStyle\Core\CodeFixes\CodeStyleFixes.csproj", "{5FF1E493-69CC-4D0B-83F2-039F469A04E1}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCodeStyle", "src\CodeStyle\CSharp\Analyzers\CSharpCodeStyle.csproj", "{AA87BFED-089A-4096-B8D5-690BDC7D5B24}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCodeStyle", "src\CodeStyle\CSharp\Analyzers\CSharpCodeStyle.csproj", "{AA87BFED-089A-4096-B8D5-690BDC7D5B24}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCodeStyleFixes", "src\CodeStyle\CSharp\CodeFixes\CSharpCodeStyleFixes.csproj", "{A07ABCF5-BC43-4EE9-8FD8-B2D77FD54D73}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCodeStyleFixes", "src\CodeStyle\CSharp\CodeFixes\CSharpCodeStyleFixes.csproj", "{A07ABCF5-BC43-4EE9-8FD8-B2D77FD54D73}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicCodeStyle", "src\CodeStyle\VisualBasic\Analyzers\BasicCodeStyle.vbproj", "{2531A8C4-97DD-47BC-A79C-B7846051E137}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicCodeStyle", "src\CodeStyle\VisualBasic\Analyzers\BasicCodeStyle.vbproj", "{2531A8C4-97DD-47BC-A79C-B7846051E137}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicCodeStyleFixes", "src\CodeStyle\VisualBasic\CodeFixes\BasicCodeStyleFixes.vbproj", "{0141285D-8F6C-42C7-BAF3-3C0CCD61C716}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicCodeStyleFixes", "src\CodeStyle\VisualBasic\CodeFixes\BasicCodeStyleFixes.vbproj", "{0141285D-8F6C-42C7-BAF3-3C0CCD61C716}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CodeStyleTests", "src\CodeStyle\Core\Tests\CodeStyleTests.csproj", "{9FF1205F-1D7C-4EE4-B038-3456FE6EBEAF}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CodeStyleTests", "src\CodeStyle\Core\Tests\CodeStyleTests.csproj", "{9FF1205F-1D7C-4EE4-B038-3456FE6EBEAF}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCodeStyleTests", "src\CodeStyle\CSharp\Tests\CSharpCodeStyleTests.csproj", "{5018D049-5870-465A-889B-C742CE1E31CB}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCodeStyleTests", "src\CodeStyle\CSharp\Tests\CSharpCodeStyleTests.csproj", "{5018D049-5870-465A-889B-C742CE1E31CB}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicCodeStyleTests", "src\CodeStyle\VisualBasic\Tests\BasicCodeStyleTests.vbproj", "{E512C6C1-F085-4AD7-B0D9-E8F1A0A2A510}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicCodeStyleTests", "src\CodeStyle\VisualBasic\Tests\BasicCodeStyleTests.vbproj", "{E512C6C1-F085-4AD7-B0D9-E8F1A0A2A510}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCompilerSymbolTest", "src\Compilers\CSharp\Test\Symbol\CSharpCompilerSymbolTest.csproj", "{28026D16-EB0C-40B0-BDA7-11CAA2B97CCC}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCompilerSymbolTest", "src\Compilers\CSharp\Test\Symbol\CSharpCompilerSymbolTest.csproj", "{28026D16-EB0C-40B0-BDA7-11CAA2B97CCC}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
...
...
src/Samples/Samples.sln
浏览文件 @
eaaf287e
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26014.0
...
...
@@ -47,7 +47,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{B00C02
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Analyzers", "Analyzers", "{4BAF1EA2-7E3E-4716-A616-8737F6D719B3}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpAnalyzers", "CSharp\Analyzers\CSharpAnalyzers\CSharpAnalyzers\CSharpAnalyzers.csproj", "{409C5A1C-D4DE-43C4-86E1-F598C60B794B}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpAnalyzers", "CSharp\Analyzers\CSharpAnalyzers\CSharpAnalyzers\CSharpAnalyzers.csproj", "{409C5A1C-D4DE-43C4-86E1-F598C60B794B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpAnalyzers.Test", "CSharp\Analyzers\CSharpAnalyzers\CSharpAnalyzers.Test\CSharpAnalyzers.Test.csproj", "{E5603AB0-C831-4044-8E44-3CA853B6A152}"
EndProject
...
...
@@ -75,7 +75,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CopyPasteWithUsing", "CopyP
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Analyzers", "Analyzers", "{9B332B8A-A5D5-4622-8066-B4A5D9B49C60}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicAnalyzers", "VisualBasic\Analyzers\BasicAnalyzers\BasicAnalyzers\BasicAnalyzers.vbproj", "{9E86BCE5-E095-4E9F-9C45-22D5AEB6AD2A}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicAnalyzers", "VisualBasic\Analyzers\BasicAnalyzers\BasicAnalyzers\BasicAnalyzers.vbproj", "{9E86BCE5-E095-4E9F-9C45-22D5AEB6AD2A}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "BasicAnalyzers.Test", "VisualBasic\Analyzers\BasicAnalyzers\BasicAnalyzers.Test\BasicAnalyzers.Test.vbproj", "{5399E7A8-F8F1-4F2E-A5D2-9C96F3DD2A2D}"
EndProject
...
...
@@ -115,45 +115,45 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "RemoveByValVB.UnitTests", "
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "TreeTransformsVB", "VisualBasic\TreeTransforms\TreeTransformsVB.vbproj", "{D89124D4-FB1D-4D08-BD95-F60BD24D5965}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CodeAnalysis", "..\Compilers\Core\Portable\CodeAnalysis.csproj", "{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CodeAnalysis", "..\Compilers\Core\Portable\CodeAnalysis.csproj", "{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpCodeAnalysis", "..\Compilers\CSharp\Portable\CSharpCodeAnalysis.csproj", "{B501A547-C911-4A05-AC6E-274A50DFF30E}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpCodeAnalysis", "..\Compilers\CSharp\Portable\CSharpCodeAnalysis.csproj", "{B501A547-C911-4A05-AC6E-274A50DFF30E}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicCodeAnalysis", "..\Compilers\VisualBasic\Portable\BasicCodeAnalysis.vbproj", "{2523D0E6-DF32-4A3E-8AE0-A19BFFAE2EF6}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicCodeAnalysis", "..\Compilers\VisualBasic\Portable\BasicCodeAnalysis.vbproj", "{2523D0E6-DF32-4A3E-8AE0-A19BFFAE2EF6}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "Workspaces", "..\Workspaces\Core\Portable\Workspaces.csproj", "{5F8D2414-064A-4B3A-9B42-8E2A04246BE5}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "Workspaces", "..\Workspaces\Core\Portable\Workspaces.csproj", "{5F8D2414-064A-4B3A-9B42-8E2A04246BE5}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpWorkspace", "..\Workspaces\CSharp\Portable\CSharpWorkspace.csproj", "{21B239D0-D144-430F-A394-C066D58EE267}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpWorkspace", "..\Workspaces\CSharp\Portable\CSharpWorkspace.csproj", "{21B239D0-D144-430F-A394-C066D58EE267}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "BasicWorkspace", "..\Workspaces\VisualBasic\Portable\BasicWorkspace.vbproj", "{57CA988D-F010-4BF2-9A2E-07D6DCD2FF2C}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "BasicWorkspace", "..\Workspaces\VisualBasic\Portable\BasicWorkspace.vbproj", "{57CA988D-F010-4BF2-9A2E-07D6DCD2FF2C}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "Workspaces.Desktop", "..\Workspaces\Core\Desktop\Workspaces.Desktop.csproj", "{2E87FA96-50BB-4607-8676-46521599F998}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "Workspaces.Desktop", "..\Workspaces\Core\Desktop\Workspaces.Desktop.csproj", "{2E87FA96-50BB-4607-8676-46521599F998}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "EditorFeatures", "..\EditorFeatures\Core\EditorFeatures.csproj", "{3CDEEAB7-2256-418A-BEB2-620B5CB16302}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "EditorFeatures", "..\EditorFeatures\Core\EditorFeatures.csproj", "{3CDEEAB7-2256-418A-BEB2-620B5CB16302}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "Features", "..\Features\Core\Portable\Features.csproj", "{EDC68A0E-C68D-4A74-91B7-BF38EC909888}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "Features", "..\Features\Core\Portable\Features.csproj", "{EDC68A0E-C68D-4A74-91B7-BF38EC909888}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "DeployCompilerGeneratorToolsRuntime", "..\Tools\Source\CompilerGeneratorTools\DeployCompilerGeneratorToolsRuntime\DeployCompilerGeneratorToolsRuntime.csproj", "{6DA08F12-32F2-4DD9-BBAD-982EB71A2C9B}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "DeployCompilerGeneratorToolsRuntime", "..\Tools\Source\CompilerGeneratorTools\DeployCompilerGeneratorToolsRuntime\DeployCompilerGeneratorToolsRuntime.csproj", "{6DA08F12-32F2-4DD9-BBAD-982EB71A2C9B}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CompilersBoundTreeGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\BoundTreeGenerator\CompilersBoundTreeGenerator.csproj", "{02459936-CD2C-4F61-B671-5C518F2A3DDC}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CompilersBoundTreeGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\BoundTreeGenerator\CompilersBoundTreeGenerator.csproj", "{02459936-CD2C-4F61-B671-5C518F2A3DDC}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpErrorFactsGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\CSharpErrorFactsGenerator\CSharpErrorFactsGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2E}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpErrorFactsGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\CSharpErrorFactsGenerator\CSharpErrorFactsGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2E}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CSharpSyntaxGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2D}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CSharpSyntaxGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\CSharpSyntaxGenerator\CSharpSyntaxGenerator.csproj", "{288089C5-8721-458E-BE3E-78990DAB5E2D}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "VisualBasicErrorFactsGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\VisualBasicErrorFactsGenerator\VisualBasicErrorFactsGenerator.vbproj", "{909B656F-6095-4AC2-A5AB-C3F032315C45}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "VisualBasicErrorFactsGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\VisualBasicErrorFactsGenerator\VisualBasicErrorFactsGenerator.vbproj", "{909B656F-6095-4AC2-A5AB-C3F032315C45}"
EndProject
Project("{
F184B08F-C81C-45F6-A57F-5ABD9991F28F
}") = "VisualBasicSyntaxGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\VisualBasicSyntaxGenerator\VisualBasicSyntaxGenerator.vbproj", "{6AA96934-D6B7-4CC8-990D-DB6B9DD56E34}"
Project("{
778DAE3C-4631-46EA-AA77-85C1314464D9
}") = "VisualBasicSyntaxGenerator", "..\Tools\Source\CompilerGeneratorTools\Source\VisualBasicSyntaxGenerator\VisualBasicSyntaxGenerator.vbproj", "{6AA96934-D6B7-4CC8-990D-DB6B9DD56E34}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "TextEditorFeatures", "..\EditorFeatures\Text\TextEditorFeatures.csproj", "{18F5FBB8-7570-4412-8CC7-0A86FF13B7BA}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "TextEditorFeatures", "..\EditorFeatures\Text\TextEditorFeatures.csproj", "{18F5FBB8-7570-4412-8CC7-0A86FF13B7BA}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "TestUtilities.Desktop", "..\Test\Utilities\Desktop\TestUtilities.Desktop.csproj", "{76C6F005-C89D-4348-BB4A-391898DBEB52}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "TestUtilities.Desktop", "..\Test\Utilities\Desktop\TestUtilities.Desktop.csproj", "{76C6F005-C89D-4348-BB4A-391898DBEB52}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "CompilerTestResources", "..\Compilers\Test\Resources\Core\CompilerTestResources.csproj", "{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "CompilerTestResources", "..\Compilers\Test\Resources\Core\CompilerTestResources.csproj", "{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "PdbUtilities", "..\Test\PdbUtilities\PdbUtilities.csproj", "{AFDE6BEA-5038-4A4A-A88E-DBD2E4088EED}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "PdbUtilities", "..\Test\PdbUtilities\PdbUtilities.csproj", "{AFDE6BEA-5038-4A4A-A88E-DBD2E4088EED}"
EndProject
Project("{
FAE04EC0-301F-11D3-BF4B-00C04F79EFBC
}") = "TestUtilities", "..\Test\Utilities\Portable\TestUtilities.csproj", "{CCBD3438-3E84-40A9-83AD-533F23BCFCA5}"
Project("{
9A19103F-16F7-4668-BE54-9A1E7A4F7556
}") = "TestUtilities", "..\Test\Utilities\Portable\TestUtilities.csproj", "{CCBD3438-3E84-40A9-83AD-533F23BCFCA5}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
...
...
src/Tools/BuildBoss/ProjectData.cs
浏览文件 @
eaaf287e
...
...
@@ -10,21 +10,19 @@ namespace BuildBoss
{
internal
sealed
class
ProjectData
{
internal
ProjectKey
Key
{
get
;
}
internal
string
FilePath
{
get
;
}
internal
XDocument
Document
{
get
;
}
internal
ProjectUtil
ProjectUtil
{
get
;
}
internal
XDocument
Document
=>
ProjectUtil
.
Document
;
internal
ProjectKey
Key
=>
ProjectUtil
.
Key
;
internal
string
FileName
=>
Path
.
GetFileName
(
FilePath
);
internal
string
Directory
=>
Path
.
GetDirectoryName
(
FilePath
);
internal
ProjectFileType
ProjectFileType
=>
ProjectEntryUtil
.
GetProjectFileType
(
FilePath
);
internal
ProjectData
(
string
filePath
)
{
Key
=
new
ProjectKey
(
filePath
);
FilePath
=
Key
.
FilePath
;
Document
=
XDocument
.
Load
(
FilePath
);
ProjectUtil
=
new
ProjectUtil
(
Key
,
Document
);
FilePath
=
filePath
;
ProjectUtil
=
new
ProjectUtil
(
FilePath
);
}
}
}
src/Tools/BuildBoss/ProjectEntry.cs
浏览文件 @
eaaf287e
...
...
@@ -14,7 +14,7 @@ internal struct ProjectEntry
{
internal
string
RelativeFilePath
{
get
;
}
internal
string
Name
{
get
;
}
internal
Guid
Guid
{
get
;
}
internal
Guid
Project
Guid
{
get
;
}
internal
Guid
TypeGuid
{
get
;
}
internal
bool
IsFolder
=>
TypeGuid
==
ProjectEntryUtil
.
FolderProjectType
;
...
...
@@ -23,12 +23,12 @@ internal struct ProjectEntry
internal
ProjectEntry
(
string
relativeFilePath
,
string
name
,
Guid
g
uid
,
Guid
projectG
uid
,
Guid
typeGuid
)
{
RelativeFilePath
=
relativeFilePath
;
Name
=
name
;
Guid
=
g
uid
;
ProjectGuid
=
projectG
uid
;
TypeGuid
=
typeGuid
;
}
...
...
@@ -37,8 +37,14 @@ internal struct ProjectEntry
internal
static
class
ProjectEntryUtil
{
internal
static
readonly
Guid
FolderProjectType
=
new
Guid
(
"{2150E333-8FDC-42A3-9474-1A3956D46DE8}"
);
internal
static
readonly
Guid
VsixProjectType
=
new
Guid
(
"{82B43B9B-A64C-4715-B499-D71E9CA2BD60}"
);
internal
static
readonly
Guid
FolderProjectType
=
new
Guid
(
"2150E333-8FDC-42A3-9474-1A3956D46DE8"
);
internal
static
readonly
Guid
VsixProjectType
=
new
Guid
(
"82B43B9B-A64C-4715-B499-D71E9CA2BD60"
);
internal
static
readonly
Guid
SharedProject
=
new
Guid
(
"D954291E-2A0B-460D-934E-DC6B0785DB48"
);
internal
static
readonly
Guid
LegacyProjectSystemCSharp
=
new
Guid
(
"FAE04EC0-301F-11D3-BF4B-00C04F79EFBC"
);
internal
static
readonly
Guid
ManagedProjectSystemCSharp
=
new
Guid
(
"9A19103F-16F7-4668-BE54-9A1E7A4F7556"
);
internal
static
readonly
Guid
LegacyProjectSystemVisualBasic
=
new
Guid
(
"F184B08F-C81C-45F6-A57F-5ABD9991F28F"
);
internal
static
readonly
Guid
ManagedProjectSystemVisualBasic
=
new
Guid
(
"778DAE3C-4631-46EA-AA77-85C1314464D9"
);
internal
static
ProjectFileType
GetProjectFileType
(
string
path
)
{
...
...
src/Tools/BuildBoss/ProjectUtil.cs
浏览文件 @
eaaf287e
...
...
@@ -12,10 +12,27 @@ namespace BuildBoss
{
internal
class
ProjectUtil
{
private
readonly
ProjectKey
_key
;
private
readonly
XDocument
_document
;
private
readonly
XmlNamespaceManager
_manager
;
private
readonly
XNamespace
_namespace
;
internal
ProjectKey
Key
{
get
;
}
internal
XDocument
Document
{
get
;
}
internal
XmlNamespaceManager
Manager
{
get
;
}
internal
XNamespace
Namespace
{
get
;
}
public
bool
IsNewSdk
=>
Document
.
XPathSelectElements
(
"//mb:TargetFramework"
,
Manager
).
FirstOrDefault
()
!=
null
;
public
bool
IsDesktopProject
=>
Document
.
XPathSelectElements
(
"//mb:TargetFrameworkVersion"
,
Manager
).
FirstOrDefault
()
!=
null
;
public
bool
IsPclProject
{
get
{
var
elem
=
Document
.
XPathSelectElements
(
"//mb:TargetFrameworkIdentifier"
,
Manager
).
FirstOrDefault
();
if
(
elem
==
null
)
{
return
false
;
}
return
StringComparer
.
OrdinalIgnoreCase
.
Equals
(
elem
.
Value
,
".NETPortable"
);
}
}
internal
ProjectUtil
(
string
filePath
)
:
this
(
new
ProjectKey
(
filePath
),
XDocument
.
Load
(
filePath
))
{
...
...
@@ -23,11 +40,11 @@ internal ProjectUtil(string filePath) : this(new ProjectKey(filePath), XDocument
internal
ProjectUtil
(
ProjectKey
key
,
XDocument
document
)
{
_k
ey
=
key
;
_d
ocument
=
document
;
_m
anager
=
new
XmlNamespaceManager
(
new
NameTable
());
_m
anager
.
AddNamespace
(
"mb"
,
SharedUtil
.
MSBuildNamespaceUriRaw
);
_n
amespace
=
SharedUtil
.
MSBuildNamespace
;
K
ey
=
key
;
D
ocument
=
document
;
M
anager
=
new
XmlNamespaceManager
(
new
NameTable
());
M
anager
.
AddNamespace
(
"mb"
,
SharedUtil
.
MSBuildNamespaceUriRaw
);
N
amespace
=
SharedUtil
.
MSBuildNamespace
;
}
internal
RoslynProjectData
GetRoslynProjectData
()
...
...
@@ -82,7 +99,7 @@ internal bool TryGetRoslynProjectData(out RoslynProjectData data, out string err
internal
Guid
?
GetProjectGuid
()
{
var
elem
=
_document
.
XPathSelectElements
(
"//mb:ProjectGuid"
,
_m
anager
).
FirstOrDefault
();
var
elem
=
Document
.
XPathSelectElements
(
"//mb:ProjectGuid"
,
M
anager
).
FirstOrDefault
();
if
(
elem
==
null
)
{
return
null
;
...
...
@@ -105,7 +122,7 @@ internal bool TryGetRoslynProjectData(out RoslynProjectData data, out string err
internal
IEnumerable
<
XElement
>
GetAllPropertyGroupElements
()
{
var
groups
=
_document
.
XPathSelectElements
(
"//mb:PropertyGroup"
,
_m
anager
);
var
groups
=
Document
.
XPathSelectElements
(
"//mb:PropertyGroup"
,
M
anager
);
foreach
(
var
group
in
groups
)
{
foreach
(
var
element
in
group
.
Elements
())
...
...
@@ -117,12 +134,12 @@ internal IEnumerable<XElement> GetAllPropertyGroupElements()
internal
IEnumerable
<
XElement
>
GetTargets
()
{
return
_document
.
XPathSelectElements
(
"//mb:Target"
,
_m
anager
);
return
Document
.
XPathSelectElements
(
"//mb:Target"
,
M
anager
);
}
internal
IEnumerable
<
XElement
>
GetImports
()
{
return
_document
.
XPathSelectElements
(
"//mb:Import"
,
_m
anager
);
return
Document
.
XPathSelectElements
(
"//mb:Import"
,
M
anager
);
}
internal
IEnumerable
<
string
>
GetImportProjects
()
...
...
@@ -134,19 +151,19 @@ internal IEnumerable<string> GetImportProjects()
internal
IEnumerable
<
XElement
>
GetItemGroup
()
{
return
_document
.
XPathSelectElements
(
"//mb:ItemGroup"
,
_m
anager
);
return
Document
.
XPathSelectElements
(
"//mb:ItemGroup"
,
M
anager
);
}
internal
List
<
ProjectReferenceEntry
>
GetDeclaredProjectReferences
()
{
var
references
=
_document
.
XPathSelectElements
(
"//mb:ProjectReference"
,
_m
anager
);
var
references
=
Document
.
XPathSelectElements
(
"//mb:ProjectReference"
,
M
anager
);
var
list
=
new
List
<
ProjectReferenceEntry
>();
var
directory
=
Path
.
GetDirectoryName
(
_k
ey
.
FilePath
);
var
directory
=
Path
.
GetDirectoryName
(
K
ey
.
FilePath
);
foreach
(
var
r
in
references
)
{
// Make sure to check for references that exist only for ordering purposes. They don't count as
// actual references.
var
refOutputAssembly
=
r
.
Element
(
_n
amespace
.
GetName
(
"ReferenceOutputAssembly"
));
var
refOutputAssembly
=
r
.
Element
(
N
amespace
.
GetName
(
"ReferenceOutputAssembly"
));
if
(
refOutputAssembly
!=
null
)
{
bool
isRealReference
;
...
...
@@ -157,7 +174,7 @@ internal List<ProjectReferenceEntry> GetDeclaredProjectReferences()
}
Guid
?
project
=
null
;
var
projectElement
=
r
.
Element
(
_n
amespace
.
GetName
(
"Project"
));
var
projectElement
=
r
.
Element
(
N
amespace
.
GetName
(
"Project"
));
if
(
projectElement
!=
null
)
{
project
=
Guid
.
Parse
(
projectElement
.
Value
.
Trim
());
...
...
@@ -175,7 +192,7 @@ internal List<ProjectReferenceEntry> GetDeclaredProjectReferences()
internal
List
<
PackageReference
>
GetPackageReferences
()
{
var
list
=
new
List
<
PackageReference
>();
foreach
(
var
packageRef
in
_document
.
XPathSelectElements
(
"//mb:PackageReference"
,
_m
anager
))
foreach
(
var
packageRef
in
Document
.
XPathSelectElements
(
"//mb:PackageReference"
,
M
anager
))
{
list
.
Add
(
GetPackageReference
(
packageRef
));
}
...
...
@@ -192,7 +209,7 @@ internal PackageReference GetPackageReference(XElement element)
return
new
PackageReference
(
name
,
version
.
Value
);
}
var
elem
=
element
.
Element
(
_n
amespace
.
GetName
(
"Version"
));
var
elem
=
element
.
Element
(
N
amespace
.
GetName
(
"Version"
));
if
(
element
==
null
)
{
throw
new
Exception
(
$"Could not find a Version for package reference
{
name
}
"
);
...
...
src/Tools/BuildBoss/SolutionCheckerUtil.cs
浏览文件 @
eaaf287e
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Immutable
;
using
System.IO
;
using
System.Linq
;
using
System.Text
;
...
...
@@ -9,33 +10,78 @@ namespace BuildBoss
{
internal
sealed
class
SolutionCheckerUtil
:
ICheckerUtil
{
private
readonly
string
_solutionFilePath
;
private
struct
SolutionProjectData
{
internal
ProjectEntry
ProjectEntry
;
internal
ProjectData
ProjectData
;
internal
SolutionProjectData
(
ProjectEntry
entry
,
ProjectData
data
)
{
ProjectEntry
=
entry
;
ProjectData
=
data
;
}
}
internal
string
SolutionFilePath
{
get
;
}
internal
string
SolutionPath
{
get
;
}
internal
SolutionCheckerUtil
(
string
solutionFilePath
)
{
_solutionFilePath
=
solutionFilePath
;
SolutionFilePath
=
solutionFilePath
;
SolutionPath
=
Path
.
GetDirectoryName
(
SolutionFilePath
);
}
public
bool
Check
(
TextWriter
textWriter
)
{
var
solutionPath
=
Path
.
GetDirectoryName
(
_solutionFilePath
);
var
projectDataList
=
SolutionUtil
.
ParseProjects
(
_solutionFilePath
);
var
map
=
new
Dictionary
<
ProjectKey
,
ProjectData
>();
var
allGood
=
true
;
foreach
(
var
projectEntry
in
projectDataList
)
allGood
&=
CheckDuplicate
(
textWriter
,
out
var
map
);
allGood
&=
CheckProjects
(
textWriter
,
map
);
allGood
&=
CheckProjectSystemGuid
(
textWriter
,
map
.
Values
);
return
allGood
;
}
private
bool
CheckProjects
(
TextWriter
textWriter
,
Dictionary
<
ProjectKey
,
SolutionProjectData
>
map
)
{
var
solutionMap
=
new
Dictionary
<
ProjectKey
,
ProjectData
>();
foreach
(
var
pair
in
map
)
{
if
(
projectEntry
.
IsFolder
)
solutionMap
.
Add
(
pair
.
Key
,
pair
.
Value
.
ProjectData
);
}
var
allGood
=
true
;
var
count
=
0
;
foreach
(
var
data
in
map
.
Values
.
OrderBy
(
x
=>
x
.
ProjectEntry
.
Name
))
{
var
projectWriter
=
new
StringWriter
();
var
projectData
=
data
.
ProjectData
;
projectWriter
.
WriteLine
(
$"Processing
{
projectData
.
Key
.
FileName
}
"
);
var
util
=
new
ProjectCheckerUtil
(
projectData
,
solutionMap
);
if
(!
util
.
Check
(
projectWriter
))
{
continue
;
allGood
=
false
;
textWriter
.
WriteLine
(
projectWriter
.
ToString
());
}
count
++;
}
// TODO: temporary work around util a cross cutting change can be sync'd up.
if
(
Path
.
GetFileName
(
projectEntry
.
RelativeFilePath
)
==
"CompilerPerfTest.vbproj"
)
textWriter
.
WriteLine
(
$"Processed
{
count
}
projects"
);
return
allGood
;
}
private
bool
CheckDuplicate
(
TextWriter
textWriter
,
out
Dictionary
<
ProjectKey
,
SolutionProjectData
>
map
)
{
map
=
new
Dictionary
<
ProjectKey
,
SolutionProjectData
>();
var
allGood
=
true
;
foreach
(
var
projectEntry
in
SolutionUtil
.
ParseProjects
(
SolutionFilePath
))
{
if
(
projectEntry
.
IsFolder
)
{
continue
;
}
var
projectFilePath
=
Path
.
Combine
(
s
olutionPath
,
projectEntry
.
RelativeFilePath
);
var
projectFilePath
=
Path
.
Combine
(
S
olutionPath
,
projectEntry
.
RelativeFilePath
);
var
projectData
=
new
ProjectData
(
projectFilePath
);
if
(
map
.
ContainsKey
(
projectData
.
Key
))
{
...
...
@@ -44,25 +90,42 @@ public bool Check(TextWriter textWriter)
}
else
{
map
.
Add
(
projectData
.
Key
,
projectData
);
map
.
Add
(
projectData
.
Key
,
new
SolutionProjectData
(
projectEntry
,
projectData
)
);
}
}
var
count
=
0
;
foreach
(
var
projectData
in
map
.
Values
.
OrderBy
(
x
=>
x
.
FileName
))
return
allGood
;
}
/// <summary>
/// Ensure solution files have the proper project system GUID.
/// </summary>
private
bool
CheckProjectSystemGuid
(
TextWriter
textWriter
,
IEnumerable
<
SolutionProjectData
>
dataList
)
{
Guid
getExpectedGuid
(
ProjectData
data
)
{
var
projectWriter
=
new
StringWriter
();
projectWriter
.
WriteLine
(
$"Processing
{
projectData
.
Key
.
FileName
}
"
);
var
util
=
new
ProjectCheckerUtil
(
projectData
,
map
);
if
(!
util
.
Check
(
projectWriter
))
var
util
=
data
.
ProjectUtil
;
switch
(
ProjectEntryUtil
.
GetProjectFileType
(
data
.
FilePath
))
{
case
ProjectFileType
.
CSharp
:
return
util
.
IsNewSdk
?
ProjectEntryUtil
.
ManagedProjectSystemCSharp
:
ProjectEntryUtil
.
LegacyProjectSystemCSharp
;
case
ProjectFileType
.
Basic
:
return
util
.
IsNewSdk
?
ProjectEntryUtil
.
ManagedProjectSystemVisualBasic
:
ProjectEntryUtil
.
LegacyProjectSystemVisualBasic
;
case
ProjectFileType
.
Shared
:
return
ProjectEntryUtil
.
SharedProject
;
default
:
throw
new
Exception
(
$"Invalid file path
{
data
.
FilePath
}
"
);
}
}
var
allGood
=
true
;
foreach
(
var
data
in
dataList
)
{
var
guid
=
getExpectedGuid
(
data
.
ProjectData
);
if
(
guid
!=
data
.
ProjectEntry
.
TypeGuid
)
{
var
name
=
data
.
ProjectData
.
FileName
;
textWriter
.
WriteLine
(
$"Project
{
name
}
should have GUID
{
guid
}
but has
{
data
.
ProjectEntry
.
TypeGuid
}
"
);
allGood
=
false
;
textWriter
.
WriteLine
(
projectWriter
.
ToString
());
}
count
++;
}
textWriter
.
WriteLine
(
$"Processed
{
count
}
projects"
);
return
allGood
;
}
}
...
...
src/Tools/BuildBoss/SolutionUtil.cs
浏览文件 @
eaaf287e
...
...
@@ -44,7 +44,7 @@ private static ProjectEntry ParseProjectLine(string line)
return
new
ProjectEntry
(
relativeFilePath
:
filePath
,
name
:
name
,
g
uid
:
Guid
.
Parse
(
guid
),
projectG
uid
:
Guid
.
Parse
(
guid
),
typeGuid
:
Guid
.
Parse
(
typeGuid
));
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录