diff options
author | ArsenShnurkov <ArsenShnurkov@users.noreply.github.com> | 2017-09-29 15:10:40 +0300 |
---|---|---|
committer | ArsenShnurkov <ArsenShnurkov@users.noreply.github.com> | 2017-09-29 15:10:40 +0300 |
commit | d0bb7453402d879047ab75cc80b9836d53c8eb1c (patch) | |
tree | 80ed897822fb1f7039c5935308b5c6a51b974a6b /dev-util | |
parent | bump mono (diff) | |
download | dotnet-d0bb7453402d879047ab75cc80b9836d53c8eb1c.tar.gz dotnet-d0bb7453402d879047ab75cc80b9836d53c8eb1c.tar.bz2 dotnet-d0bb7453402d879047ab75cc80b9836d53c8eb1c.zip |
dev-dotnet/msbuild, fix 310
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/msbuild/Manifest | 2 | ||||
-rw-r--r-- | dev-util/msbuild/files/Microsoft.CSharp.targets.patch | 14 | ||||
-rw-r--r-- | dev-util/msbuild/files/Microsoft.Common.targets.patch | 15 | ||||
-rw-r--r-- | dev-util/msbuild/files/dir.props.diff | 13 | ||||
-rw-r--r-- | dev-util/msbuild/files/dir.targets.diff | 17 | ||||
-rw-r--r-- | dev-util/msbuild/files/mono-MSBuild.csproj | 191 | ||||
-rw-r--r-- | dev-util/msbuild/files/mono-Microsoft.Build.csproj | 634 | ||||
-rw-r--r-- | dev-util/msbuild/files/src-dir.targets.diff | 20 | ||||
-rw-r--r-- | dev-util/msbuild/files/tasks.patch | 32 | ||||
-rw-r--r-- | dev-util/msbuild/metadata.xml | 8 | ||||
-rw-r--r-- | dev-util/msbuild/msbuild-15.3-r2.ebuild | 112 |
11 files changed, 1058 insertions, 0 deletions
diff --git a/dev-util/msbuild/Manifest b/dev-util/msbuild/Manifest new file mode 100644 index 0000000..128aa25 --- /dev/null +++ b/dev-util/msbuild/Manifest @@ -0,0 +1,2 @@ +DIST linux-packaging-msbuild-mono-15.3.tar.gz 14060639 SHA256 4b800e2312c0421fdac81806c14503b464c312c02875fa8c3ea08b30f269a39c SHA512 5eefe456f9d2c7b1ecd6066c07b4a64a62d75c372b9208d639b94f3b666defd1b8803a3544ee5cd5db72ef6d218a2e16b4c8da7482831e46a7c8189a185a6ae8 WHIRLPOOL 46ceed945de6886f4a8e91eb9b496657e086bb34e5dd46702a7ef64181a9eb523586d37116254ddf8b2de8e5d40e20e09a4ce3fba257a9b956e6e1726b2e4828 +DIST mono.snk 596 SHA256 44a83944d57c37da4e7872967f1fd4b445af18cdcbe8d17a0e3f5e5ce553c78a SHA512 7f3c4a3bd3eb64769a24be714f603d2c69642d8ff636792b9fb57a5be9b93479d8fbb6872e3243cdc4cc50d9dfc402f55910da339b46e2caf307c59124547541 WHIRLPOOL ad49dd306d751e2b36c0dc87c3d0330efcd380a32526ebb797cd05176066d45fdfbf93b1e4e52c5419ba769557fffa16ed3960b9bdce563f610fe37d4d4d9d67 diff --git a/dev-util/msbuild/files/Microsoft.CSharp.targets.patch b/dev-util/msbuild/files/Microsoft.CSharp.targets.patch new file mode 100644 index 0000000..bc6abf7 --- /dev/null +++ b/dev-util/msbuild/files/Microsoft.CSharp.targets.patch @@ -0,0 +1,14 @@ +diff --git a/src/Tasks/Microsoft.CSharp.targets b/src/Tasks/Microsoft.CSharp.targets +index 69994d0..0cc4320 100644 +--- a/src/Tasks/Microsoft.CSharp.targets ++++ b/src/Tasks/Microsoft.CSharp.targets +@@ -16,6 +16,9 @@ Copyright (C) Microsoft Corporation. All rights reserved. + --> + + <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> ++ <PropertyGroup> ++ <CscToolPath>/usr/lib/mono/4.5</CscToolPath> ++ </PropertyGroup> + <!-- + We are doing a cross-targeting build if there is no list of target frameworks specified + nor is there a current target framework being built individually. In that case, this import is diff --git a/dev-util/msbuild/files/Microsoft.Common.targets.patch b/dev-util/msbuild/files/Microsoft.Common.targets.patch new file mode 100644 index 0000000..9637eb3 --- /dev/null +++ b/dev-util/msbuild/files/Microsoft.Common.targets.patch @@ -0,0 +1,15 @@ +diff --git a/src/Tasks/Microsoft.Common.targets b/src/Tasks/Microsoft.Common.targets +index e1b5445..3e35645 100644 +--- a/src/Tasks/Microsoft.Common.targets ++++ b/src/Tasks/Microsoft.Common.targets +@@ -29,6 +29,10 @@ Copyright (C) Microsoft Corporation. All rights reserved. + targets. + --> + ++ <PropertyGroup> ++ <BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)' == ''">obj\</BaseIntermediateOutputPath> ++ </PropertyGroup> ++ + <Choose> + <When Condition="'$(MSBuildAssemblyVersion)' == ''"> + <PropertyGroup> diff --git a/dev-util/msbuild/files/dir.props.diff b/dev-util/msbuild/files/dir.props.diff new file mode 100644 index 0000000..3f51959 --- /dev/null +++ b/dev-util/msbuild/files/dir.props.diff @@ -0,0 +1,13 @@ +diff --git a/dir.props b/dir.props +index 9f9e816..022a9ca 100644 +--- a/dir.props ++++ b/dir.props +@@ -407,7 +407,7 @@ + <TestWorkingDir>$(TestDeploymentDir)</TestWorkingDir> + + <!-- Output path for helper tasks that we build for our own build process (e.g. localization tasks). Tasks should be imported from this property --> +- <BuildBinDir>$([System.IO.Path]::Combine($(ProjectDir), "build", "bin", $(RelativeOutputPathWithConfig), "Output"))$([System.IO.Path]::DirectorySeparatorChar)</BuildBinDir> ++ <BuildBinDir>$([System.IO.Path]::Combine($([System.IO.Path]::Combine($(ProjectDir), "build")), "bin", $(RelativeOutputPathWithConfig), "Output"))$([System.IO.Path]::DirectorySeparatorChar)</BuildBinDir> + </PropertyGroup> + + <PropertyGroup> diff --git a/dev-util/msbuild/files/dir.targets.diff b/dev-util/msbuild/files/dir.targets.diff new file mode 100644 index 0000000..bb7e0e9 --- /dev/null +++ b/dev-util/msbuild/files/dir.targets.diff @@ -0,0 +1,17 @@ +diff --git a/dir.targets b/dir.targets +index 599348e..c17d89d 100644 +--- a/dir.targets ++++ b/dir.targets +@@ -18,10 +18,10 @@ + <Target Name="EnsureDependenciesDeployed" + Condition="'$(DeployDependencies)' != 'false'" + AfterTargets="Build"> +- <MSBuild Projects="$(RepoRoot)\targets\DeployDependencies.proj" ++ <!--MSBuild Projects="$(RepoRoot)\targets\DeployDependencies.proj" + Targets="DeployDependencies" + BuildInParallel="true" +- /> ++ /--> + </Target> + + <Target Name="EnsurePrerequisitesCopied" diff --git a/dev-util/msbuild/files/mono-MSBuild.csproj b/dev-util/msbuild/files/mono-MSBuild.csproj new file mode 100644 index 0000000..e3134a1 --- /dev/null +++ b/dev-util/msbuild/files/mono-MSBuild.csproj @@ -0,0 +1,191 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <TargetFrameworkVersion>v4.6</TargetFrameworkVersion> + <ProjectGuid>{23C9FD0E-70C5-4F1F-B08A-D2774240FB51}</ProjectGuid> + <OutputType>Exe</OutputType> + <AssemblyName>MSBuild</AssemblyName> + <OutputPath>bin\$(Configuration)</OutputPath> + <AppConfig>app.config</AppConfig> + <ApplicationManifest>MSBuild.exe.manifest</ApplicationManifest> + <ApplicationIcon>MSBuild.ico</ApplicationIcon> + <RootNamespace>Microsoft.Build.CommandLine</RootNamespace> + <AllowUnsafeBlocks>true</AllowUnsafeBlocks> + <AppDesignerFolder>Properties</AppDesignerFolder> + <LargeAddressAware>true</LargeAddressAware> + <WarningLevel>4</WarningLevel> + <DefineConstants>FEATURE_ASSEMBLY_LOADFROM;STANDALONEBUILD;FEATURE_APPDOMAIN;FEATURE_OSVERSION;FEATURE_APPDOMAIN;FEATURE_APPDOMAIN_UNHANDLED_EXCEPTION</DefineConstants> + </PropertyGroup> + <!-- Default configurations to help VS understand the configurations --> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <Optimize>false</Optimize> + <DefineConstants>$(DefineConstants);DEBUG</DefineConstants> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <Optimize>true</Optimize> + </PropertyGroup> + <ItemGroup> + <None Include="app.config"> + <SubType>Designer</SubType> + </None> + <None Include="app.amd64.config"> + <SubType>Designer</SubType> + </None> + <None Include="MSBuild.exe.manifest" /> + <!-- This is to enable CodeMarkers in MSBuild.exe --> + <!-- Win32 RC Files --> + <RCResourceFile Include="native.rc" /> + <!-- Resource Files --> + <EmbeddedResource Include="Resources\Strings.resx"> + <LogicalName>$(AssemblyName).Strings.resources</LogicalName> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="..\Shared\Resources\Strings.shared.resx"> + <Link>Resources\Strings.shared.resx</Link> + <LogicalName>$(AssemblyName).Strings.shared.resources</LogicalName> + <SubType>Designer</SubType> + </EmbeddedResource> + <!-- Content Files --> + <Content Include="MSBuild.ico" /> + <Content Include="MSBuild.rsp"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </Content> + <Content Include="MSBuild.runtimeconfig.json" Condition="'$(NetCoreBuild)' == 'true'"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </Content> + <None Include="Microsoft.Build.CommonTypes.xsd"> + <SubType>Designer</SubType> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + <None Include="Microsoft.Build.Core.xsd"> + <SubType>Designer</SubType> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + </ItemGroup> + <ItemGroup> + <Compile Condition="'$(NetCoreBuild)' == 'true'" Include="..\Shared\Compat\SafeHandleZeroOrMinusOneIsInvalid.cs"> + <Link>Compat\SafeHandleZeroOrMinusOneIsInvalid.cs</Link> + </Compile> + <Compile Include="..\Shared\BuildEnvironmentHelper.cs"> + <Link>BuildEnvironmentHelper.cs</Link> + </Compile> + <Compile Include="..\Shared\FxCopExclusions\Microsoft.Build.Shared.Suppressions.cs" /> + <Compile Include="..\Shared\AssemblyNameComparer.cs"> + <Link>AssemblyNameComparer.cs</Link> + </Compile> + <Compile Include="..\Shared\CollectionHelpers.cs" /> + <Compile Include="..\Shared\Constants.cs"> + </Compile> + <Compile Include="..\Shared\FileDelegates.cs"> + <Link>FileDelegates.cs</Link> + </Compile> + <Compile Include="..\Shared\FileUtilities.cs"> + <Link>FileUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\FileUtilities.GetFolderPath.cs"> + <Link>FileUtilities.GetFolderPath.cs</Link> + </Compile> + <Compile Include="..\Shared\FileUtilitiesRegex.cs"> + <Link>FileUtilitiesRegex.cs</Link> + </Compile> + <Compile Include="..\Shared\QuotingUtilities.cs" /> + <Compile Include="..\Shared\RegisteredTaskObjectCacheBase.cs"> + <Link>RegisteredTaskObjectCacheBase.cs</Link> + </Compile> + <Compile Include="..\Shared\ResourceUtilities.cs" /> + <Compile Include="..\Shared\EscapingUtilities.cs" /> + <Compile Include="..\Shared\ErrorUtilities.cs" /> + <Compile Include="..\Shared\Modifiers.cs" /> + <Compile Include="..\Shared\BufferedReadStream.cs" /> + <Compile Include="..\Shared\CopyOnWriteDictionary.cs" /> + <Compile Include="..\Shared\HybridDictionary.cs" /> + <Compile Include="..\Shared\IKeyed.cs" /> + <Compile Include="..\Shared\MSBuildNameIgnoreCaseComparer.cs" /> + <Compile Include="..\Shared\ReadOnlyEmptyCollection.cs" /> + <Compile Include="..\Shared\ReadOnlyEmptyDictionary.cs" /> + <!--Compile Include="..\Shared\ReadOnlyEmptyList.cs" /--> + <Compile Include="..\Shared\NativeMethodsShared.cs" /> + <Compile Include="..\Shared\AssemblyUtilities.cs" /> + <Compile Include="..\Shared\ExceptionHandling.cs" /> + <Compile Include="..\Shared\InternalErrorException.cs" /> + <Compile Include="..\Shared\EventArgsFormatting.cs" /> + <Compile Include="..\Shared\TempFileUtilities.cs" /> + <Compile Include="..\Shared\VisualStudioLocationHelper.cs" /> + <Compile Include="..\Shared\XMakeAttributes.cs" /> + <Compile Include="..\Shared\INodeEndpoint.cs" /> + <Compile Include="..\Shared\NodeEndpointOutOfProcBase.cs" /> + <Compile Include="..\Shared\INodePacket.cs" /> + <Compile Include="..\Shared\LogMessagePacketBase.cs" /> + <Compile Include="..\Shared\INodePacketFactory.cs" /> + <Compile Include="..\Shared\NodePacketFactory.cs" /> + <Compile Include="..\Shared\INodePacketHandler.cs" /> + <Compile Include="..\Shared\INodePacketTranslatable.cs" /> + <Compile Include="..\Shared\INodePacketTranslator.cs" /> + <Compile Include="..\Shared\NodePacketTranslator.cs" /> + <Compile Include="..\Shared\CommunicationsUtilities.cs" /> + <Compile Include="..\Shared\InterningBinaryReader.cs" /> + <Compile Include="..\Shared\OpportunisticIntern.cs" /> + <Compile Include="..\Shared\TaskHostConfiguration.cs" /> + <Compile Include="..\Shared\TaskHostTaskComplete.cs" /> + <Compile Include="..\Shared\OutOfProcTaskHostTaskResult.cs" /> + <Compile Include="..\Shared\TaskHostTaskCancelled.cs" /> + <Compile Include="..\Shared\TaskLoader.cs" /> + <Compile Include="..\Shared\TypeLoader.cs" /> + <Compile Include="..\Shared\LoadedType.cs" /> + <Compile Include="..\Shared\AssemblyLoadInfo.cs" /> + <Compile Include="..\Shared\NodeBuildComplete.cs" /> + <Compile Include="..\Shared\NodeShutdown.cs" /> + <Compile Include="..\Shared\TaskParameter.cs" /> + <Compile Include="..\Shared\TaskParameterTypeVerifier.cs" /> + <Compile Include="..\Shared\TaskEngineAssemblyResolver.cs" /> + <Compile Include="..\Shared\Traits.cs"> + <Link>SharedTraits.cs</Link> + </Compile> + <Compile Include="..\Shared\AssemblyNameExtension.cs" /> + <Compile Include="..\Shared\ThreadPoolExtensions.cs" /> + <Compile Include="..\Shared\StringBuilderCache.cs" /> + <Compile Include="AssemblyInfo.cs" /> + <Compile Include="AssemblyResources.cs" /> + <Compile Include="CommandLineSwitches.cs" /> + <Compile Include="CommandLineSwitchException.cs" /> + <Compile Include="..\Shared\CoreCLRAssemblyLoader.cs" Condition="'$(NetCoreBuild)'=='true'" /> + <Compile Include="DistributedLoggerRecord.cs" /> + <Compile Include="FxCopExclusions\MsBuild.Suppressions.cs" /> + <Compile Include="InitializationException.cs" /> + <Compile Include="NodeEndpointOutOfProcTaskHost.cs" /> + <Compile Include="LogMessagePacket.cs" /> + <Compile Include="ProjectSchemaValidationHandler.cs" /> + <Compile Include="OutOfProcTaskHostNode.cs" /> + <Compile Include="OutOfProcTaskAppDomainWrapperBase.cs" /> + <Compile Include="OutOfProcTaskAppDomainWrapper.cs" /> + <Compile Include="XMake.cs" /> + <Compile Include="AV.cs" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\Build\mono-Microsoft.Build.csproj"> + <Project>{16CD7635-7CF4-4C62-A77B-CF87D0F09A58}</Project> + <Name>Microsoft.Build</Name> + </ProjectReference> + </ItemGroup> + <ItemGroup> + <Reference Include="Microsoft.Build.Framework, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"> + <Package>msbuild-tasks-api-15.3</Package> + </Reference> + <Reference Include="System" /> + <Reference Include="System.Core" /> + <Reference Include="System.Xml" /> + <Reference Include="System.Reflection.Metadata, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"> + <Package>system-reflection-metadata-2.0.0_pre</Package> + </Reference> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <Import Project="$(MSBuildExtensionsPath)\MSBuild.Community.Tasks.Targets" /> + <Target Name="BeforeBuild"> + <PropertyGroup Condition=" '$(VersionNumber)' == '' "> + <VersionNumber>15.3</VersionNumber> + </PropertyGroup> + <AssemblyInfo CodeLanguage="C#" OutputFile="AV.cs" AssemblyVersion="$(VersionNumber)" AssemblyFileVersion="$(VersionNumber)" /> + </Target> +</Project> diff --git a/dev-util/msbuild/files/mono-Microsoft.Build.csproj b/dev-util/msbuild/files/mono-Microsoft.Build.csproj new file mode 100644 index 0000000..1501cb1 --- /dev/null +++ b/dev-util/msbuild/files/mono-Microsoft.Build.csproj @@ -0,0 +1,634 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProjectGuid>{16CD7635-7CF4-4C62-A77B-CF87D0F09A58}</ProjectGuid> + <OutputType>Library</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>Microsoft.Build</RootNamespace> + <AssemblyName>Microsoft.Build</AssemblyName> + <AllowUnsafeBlocks>true</AllowUnsafeBlocks> + <DefineConstants>$(DefineConstants);BUILD_ENGINE</DefineConstants> + <GenerateReferenceAssemblySources>true</GenerateReferenceAssemblySources> + <EnableDocumentationFile>true</EnableDocumentationFile> + <UpdateNuGetPackageDependencies>true</UpdateNuGetPackageDependencies> + <TargetFrameworkVersion>v4.6</TargetFrameworkVersion> + <OutputPath>bin\$(Configuration)</OutputPath> + <DefineConstants>$(DefineConstants);BUILD_ENGINE;STANDALONEBUILD;FEATURE_TYPE_INVOKEMEMBER;FEATURE_OSVERSION;FEATURE_64BIT_ENVIRONMENT_QUERY;FEATURE_APPDOMAIN;FEATURE_ASSEMBLY_LOADFROM;FEATURE_VARIOUS_EXCEPTIONS</DefineConstants> + </PropertyGroup> + <!-- Default configurations to help VS understand the configurations --> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <WarningLevel>4</WarningLevel> + <Optimize>false</Optimize> + <DefineConstants>$(DefineConstants);DEBUG</DefineConstants> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <WarningLevel>4</WarningLevel> + <Optimize>true</Optimize> + </PropertyGroup> + <ItemGroup> + <!-- Win32 RC Files --> + <RCResourceFile Include="native.rc" /> + <!-- Resource Files --> + <EmbeddedResource Include="Resources\Strings.resx"> + <LogicalName>$(AssemblyName).Strings.resources</LogicalName> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="..\Shared\Resources\Strings.shared.resx"> + <Link>Resources\Strings.shared.resx</Link> + <SubType>Designer</SubType> + <LogicalName>$(AssemblyName).Strings.shared.resources</LogicalName> + </EmbeddedResource> + </ItemGroup> + <!-- This item group is for classes that exist in .NET Framework but not in .NET Core. + The code here was generally copied from the .NET Framework reference source and + modified to compile for .NET Core --> + <ItemGroup Condition="$(TargetFrameworkIdentifier) != '.NETFramework'"> + <Compile Include="..\Shared\Compat\Base64Encoder.cs"> + <Link>SharedUtilities\Compat\Base64Encoder.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\BinHexEncoder.cs"> + <Link>SharedUtilities\Compat\BinHexEncoder.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\SecureStringHasher.cs"> + <Link>SharedUtilities\Compat\SecureStringHasher.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\TypeExtensions.cs"> + <Link>SharedUtilities\Compat\TypeExtensions.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\ValidateNames.cs"> + <Link>SharedUtilities\Compat\ValidateNames.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\XmlCharType.cs"> + <Link>SharedUtilities\Compat\XmlCharType.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\XmlReservedNs.cs"> + <Link>SharedUtilities\Compat\XmlReservedNs.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\XmlTextEncoder.cs"> + <Link>SharedUtilities\Compat\XmlTextEncoder.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\XmlTextWriter.cs"> + <Link>SharedUtilities\Compat\XmlTextWriter.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\SerializableAttribute.cs"> + <Link>SharedUtilities\Compat\SerializableAttribute.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\defaultbinder.cs"> + <Link>SharedUtilities\Compat\defaultbinder.cs</Link> + </Compile> + <Compile Include="..\Shared\Compat\PipeSecurity.cs"> + <Link>SharedUtilities\Compat\PipeSecurity.cs</Link> + </Compile> + </ItemGroup> + <ItemGroup> + <Compile Condition="'$(NetCoreBuild)' == 'true'" Include="..\Shared\Compat\SafeHandleZeroOrMinusOneIsInvalid.cs"> + <Link>SharedUtilities\Compat\SafeHandleZeroOrMinusOneIsInvalid.cs</Link> + </Compile> + <Compile Include="..\Shared\EncodingUtilities.cs"> + <Link>SharedUtilities\EncodingUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\EnvironmentUtilities.cs"> + <Link>SharedUtilities\EnvironmentUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\FileUtilities.GetFolderPath.cs" Condition="'$(FeatureSpecialFolders)' != 'true'"> + <Link>SharedUtilities\FileUtilities.GetFolderPath.cs</Link> + </Compile> + <Compile Include="..\Shared\BuildEnvironmentHelper.cs"> + <Link>SharedUtilities\BuildEnvironmentHelper.cs</Link> + </Compile> + <Compile Include="..\Shared\EncodingStringWriter.cs"> + <Link>SharedUtilities\EncodingStringWriter.cs</Link> + </Compile> + <Compile Include="..\Shared\FxCopExclusions\Microsoft.Build.Shared.Suppressions.cs"> + </Compile> + <Compile Include="..\Shared\AssemblyNameComparer.cs"> + <Link>SharedUtilities\AssemblyNameComparer.cs</Link> + </Compile> + <Compile Include="..\Shared\AwaitExtensions.cs"> + <Link>SharedUtilities\AwaitExtensions</Link> + </Compile> + <Compile Include="..\Shared\AssemblyNameReverseVersionComparer.cs"> + <Link>SharedUtilities\AssemblyNameReverseVersionComparer.cs</Link> + </Compile> + <Compile Include="..\Shared\CanonicalError.cs"> + <Link>BackEnd\Components\RequestBuilder\IntrinsicTasks\CanonicalError.cs</Link> + </Compile> + <Compile Include="..\Shared\Constants.cs"> + <Link>BackEnd\Components\RequestBuilder\IntrinsicTasks\Constants.cs</Link> + </Compile> + <Compile Include="..\Shared\HybridDictionary.cs"> + <Link>Collections\HybridDictionary.cs</Link> + </Compile> + <Compile Include="..\Shared\NGen.cs"> + <Link>SharedUtilities\NGen.cs</Link> + </Compile> + <Compile Include="..\Shared\Pair.cs"> + <Link>SharedUtilities\Pair.cs</Link> + </Compile> + <Compile Include="..\Shared\PropertyParser.cs"> + <Link>BackEnd\Components\RequestBuilder\IntrinsicTasks\PropertyParser.cs</Link> + </Compile> + <Compile Include="..\Shared\ReadOnlyEmptyCollection.cs"> + <Link>Collections\ReadOnlyEmptyCollection.cs</Link> + </Compile> + <Compile Include="..\Shared\StringBuilderCache.cs"> + </Compile> + <Compile Include="..\Shared\Traits.cs"> + <Link>SharedUtilities\Traits.cs</Link> + </Compile> + <Compile Include="..\Shared\BufferedReadStream.cs" /> + <Compile Include="..\Shared\TaskHostConfiguration.cs" /> + <Compile Include="..\Shared\TaskHostTaskCancelled.cs" /> + <Compile Include="..\Shared\TaskHostTaskComplete.cs" /> + <Compile Include="..\Shared\OutOfProcTaskHostTaskResult.cs" /> + <Compile Include="..\Shared\TaskLoader.cs" /> + <Compile Include="..\Shared\NodeEngineShutdownReason.cs" /> + <Compile Include="..\Shared\IKeyed.cs" /> + <Compile Include="..\Shared\INodeEndpoint.cs" /> + <Compile Include="..\Shared\NodeEndpointOutOfProcBase.cs" /> + <Compile Include="..\Shared\INodePacket.cs" /> + <Compile Include="..\Shared\INodePacketFactory.cs" /> + <Compile Include="..\Shared\INodePacketHandler.cs" /> + <Compile Include="..\Shared\INodePacketTranslatable.cs" /> + <Compile Include="..\Shared\INodePacketTranslator.cs" /> + <Compile Include="..\Shared\NodePacketTranslator.cs" /> + <Compile Include="..\Shared\LogMessagePacketBase.cs" /> + <Compile Include="..\Shared\NodePacketFactory.cs" /> + <Compile Include="..\Shared\NodeBuildComplete.cs" /> + <Compile Include="..\Shared\NodeShutdown.cs" /> + <Compile Include="..\Shared\TaskLoggingHelper.cs"> + <Link>BackEnd\Components\RequestBuilder\IntrinsicTasks\TaskLoggingHelper.cs</Link> + </Compile> + <Compile Include="..\Shared\TaskLoggingHelperExtension.cs"> + <Link>BackEnd\Components\RequestBuilder\IntrinsicTasks\TaskLoggingHelperExtension.cs</Link> + </Compile> + <Compile Include="..\Shared\TaskParameter.cs" /> + <Compile Include="..\Shared\TaskParameterTypeVerifier.cs" /> + <Compile Include="..\Shared\CommunicationsUtilities.cs" /> + <Compile Include="..\Shared\InterningBinaryReader.cs" /> + <Compile Include="..\Shared\TaskEngineAssemblyResolver.cs" /> + <Compile Include="..\Shared\ReuseableStringBuilder.cs" /> + <Compile Include="..\Shared\ThreadPoolExtensions.cs" /> + <Compile Include="..\Shared\VisualStudioLocationHelper.cs"> + <Link>SharedUtilities\VisualStudioLocationHelper.cs</Link> + </Compile> + <Compile Include="AssemblyInfo.cs" /> + <Compile Include="BackEnd\BuildManager\BuildManager.cs" /> + <Compile Include="BackEnd\BuildManager\BuildParameters.cs" /> + <Compile Include="BackEnd\BuildManager\BuildSubmission.cs" /> + <Compile Include="BackEnd\BuildManager\LegacyThreadingData.cs" /> + <Compile Include="BackEnd\Components\BuildComponentFactoryCollection.cs" /> + <Compile Include="BackEnd\Components\Caching\IRegisteredTaskObjectCache.cs" /> + <Compile Include="..\Shared\RegisteredTaskObjectCacheBase.cs" /> + <Compile Include="BackEnd\Components\Caching\RegisteredTaskObjectCache.cs" /> + <Compile Include="BackEnd\Components\Logging\EvaluationLoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\BuildLoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\LoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\BuildEventArgTransportSink.cs" /> + <Compile Include="BackEnd\Components\Logging\CentralForwardingLogger.cs" /> + <Compile Include="BackEnd\Components\Logging\EventRedirectorToSink.cs" /> + <Compile Include="BackEnd\Components\Logging\EventSourceSink.cs" /> + <Compile Include="BackEnd\Components\Logging\ForwardingLoggerRecord.cs" /> + <Compile Include="BackEnd\Components\Logging\ILoggingService.cs" /> + <Compile Include="BackEnd\Components\Logging\LoggingService.cs" /> + <Compile Include="BackEnd\Components\Logging\LoggingServiceFactory.cs" /> + <Compile Include="BackEnd\Components\Logging\LoggingServiceLogMethods.cs" /> + <Compile Include="BackEnd\Components\Logging\NodeLoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\ProjectLoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\TargetLoggingContext.cs" /> + <Compile Include="BackEnd\Components\Logging\TaskLoggingContext.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\CallTarget.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\IntrinsicTaskFactory.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\ItemGroupLoggingHelper.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\MSBuild.cs" /> + <Compile Include="BackEnd\Components\Scheduler\SchedulableRequest.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\FullTracking.cs" /> + <Compile Include="BackEnd\Components\Scheduler\SchedulingData.cs" /> + <Compile Include="BackEnd\Components\Scheduler\Scheduler.cs" /> + <Compile Include="BackEnd\Components\Scheduler\SchedulerCircularDependencyException.cs" /> + <Compile Include="BackEnd\Components\Scheduler\ScheduleTimeRecord.cs" /> + <Compile Include="BackEnd\Components\Scheduler\SchedulingPlan.cs" /> + <Compile Include="BackEnd\Components\SdkResolution\DefaultSdkResolver.cs" /> + <Compile Include="BackEnd\Components\SdkResolution\SdkResolution.cs" /> + <Compile Include="BackEnd\Components\SdkResolution\SdkResolverLoader.cs" /> + <Compile Include="BackEnd\Shared\ConfigurationMetadata.cs" /> + <Compile Include="Collections\ConcurrentQueueExtensions.cs" /> + <Compile Include="Collections\ConcurrentStackExtensions.cs" /> + <Compile Include="Collections\LookasideStringInterner.cs" /> + <Compile Include="Collections\RetrievableEntryHashSet\HashSet.cs" /> + <Compile Include="Collections\RetrievableEntryHashSet\BitHelper.cs" /> + <Compile Include="Collections\RetrievableEntryHashSet\HashSetDebugView.cs" /> + <Compile Include="Collections\RetrievableEntryHashSet\HashHelpers.cs" /> + <Compile Include="Construction\ImplicitImportLocation.cs" /> + <Compile Include="Construction\ProjectSdkElement.cs" /> + <Compile Include="Definition\NewProjectFileOptions.cs" /> + <Compile Include="Definition\ProjectCollectionChangedEventArgs.cs" /> + <Compile Include="Definition\ProjectImportPathMatch.cs" /> + <Compile Include="Definition\ProjectLoadSettings.cs" /> + <Compile Include="Definition\ToolsetLocalReader.cs" /> + <Compile Include="Evaluation\ItemSpec.cs" /> + <Compile Include="Evaluation\ItemsAndMetadataPair.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.IItemOperation.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.UpdateOperation.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.IncludeOperation.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.ItemFactoryWrapper.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.RemoveOperation.cs" /> + <Compile Include="Evaluation\MetadataReference.cs" /> + <Compile Include="Evaluation\ProjectChangedEventArgs.cs" /> + <Compile Include="Evaluation\ProjectXmlChangedEventArgs.cs" /> + <Compile Include="Construction\Solution\SolutionProjectGenerator.cs" /> + <Compile Include="Evaluation\IToolsetProvider.cs" /> + <Compile Include="BackEnd\Components\Caching\ResultsCacheResponse.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeEndpointOutOfProc.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeManager.cs" /> + <Compile Include="BackEnd\Components\Communications\TaskHostNodeManager.cs" /> + <Compile Include="BackEnd\Components\Communications\LogMessagePacket.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeFailedToLaunchException.cs" /> + <Compile Include="BackEnd\Components\BuildRequestEngine\BuildRequestConfigurationResponse.cs" /> + <Compile Include="BackEnd\Components\BuildRequestEngine\BuildRequestEngine.cs" /> + <Compile Include="BackEnd\Components\BuildRequestEngine\BuildRequestEntry.cs" /> + <Compile Include="BackEnd\Components\BuildRequestEngine\FullyQualifiedBuildRequest.cs" /> + <Compile Include="BackEnd\Components\Caching\IConfigCache.cs" /> + <Compile Include="BackEnd\Components\Caching\ResultsCache.cs" /> + <Compile Include="BackEnd\Components\Caching\ConfigCache.cs" /> + <Compile Include="BackEnd\Components\Caching\IPropertyCache.cs" /> + <Compile Include="BackEnd\Components\Caching\IResultsCache.cs" /> + <Compile Include="BackEnd\Components\Communications\NodePacketTranslatorExtensions.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeProviderOutOfProc.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeProviderOutOfProcBase.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeProviderOutOfProcTaskHost.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\BatchingEngine.cs" /> + <Compile Include="BackEnd\BuildManager\BuildRequestData.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTask.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\ItemGroupIntrinsicTask.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IntrinsicTasks\PropertyGroupIntrinsicTask.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\ITargetBuilderCallback.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TargetSpecification.cs" /> + <Compile Include="BackEnd\Node\InProcNode.cs" /> + <Compile Include="BackEnd\Node\NodeConfiguration.cs" /> + <Compile Include="BackEnd\Node\OutOfProcNode.cs" /> + <Compile Include="BackEnd\Node\NativeMethods.cs" /> + <Compile Include="BackEnd\Shared\BuildAbortedException.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IRequestBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\IRequestBuilderCallback.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\ITargetBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\ITaskBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\ItemBucket.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\Lookup.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\RequestBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TargetBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TargetEntry.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TargetUpToDateChecker.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TaskBuilder.cs" /> + <Compile Include="BackEnd\Components\RequestBuilder\TaskHost.cs" /> + <Compile Include="BackEnd\Shared\BuildRequest.cs" /> + <Compile Include="BackEnd\Shared\BuildRequestBlocker.cs" /> + <Compile Include="BackEnd\Shared\BuildRequestConfiguration.cs" /> + <Compile Include="BackEnd\Shared\BuildResult.cs" /> + <Compile Include="BackEnd\Shared\CircularDependencyException.cs" /> + <Compile Include="BackEnd\Shared\BuildRequestUnblocker.cs" /> + <Compile Include="BackEnd\Shared\IBuildResults.cs" /> + <Compile Include="BackEnd\Shared\ITargetResult.cs" /> + <Compile Include="BackEnd\Shared\TargetResult.cs" /> + <Compile Include="BackEnd\Shared\WorkUnitResult.cs" /> + <Compile Include="BackEnd\Components\BuildRequestEngine\IBuildRequestEngine.cs" /> + <Compile Include="BackEnd\Components\Communications\INodeManager.cs" /> + <Compile Include="BackEnd\Components\Communications\INodeProvider.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeEndpointInProc.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeInfo.cs" /> + <Compile Include="BackEnd\Components\Communications\NodeProviderInProc.cs" /> + <Compile Include="BackEnd\Components\IBuildComponent.cs" /> + <Compile Include="BackEnd\Components\IBuildComponentHost.cs" /> + <Compile Include="BackEnd\Components\Scheduler\IScheduler.cs" /> + <Compile Include="BackEnd\Components\Scheduler\ScheduleResponse.cs" /> + <Compile Include="BackEnd\Node\INode.cs" /> + <!-- ########################## --> + <Compile Include="BackEnd\TaskExecutionHost\AddInParts\ITaskExecutionHost.cs" /> + <Compile Include="BackEnd\TaskExecutionHost\TaskExecutionHost.cs" /> + <!-- #### COLLECTIONS ### --> + <Compile Include="..\Shared\CollectionHelpers.cs" /> + <Compile Include="Collections\ConvertingEnumerable.cs" /> + <Compile Include="Collections\CopyOnReadEnumerable.cs" /> + <Compile Include="..\Shared\OpportunisticIntern.cs" /> + <Compile Include="..\Shared\CopyOnWriteDictionary.cs"> + <Link>Collections\CopyOnWriteDictionary.cs</Link> + </Compile> + <Compile Include="Collections\CopyOnWritePropertyDictionary.cs" /> + <Compile Include="Collections\IDeepCloneable.cs" /> + <Compile Include="..\Shared\MSBuildNameIgnoreCaseComparer.cs" /> + <Compile Include="Collections\FilteringEnumerable.cs" /> + <Compile Include="Collections\HashTableUtility.cs" /> + <Compile Include="Collections\ItemDictionary.cs" /> + <Compile Include="Collections\IImmutable.cs" /> + <Compile Include="Collections\MultiDictionary.cs" /> + <Compile Include="Collections\IValued.cs" /> + <Compile Include="Collections\OrdinalKeyedComparer.cs" /> + <Compile Include="Collections\OrdinalIgnoreCaseKeyedComparer.cs" /> + <Compile Include="Collections\PropertyDictionary.cs" /> + <Compile Include="..\Shared\ReadOnlyCollection.cs" /> + <!--Compile Include="Collections\ReadOnlyConvertingCollection.cs" /--> + <Compile Include="Collections\ReadOnlyConvertingDictionary.cs" /> + <Compile Include="Collections\Triple.cs" /> + <!-- ######################## --> + <Compile Include="Collections\WeakReference.cs" /> + <Compile Include="Collections\WeakValueDictionary.cs" /> + <!-- #### CONSTRUCTION MODEL ### --> + <Compile Include="Construction\ProjectElement.cs" /> + <Compile Include="Construction\ProjectElementContainer.cs" /> + <Compile Include="Construction\ProjectImportElement.cs" /> + <Compile Include="Construction\ProjectImportGroupElement.cs" /> + <Compile Include="Construction\ProjectItemDefinitionGroupElement.cs" /> + <Compile Include="Construction\ProjectItemDefinitionElement.cs" /> + <Compile Include="Construction\ProjectItemGroupElement.cs" /> + <Compile Include="Construction\ProjectItemElement.cs" /> + <Compile Include="Construction\ProjectMetadataElement.cs" /> + <Compile Include="Construction\ProjectOnErrorElement.cs" /> + <Compile Include="Construction\ProjectOtherwiseElement.cs" /> + <Compile Include="Construction\ProjectOutputElement.cs" /> + <Compile Include="Construction\ProjectExtensionsElement.cs" /> + <Compile Include="Construction\ProjectPropertyGroupElement.cs" /> + <Compile Include="Construction\ProjectPropertyElement.cs" /> + <Compile Include="Construction\ProjectTargetElement.cs" /> + <Compile Include="Construction\ProjectTaskElement.cs" /> + <Compile Include="Construction\ProjectUsingTaskElement.cs" /> + <Compile Include="Construction\ProjectRootElement.cs" /> + <Compile Include="Construction\ProjectChooseElement.cs" /> + <Compile Include="Construction\ProjectWhenElement.cs" /> + <Compile Include="Construction\UsingTaskParameterGroupElement.cs" /> + <Compile Include="Construction\ProjectUsingTaskParameterElement.cs" /> + <Compile Include="Construction\ProjectUsingTaskBodyElement.cs" /> + <Compile Include="Construction\Solution\SolutionConfigurationInSolution.cs" /> + <Compile Include="Construction\Solution\ProjectConfigurationInSolution.cs" /> + <Compile Include="Construction\Solution\ProjectInSolution.cs" /> + <Compile Include="Construction\Solution\SolutionFile.cs" /> + <Compile Include="Debugger\DebuggerLocalType.cs" /> + <Compile Include="Debugger\DebuggerManager.cs" /> + <!-- #### DEFINITION MODEL ### --> + <Compile Include="Definition\BuiltInMetadata.cs" /> + <Compile Include="Definition\ProjectCollection.cs" /> + <Compile Include="Definition\Project.cs" /> + <Compile Include="Definition\ProjectItem.cs" /> + <Compile Include="Definition\ProjectItemDefinition.cs" /> + <Compile Include="Definition\ProjectMetadata.cs" /> + <Compile Include="Definition\ProjectProperty.cs" /> + <Compile Include="Definition\ResolvedImport.cs" /> + <Compile Include="Definition\SubToolset.cs" /> + <Compile Include="Definition\Toolset.cs" /> + <Compile Include="Definition\ToolsetConfigurationReader.cs" Condition="$(FeatureSystemConfiguration) == 'true'" /> + <Compile Include="..\Shared\ToolsetElement.cs" Condition="$(FeatureSystemConfiguration) == 'true'" /> + <Compile Include="Definition\ToolsetPropertyDefinition.cs" /> + <Compile Include="Definition\ToolsetReader.cs" /> + <Compile Include="Definition\ToolsetRegistryReader.cs" /> + <!-- ######################## --> + <Compile Include="ElementLocation\ElementLocation.cs" /> + <Compile Include="ElementLocation\RegistryLocation.cs" /> + <Compile Include="ElementLocation\XmlAttributeWithLocation.cs" /> + <Compile Include="ElementLocation\XmlDocumentWithLocation.cs" /> + <Compile Include="ElementLocation\XmlElementWithLocation.cs" /> + <Compile Include="ElementLocation\XmlNameTableThreadSafe.cs" /> + <Compile Include="Errors\InternalLoggerException.cs" /> + <Compile Include="Errors\InvalidProjectFileException.cs" /> + <Compile Include="Errors\InvalidToolsetDefinitionException.cs" /> + <Compile Include="Errors\RegistryException.cs" /> + <!-- #### EVALUATION ### --> + <Compile Include="Evaluation\ConditionEvaluator.cs" /> + <Compile Include="Evaluation\Conditionals\AndExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\CharacterUtilities.cs" /> + <Compile Include="Evaluation\Conditionals\EqualExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\FunctionCallExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\GenericExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\GreaterThanExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\GreaterThanOrEqualExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\LessThanExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\LessThanOrEqualExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\MultipleComparisonExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\NotEqualExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\NotExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\NumericComparisonExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\NumericExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\OperandExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\OperatorExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\OrExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\Parser.cs" /> + <Compile Include="Evaluation\Conditionals\Scanner.cs" /> + <Compile Include="Evaluation\Conditionals\StringExpressionNode.cs" /> + <Compile Include="Evaluation\Conditionals\Token.cs" /> + <Compile Include="Evaluation\EvaluatorMetadataTable.cs" /> + <Compile Include="Evaluation\IEvaluatorData.cs" /> + <Compile Include="Evaluation\IItem.cs" /> + <Compile Include="Evaluation\IItemDefinition.cs" /> + <Compile Include="Evaluation\IItemFactory.cs" /> + <Compile Include="Evaluation\Conditionals\IItem.cs" /> + <Compile Include="Evaluation\IItemProvider.cs" /> + <Compile Include="Evaluation\IMetadataTable.cs" /> + <Compile Include="Evaluation\IntrinsicFunctions.cs" /> + <Compile Include="Evaluation\IMetadatum.cs" /> + <Compile Include="Evaluation\IProjectMetadataParent.cs" /> + <Compile Include="Evaluation\IProperty.cs" /> + <Compile Include="Evaluation\IPropertyProvider.cs" /> + <Compile Include="Evaluation\Preprocessor.cs" /> + <Compile Include="Evaluation\ProjectParser.cs" /> + <Compile Include="Evaluation\ProjectRootElementCache.cs" /> + <Compile Include="Evaluation\ProjectStringCache.cs" /> + <Compile Include="Evaluation\StringMetadataTable.cs" /> + <Compile Include="Evaluation\ExpressionShredder.cs" /> + <Compile Include="Evaluation\Evaluator.cs" /> + <Compile Include="Evaluation\Expander.cs" /> + <Compile Include="Evaluation\ToolsetProvider.cs" /> + <Compile Include="Globbing\CompositeGlob.cs" /> + <Compile Include="Globbing\Extensions\MSBuildGlobExtensions.cs" /> + <Compile Include="Globbing\Visitor\GlobVisitor.cs" /> + <Compile Include="Globbing\MSBuildGlobWithGaps.cs" /> + <Compile Include="Globbing\MSBuildGlob.cs" /> + <Compile Include="Globbing\IMSBuildGlob.cs" /> + <Compile Include="Globbing\Visitor\ParsedGlobCollector.cs" /> + <!-- #### INSTANCE MODEL ### --> + <Compile Include="Instance\ReflectableTaskPropertyInfo.cs" /> + <Compile Include="Instance\HostServices.cs" /> + <Compile Include="Instance\ProjectTargetInstanceChild.cs" /> + <Compile Include="Instance\ProjectTaskInstanceChild.cs" /> + <Compile Include="Instance\ProjectInstance.cs" /> + <Compile Include="Instance\ProjectItemDefinitionInstance.cs" /> + <Compile Include="Instance\ProjectItemGroupTaskInstance.cs" /> + <Compile Include="Instance\ProjectItemGroupTaskItemInstance.cs" /> + <Compile Include="Instance\ProjectItemGroupTaskMetadataInstance.cs" /> + <Compile Include="Instance\ProjectItemInstance.cs" /> + <Compile Include="Instance\ProjectMetadataInstance.cs" /> + <Compile Include="Instance\ProjectOnErrorInstance.cs" /> + <Compile Include="Instance\ProjectPropertyGroupTaskInstance.cs" /> + <Compile Include="Instance\ProjectPropertyGroupTaskPropertyInstance.cs" /> + <Compile Include="Instance\ProjectPropertyInstance.cs" /> + <Compile Include="Instance\ProjectTargetInstance.cs" /> + <Compile Include="Instance\ProjectTaskInstance.cs" /> + <Compile Include="Instance\ProjectTaskOutputItemInstance.cs" /> + <Compile Include="Instance\ProjectTaskOutputPropertyInstance.cs" /> + <Compile Include="Instance\TaskFactories\AssemblyTaskFactory.cs" /> + <Compile Include="Instance\TaskFactories\TaskHostTask.cs" /> + <Compile Include="Instance\TaskFactoryLoggingHost.cs" /> + <Compile Include="Instance\TaskFactoryWrapper.cs" /> + <Compile Include="Instance\TaskRegistry.cs" /> + <!-- ######################## --> + <Compile Include="Evaluation\LazyItemEvaluator.LazyItemOperation.cs" /> + <Compile Include="Logging\BaseConsoleLogger.cs" /> + <Compile Include="Logging\BinaryLogger\BinaryLogger.cs" /> + <Compile Include="Logging\BinaryLogger\BinaryLogRecordKind.cs" /> + <Compile Include="Logging\BinaryLogger\BinaryLogReplayEventSource.cs" /> + <Compile Include="Logging\BinaryLogger\BuildEventArgsDispatcher.cs" /> + <Compile Include="Logging\BinaryLogger\BuildEventArgsFieldFlags.cs" /> + <Compile Include="Logging\BinaryLogger\BuildEventArgsFields.cs" /> + <Compile Include="Logging\BinaryLogger\BuildEventArgsReader.cs" /> + <Compile Include="Logging\BinaryLogger\BuildEventArgsWriter.cs" /> + <Compile Include="Logging\BinaryLogger\ProjectImportsCollector.cs" /> + <Compile Include="Logging\ConsoleLogger.cs" /> + <Compile Include="Logging\DistributedLoggers\DistributedFileLogger.cs" /> + <Compile Include="Logging\DistributedLoggers\ConfigurableForwardingLogger.cs" /> + <Compile Include="Logging\NullCentralLogger.cs" /> + <Compile Include="Logging\LoggerDescription.cs" /> + <Compile Include="Logging\ParallelLogger\ParallelLoggerHelpers.cs" /> + <Compile Include="Logging\ParallelLogger\ParallelConsoleLogger.cs" /> + <Compile Include="Logging\FileLogger.cs" /> + <Compile Include="Logging\LogFormatter.cs" /> + <Compile Include="Logging\SerialConsoleLogger.cs" /> + <Compile Include="Resources\AssemblyResources.cs" /> + <Compile Include="Resources\Constants.cs" /> + <!-- ######################## --> + <!-- ######################## --> + <!-- ######################## --> + <Compile Include="Utilities\EngineFileUtilities.cs" /> + <Compile Include="Utilities\RegistryKeyWrapper.cs" /> + <Compile Include="Utilities\Utilities.cs" /> + <Compile Include="Xml\ProjectXmlUtilities.cs" /> + <Compile Include="Xml\XmlReaderExtension.cs" /> + <Compile Include="..\Shared\AssemblyLoadInfo.cs"> + <Link>SharedUtilities\AssemblyLoadInfo.cs</Link> + </Compile> + <Compile Include="..\Shared\ReadOnlyEmptyDictionary.cs"> + <Link>SharedUtilities\ReadOnlyEmptyDictionary.cs</Link> + </Compile> + <!--Compile Include="..\Shared\ReadOnlyEmptyList.cs"> + <Link>SharedUtilities\ReadOnlyEmptyList.cs</Link> + </Compile--> + <Compile Include="..\Shared\AssemblyNameExtension.cs"> + <Link>SharedUtilities\AssemblyNameExtension.cs</Link> + </Compile> + <Compile Include="..\Shared\BuildEventFileInfo.cs"> + <Link>SharedUtilities\BuildEventFileInfo.cs</Link> + </Compile> + <Compile Include="..\Shared\ConversionUtilities.cs"> + <Link>SharedUtilities\ConversionUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\FileDelegates.cs"> + <Link>SharedUtilities\FileDelegates.cs</Link> + </Compile> + <Compile Include="..\Shared\ErrorUtilities.cs"> + <Link>Errors\ErrorUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\EscapingUtilities.cs"> + <Link>SharedUtilities\EscapingUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\VersionUtilities.cs"> + <Link>SharedUtilities\VersionUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\EventArgsFormatting.cs"> + <Link>SharedUtilities\EventArgsFormatting.cs</Link> + </Compile> + <Compile Include="..\Shared\ExceptionHandling.cs"> + <Link>SharedUtilities\ExceptionHandling.cs</Link> + </Compile> + <Compile Include="..\Shared\EscapingStringExtensions\EscapingStringExtensions.cs"> + <Link>SharedUtilities\EscapingStringExtensions\EscapingStringExtensions.cs</Link> + </Compile> + <Compile Include="..\Shared\FileMatcher.cs"> + <Link>SharedUtilities\FileMatcher.cs</Link> + </Compile> + <Compile Include="..\Shared\FileUtilities.cs"> + <Link>SharedUtilities\FileUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\TempFileUtilities.cs" /> + <Compile Include="..\Shared\Modifiers.cs" /> + <Compile Include="..\Shared\FileUtilitiesRegex.cs"> + <Link>SharedUtilities\FileUtilitiesRegex.cs</Link> + </Compile> + <Compile Include="..\Shared\FrameworkLocationHelper.cs"> + <Link>SharedUtilities\FrameworkLocationHelper.cs</Link> + </Compile> + <Compile Include="..\Shared\IElementLocation.cs"> + <Link>SharedUtilities\IElementLocation.cs</Link> + </Compile> + <Compile Include="..\Shared\InternalErrorException.cs"> + <Link>Errors\InternalErrorException.cs</Link> + </Compile> + <Compile Include="..\Shared\LoadedType.cs"> + <Link>SharedUtilities\LoadedType.cs</Link> + </Compile> + <Compile Include="..\Shared\NativeMethodsShared.cs"> + <Link>SharedUtilities\NativeMethodsShared.cs</Link> + </Compile> + <Compile Include="..\Shared\AssemblyUtilities.cs"> + <Link>SharedUtilities\AssemblyUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\InprocTrackingNativeMethods.cs"> + <Link>InprocTrackingNativeMethods.cs</Link> + </Compile> + <Compile Include="..\Shared\ProjectErrorUtilities.cs"> + <Link>Errors\ProjectErrorUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\ProjectFileErrorUtilities.cs"> + <Link>Errors\ProjectFileErrorUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\ProjectWriter.cs"> + <Link>SharedUtilities\ProjectWriter.cs</Link> + </Compile> + <Compile Include="..\Shared\ResourceUtilities.cs"> + <Link>SharedUtilities\ResourceUtilities.cs</Link> + </Compile> + <Compile Include="..\Shared\Tracing.cs" /> + <Compile Include="..\Shared\CoreCLRAssemblyLoader.cs" Condition="'$(NetCoreBuild)'=='true'" /> + <Compile Include="..\Shared\TypeLoader.cs"> + <Link>SharedUtilities\TypeLoader.cs</Link> + </Compile> + <Compile Include="..\Shared\VisualStudioConstants.cs"> + <Link>VisualStudioConstants.cs</Link> + </Compile> + <Compile Include="..\Shared\XMakeAttributes.cs"> + <Link>Resources\XMakeAttributes.cs</Link> + </Compile> + <Compile Include="..\Shared\XMakeElements.cs"> + <Link>Resources\XMakeElements.cs</Link> + </Compile> + <Compile Include="..\Shared\XmlUtilities.cs"> + <Link>SharedUtilities\XmlUtilities.cs</Link> + </Compile> + <Compile Include="FxCopExclusions\Microsoft.Build.Suppressions.cs" /> + <Compile Include="Evaluation\LazyItemEvaluator.EvaluatorData.cs" /> + <Compile Include="AV.cs" /> + </ItemGroup> + <ItemGroup> + <!-- Assemblies Files we depend on --> + <!-- Be conservative when adding references... adding System.Xml.Linq can add .47 sec cold start time to our launch time, or 80 ms to warm start time --> + <Reference Include="System" /> + <Reference Include="System.Core" /> + <Reference Include="System.Xml" /> + <Reference Include="System.Configuration" /> + <Reference Include="Microsoft.Build.Framework, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"> + <Package>msbuild-tasks-api-15.3</Package> + </Reference> + <Reference Include="System.Threading.Tasks.Dataflow" /> + <Reference Include="System.Collections.Immutable, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"> + <Package>system-collections-immutable-2.0.0_pre</Package> + </Reference> + <Reference Include="System.IO.Compression" /> + <Reference Include="System.Runtime.InteropServices.RuntimeInformation" /> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <Import Project="$(MSBuildExtensionsPath)\MSBuild.Community.Tasks.Targets" /> + <Target Name="BeforeBuild"> + <PropertyGroup Condition=" '$(VersionNumber)' == '' "> + <VersionNumber>15.3</VersionNumber> + </PropertyGroup> + <AssemblyInfo CodeLanguage="C#" OutputFile="AV.cs" AssemblyVersion="$(VersionNumber)" AssemblyFileVersion="$(VersionNumber)" /> + </Target> +</Project> diff --git a/dev-util/msbuild/files/src-dir.targets.diff b/dev-util/msbuild/files/src-dir.targets.diff new file mode 100644 index 0000000..85ea42a --- /dev/null +++ b/dev-util/msbuild/files/src-dir.targets.diff @@ -0,0 +1,20 @@ +diff --git a/src/dir.targets b/src/dir.targets +index c65518b..dc9ce44 100644 +--- a/src/dir.targets ++++ b/src/dir.targets +@@ -112,6 +112,7 @@ + + <!-- Taken from Microsoft.VisualStudio.SDK.EmbedInteropTypes NuGet package which tries to fix this issue + (but doesn't include this assembly in their list). --> ++<!-- + <Target Name="LinkVSEmbeddableAssemblies" DependsOnTargets="ResolveReferences" AfterTargets="ResolveReferences"> + <ItemGroup> + <ReferencePath Condition="'%(FileName)' == 'Microsoft.VisualStudio.Setup.Configuration.Interop'"> +@@ -119,6 +120,7 @@ + </ReferencePath> + </ItemGroup> + </Target> ++--> + + <!-- copied from Microsoft.Common.CurrentVersion.targets and modified to force anycpu --> + <!-- remove when https://github.com/Microsoft/msbuild/issues/1588 is done--> diff --git a/dev-util/msbuild/files/tasks.patch b/dev-util/msbuild/files/tasks.patch new file mode 100644 index 0000000..c40127b --- /dev/null +++ b/dev-util/msbuild/files/tasks.patch @@ -0,0 +1,32 @@ +diff --git a/src/Tasks/Microsoft.Build.Tasks.csproj b/src/Tasks/Microsoft.Build.Tasks.csproj +index 876a403..d9196e6 100644 +--- a/src/Tasks/Microsoft.Build.Tasks.csproj ++++ b/src/Tasks/Microsoft.Build.Tasks.csproj +@@ -967,6 +967,10 @@ + <!-- For perf, do not add more references (that will be loaded in common scenarios) without good reason --> + <!-- ==========================================================================================--> + <ItemGroup Condition="'$(NetCoreBuild)' != 'true'"> ++ <Reference Include="System.Reflection.Metadata" /> ++ <Reference Include="System.Collections.Immutable" /> ++ <Reference Include="Microsoft.Build.Framework, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" /> ++ <Reference Include="Microsoft.Build.Utilities.Core, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" /> + <Reference Include="Microsoft.Build.Tasks.CodeAnalysis"> + <HintPath>$(CompilerToolsDir)\Microsoft.Build.Tasks.CodeAnalysis.dll</HintPath> + </Reference> +@@ -983,16 +987,6 @@ + <Reference Include="System.Xaml" /> + </ItemGroup> + <!-- ==========================================================================================--> +- <ItemGroup> +- <ProjectReference Include="..\Utilities\Microsoft.Build.Utilities.csproj"> +- <Project>{828566EE-6F6A-4EF4-98B0-513F7DF9C628}</Project> +- <Name>Microsoft.Build.Utilities</Name> +- </ProjectReference> +- <ProjectReference Include="..\Framework\Microsoft.Build.Framework.csproj"> +- <Project>{571F09DB-A81A-4444-945C-6F7B530054CD}</Project> +- <Name>Microsoft.Build.Framework</Name> +- </ProjectReference> +- </ItemGroup> + <ItemGroup> + <None Include="project.json" /> + </ItemGroup> diff --git a/dev-util/msbuild/metadata.xml b/dev-util/msbuild/metadata.xml new file mode 100644 index 0000000..60328c2 --- /dev/null +++ b/dev-util/msbuild/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>dotnet@gentoo.org</email> + <description>Gentoo Dotnet Project</description> + </maintainer> +</pkgmetadata> diff --git a/dev-util/msbuild/msbuild-15.3-r2.ebuild b/dev-util/msbuild/msbuild-15.3-r2.ebuild new file mode 100644 index 0000000..e90f36d --- /dev/null +++ b/dev-util/msbuild/msbuild-15.3-r2.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +RESTRICT="mirror" +KEYWORDS="~amd64" +SLOT="0" + +USE_DOTNET="net46" +IUSE="+${USE_DOTNET} +gac developer debug doc +roslyn" + +inherit dotnet gac + +GITHUB_ACCOUNT="mono" +GITHUB_PROJECTNAME="linux-packaging-msbuild" +EGIT_COMMIT="e08c20fd277b9de1e3a97c5bd9a5dcf95fcff926" +SRC_URI="https://github.com/${GITHUB_ACCOUNT}/${GITHUB_PROJECTNAME}/archive/${EGIT_COMMIT}.tar.gz -> ${GITHUB_PROJECTNAME}-${GITHUB_ACCOUNT}-${PV}.tar.gz + https://github.com/mono/mono/raw/master/mcs/class/mono.snk" +S="${WORKDIR}/${GITHUB_PROJECTNAME}-${EGIT_COMMIT}" + +HOMEPAGE="https://docs.microsoft.com/visualstudio/msbuild/msbuild" +DESCRIPTION="Microsoft Build Engine (MSBuild) is an XML-based platform for building applications" +LICENSE="MIT" # https://github.com/mono/linux-packaging-msbuild/blob/master/LICENSE + +COMMON_DEPEND=">=dev-lang/mono-5.2.0.196 + dev-dotnet/msbuild-tasks-api developer? ( dev-dotnet/msbuild-tasks-api[developer] ) + dev-dotnet/msbuild-defaulttasks developer? ( dev-dotnet/msbuild-defaulttasks[developer] ) + roslyn? ( dev-dotnet/msbuild-roslyn-csc ) +" +RDEPEND="${COMMON_DEPEND} +" +DEPEND="${COMMON_DEPEND} + dev-dotnet/buildtools + >=dev-dotnet/msbuildtasks-1.5.0.240-r1 +" + +KEY2="${DISTDIR}/mono.snk" + +PROJ1=Microsoft.Build +PROJ1_DIR=src/Build +PROJ2=MSBuild +PROJ2_DIR=src/MSBuild + +src_prepare() { + eapply "${FILESDIR}/dir.props.diff" + eapply "${FILESDIR}/dir.targets.diff" + eapply "${FILESDIR}/src-dir.targets.diff" + eapply "${FILESDIR}/tasks.patch" + eapply "${FILESDIR}/Microsoft.CSharp.targets.patch" + eapply "${FILESDIR}/Microsoft.Common.targets.patch" + sed -i 's/CurrentAssemblyVersion = "15.1.0.0"/CurrentAssemblyVersion = "15.3.0.0"/g' "${S}/src/Shared/Constants.cs" || die + sed -i 's/Microsoft.Build.Tasks.Core, Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a/Microsoft.Build.Tasks.Core, Version=15.3.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756/g' "${S}/src/Tasks/Microsoft.Common.tasks" || die + sed -i 's/PublicKeyToken=b03f5f7f11d50a3a/PublicKeyToken=0738eb9f132ed756/g' "${S}/src/Build/Resources/Constants.cs" || die + cp "${FILESDIR}/mono-${PROJ1}.csproj" "${S}/${PROJ1_DIR}/" || die + cp "${FILESDIR}/mono-${PROJ2}.csproj" "${S}/${PROJ2_DIR}/" || die + eapply_user +} + +src_compile() { + if use developer; then + SARGS=/p:DebugSymbols=True + else + SARGS=/p:DebugSymbols=False + fi + + if use debug; then + CONFIGURATION=Debug + if use developer; then + SARGS=${SARGS} /p:DebugType=full + fi + else + CONFIGURATION=Release + if use developer; then + SARGS=${SARGS} /p:DebugType=pdbonly + fi + fi + + VER=1.0.27.0 + + exbuild_raw /v:detailed /p:TargetFrameworkVersion=v4.6 "/p:Configuration=${CONFIGURATION}" ${SARGS} "/p:VersionNumber=${VER}" "/p:RootPath=${S}" "/p:SignAssembly=true" "/p:AssemblyOriginatorKeyFile=${KEY2}" "${S}/${PROJ2_DIR}/mono-${PROJ2}.csproj" + sn -R "${PROJ1_DIR}/bin/${CONFIGURATION}/${PROJ1}.dll" "${KEY2}" || die +} + +src_install() { + if use debug; then + CONFIGURATION=Debug + else + CONFIGURATION=Release + fi + + egacinstall "${PROJ1_DIR}/bin/${CONFIGURATION}/${PROJ1}.dll" + + insinto "/usr/share/${PN}" + newins "${PROJ2_DIR}/bin/${CONFIGURATION}/${PROJ2}.exe" MSBuild.exe + doins "${S}/src/Tasks/Microsoft.Common.props" + doins "${S}/src/Tasks/Microsoft.Common.targets" + doins "${S}/src/Tasks/Microsoft.Common.overridetasks" + doins "${S}/src/Tasks/Microsoft.CSharp.targets" + doins "${S}/src/Tasks/Microsoft.CSharp.CurrentVersion.targets" + doins "${S}/src/Tasks/Microsoft.Common.CurrentVersion.targets" + doins "${S}/src/Tasks/Microsoft.NETFramework.props" + doins "${S}/src/Tasks/Microsoft.NETFramework.CurrentVersion.props" + doins "${S}/src/Tasks/Microsoft.NETFramework.targets" + doins "${S}/src/Tasks/Microsoft.NETFramework.CurrentVersion.targets" + + if use debug; then + make_wrapper msbuild "/usr/bin/mono --debug /usr/share/${PN}/MSBuild.exe" + else + make_wrapper msbuild "/usr/bin/mono /usr/share/${PN}/MSBuild.exe" + fi +} |