Skip to content

Commit

Permalink
Remove properties set in BeforeCommonTargets.targets
Browse files Browse the repository at this point in the history
  • Loading branch information
tmat committed Oct 29, 2018
1 parent 581b9d2 commit 257d12b
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 38 deletions.
35 changes: 0 additions & 35 deletions build/Targets/BeforeCommonTargets.targets
Expand Up @@ -10,17 +10,12 @@
<When Condition="'$(RoslynProjectType)' == 'UnitTest' OR '$(RoslynProjectType)' == 'UnitTestPortable'">
<PropertyGroup>
<_IsAnyUnitTest>true</_IsAnyUnitTest>
<_NeedRuntimeAssets>true</_NeedRuntimeAssets>
<CopyNuGetImplementations>true</CopyNuGetImplementations>
<OutputPath>$(OutputPath)UnitTests\$(MSBuildProjectName)\</OutputPath>
<IsShipping>false</IsShipping>
</PropertyGroup>
</When>
<When Condition="'$(RoslynProjectType)' == 'Vsix'">
<PropertyGroup>
<_CopyReferences>false</_CopyReferences>
<_NeedRuntimeAssets>true</_NeedRuntimeAssets>
<CopyNuGetImplementations>true</CopyNuGetImplementations>
<OutputPath>$(OutputPath)Vsix\$(MSBuildProjectName)\</OutputPath>
</PropertyGroup>
</When>
Expand All @@ -34,27 +29,17 @@
</When>
<When Condition="'$(RoslynProjectType)' == '' AND '$(OutputType)' == 'Library'">
<PropertyGroup>
<_CopyReferences>false</_CopyReferences>
<_CopyProjectReferences>false</_CopyProjectReferences>
<CopyNuGetImplementations>false</CopyNuGetImplementations>
<OutputPath>$(OutputPath)Dlls\$(MSBuildProjectName)\</OutputPath>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
</PropertyGroup>
</When>
<When Condition="'$(RoslynProjectType)' == '' AND '$(OutputType)' == 'Exe'">
<PropertyGroup>
<_NeedRuntimeAssets>true</_NeedRuntimeAssets>
<CopyNuGetImplementations>true</CopyNuGetImplementations>
<OutputPath>$(OutputPath)Exes\$(MSBuildProjectName)\</OutputPath>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
</PropertyGroup>
</When>
<When Condition="'$(RoslynProjectType)' == '' AND '$(OutputType)' == 'WinExe'">
<PropertyGroup>
<_NeedRuntimeAssets>true</_NeedRuntimeAssets>
<CopyNuGetImplementations>true</CopyNuGetImplementations>
<OutputPath>$(OutputPath)Exes\$(MSBuildProjectName)\</OutputPath>
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
</PropertyGroup>
</When>
</Choose>
Expand All @@ -67,14 +52,11 @@
-->
<PublishDir Condition="'$(PublishDir)' != '' AND '$(RuntimeIdentifier)' != '' AND '$(MSBuildProjectName)' != 'IlAsmDeploy'">$(OutputPath)$(RuntimeIdentifier)\$(PublishDirName)\</PublishDir>
<PublishDir Condition="'$(PublishDir)' != '' AND '$(RuntimeIdentifier)' == ''">$(OutputPath)$(TargetFramework)\$(PublishDirName)\</PublishDir>

<DocumentationFile Condition="'$(GenerateDocumentationFile)' == 'true' AND '$(Language)' == 'VB'">$(AssemblyName).xml</DocumentationFile>
</PropertyGroup>

<PropertyGroup Condition="'$(TargetFrameworks)' != ''">
<IntermediateOutputPath>$(IntermediateOutputPath)$(TargetFramework.ToLowerInvariant())\</IntermediateOutputPath>
<OutputPath Condition="'$(RoslynProjectType)' != 'SourcePackage' and '$(RoslynProjectType)' != 'Custom'">$(OutputPath)$(TargetFramework.ToLowerInvariant())\</OutputPath>
<DocumentationFile Condition="'$(GenerateDocumentationFile)' == 'true' AND '$(Language)' == 'C#'">$(IntermediateOutputPath)$(AssemblyName).xml</DocumentationFile>
</PropertyGroup>

<!-- If the project hasn't configured a ruleset, set a default ruleset. -->
Expand All @@ -101,22 +83,5 @@
</PropertyGroup>
</When>
</Choose>

<!--
If the project targets Framework 2.0 reference assemblies provided by Microsoft.NetFramework.ReferenceAssemblies nuget package.
Use the latest Framework toolset to build, but set msbuild properties below
so to avoid 4.5 specific artifacts to be added to the compilation (references, attributes).
-->
<PropertyGroup Condition="'$(TargetFramework)' == 'net20'">
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>
<AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
<NoStdLib>true</NoStdLib>
<ExecuteAsTool>false</ExecuteAsTool>
<GenerateResourceMSBuildRuntime>CurrentRuntime</GenerateResourceMSBuildRuntime>

<!-- Bypass a check in msbuild that .NET Framework 3.5 is installed on the machine when targeting .NET < 4.0 -->
<BypassFrameworkInstallChecks>true</BypassFrameworkInstallChecks>
</PropertyGroup>

</Project>

26 changes: 23 additions & 3 deletions build/Targets/Imports.targets
Expand Up @@ -25,23 +25,43 @@
<_ExplicitReference Include="$(FrameworkPathOverride)\mscorlib.dll" />
</ItemGroup>

<!--
If the project targets Framework 2.0 reference assemblies provided by Microsoft.NetFramework.ReferenceAssemblies nuget package.
Use the latest Framework toolset to build, but set msbuild properties below
so to avoid 4.5 specific artifacts to be added to the compilation (references, attributes).
-->
<PropertyGroup Condition="'$(TargetFramework)' == 'net20'">
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>
<NoStdLib>true</NoStdLib>
<ResGenExecuteAsTool>false</ResGenExecuteAsTool>
<GenerateResourceMSBuildRuntime>CurrentRuntime</GenerateResourceMSBuildRuntime>

<!-- Bypass a check in msbuild that .NET Framework 3.5 is installed on the machine when targeting .NET < 4.0 -->
<BypassFrameworkInstallChecks>true</BypassFrameworkInstallChecks>
</PropertyGroup>

<!-- Add the UnitTestContainer project capability -->
<ItemGroup Condition="'$(_IsAnyUnitTest)' == 'true'">
<ProjectCapability Include="UnitTestContainer" />
</ItemGroup>

<ItemDefinitionGroup Condition="'$(_CopyReferences)' == 'false'">
<!--
Do not copy dependencies to the output directory of a library project, unless it's a unit test project.
-->
<ItemDefinitionGroup Condition="'$(OutputType)' == 'Library' and '$(IsVsixProject)' != 'true' and '$(_IsAnyUnitTest)' != 'true'">
<Reference>
<Private>False</Private>
</Reference>
</ItemDefinitionGroup>

<ItemDefinitionGroup Condition="'$(_CopyProjectReferences)' == 'false'">
<ProjectReference>
<Private>False</Private>
</ProjectReference>
</ItemDefinitionGroup>

<PropertyGroup Condition="'$(ProduceReferenceAssembly)' == '' and (('$(OutputType)' == 'Library' and '$(IsVsixProject)' != 'true' and '$(_IsAnyUnitTest)' != 'true') or '$(OutputType)' == 'Exe' or '$(OutputType)' == 'WinExe')">
<ProduceReferenceAssembly>true</ProduceReferenceAssembly>
</PropertyGroup>

<!--
Some dependencies bring in references to UIAutomationClient and UIAutomationTypes. These conflict with the faster
UIAComWrapper implementation used by the Roslyn integration tests. This target sets the alias for the slower
Expand Down

0 comments on commit 257d12b

Please sign in to comment.