Remove BuildTools from product build (#24841)
authorElinor Fung <47805090+elinor-fung@users.noreply.github.com>
Thu, 30 May 2019 21:58:09 +0000 (14:58 -0700)
committerGitHub <noreply@github.com>
Thu, 30 May 2019 21:58:09 +0000 (14:58 -0700)
* Remove BuildTools imports from product build
* Split scripts for installing dotnet vs BuildTools

15 files changed:
UpdatePublishedVersions.ps1
build-test.sh
build.cmd
build.proj [deleted file]
build.sh
dir.props
dir.targets [deleted file]
dotnet.cmd
dotnet.sh
eng/Versions.props
init-dotnet.cmd [new file with mode: 0644]
init-dotnet.sh [new file with mode: 0644]
init-tools.cmd
init-tools.sh
src/System.Private.CoreLib/GenerateSplitStringResources.targets [deleted file]

index ceaff86..cef54e5 100644 (file)
@@ -16,6 +16,7 @@ param(
     # A pattern matching all packages in the set that the versions repository should be set to.
     [Parameter(Mandatory=$true)][string]$nupkgPath)
 
+& "$PSScriptRoot\init-tools.cmd"
 & "$PSScriptRoot\dotnet.cmd" msbuild /nologo /verbosity:minimal /clp:Summary /nodeReuse:false `
     /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll`;LogFile=binclash.log `
     /p:RestoreDefaultOptimizationDataPackage=false `
index 2b9635d..a6569cb 100755 (executable)
@@ -994,7 +994,8 @@ fi
 # init the target distro name
 initTargetDistroRid
 
-# Override tool directory
+# Restore Build Tools
+source $__ProjectRoot/init-tools.sh
 
 if [[ (-z "$__GenerateLayoutOnly") && (-z "$__GenerateTestHostOnly") && (-z "$__BuildTestWrappersOnly") ]]; then
     build_Tests
index 234bbfe..de8bc7c 100644 (file)
--- a/build.cmd
+++ b/build.cmd
@@ -39,7 +39,6 @@ set ghprbCommentBody=
 ::      __BinDir            -- default: %__RootBinDir%\%__BuildOS%.%__BuildArch.%__BuildType%\
 ::      __IntermediatesDir
 ::      __PackagesBinDir    -- default: %__BinDir%\.nuget
-::      __TestWorkingDir    -- default: %__RootBinDir%\tests\%__BuildOS%.%__BuildArch.%__BuildType%\
 ::
 :: Thus, these variables are not simply internal to this script!
 
@@ -377,12 +376,12 @@ REM === Restore optimization profile data
 REM ===
 REM =========================================================================================
 
+set OptDataProjectFilePath=%__ProjectDir%\src\.nuget\optdata\optdata.csproj
 if %__RestoreOptData% EQU 1 (
     echo %__MsgPrefix%Restoring the OptimizationData Package
-    call %__ProjectDir%\dotnet.cmd msbuild /nologo /verbosity:minimal /clp:Summary /nodeReuse:false^
-      /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-      /p:UsePartialNGENOptimization=false /maxcpucount^
-      ./build.proj /t:RestoreOptData^
+    call %__ProjectDir%\dotnet.cmd restore /nologo /verbosity:minimal^
+      /nodeReuse:false /maxcpucount^
+      %OptDataProjectFilePath%^
       %__CommonMSBuildArgs% %__UnprocessedBuildArgs%
     if not !errorlevel! == 0 (
         echo %__MsgPrefix%Error: Failed to restore the optimization data package.
@@ -391,7 +390,6 @@ if %__RestoreOptData% EQU 1 (
 )
 
 REM Parse the optdata package versions out of msbuild so that we can pass them on to CMake
-set OptDataProjectFilePath=%__ProjectDir%\src\.nuget\optdata\optdata.csproj
 for /f "tokens=*" %%s in ('call "%__ProjectDir%\dotnet.cmd" msbuild "%OptDataProjectFilePath%" /t:DumpPgoDataPackageVersion /nologo') do (
     set __PgoOptDataVersion=%%s
 )
@@ -473,9 +471,7 @@ if %__BuildCrossArchNative% EQU 1 (
     set __Logging=!_MsbuildLog! !__MsbuildWrn! !__MsbuildErr!
 
     call %__ProjectDir%\cmake_msbuild.cmd /nologo /verbosity:minimal /clp:Summary /nodeReuse:false^
-      /l:BinClashLogger,Tools/net46/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log^
-      /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-      /p:UsePartialNGENOptimization=false /maxcpucount^
+      /p:PortableBuild=true /maxcpucount^
       %__CrossCompIntermediatesDir%\install.vcxproj^
       !__Logging! /p:Configuration=%__BuildType% /p:Platform=%__CrossArch% %__CommonMSBuildArgs% %__UnprocessedBuildArgs%
 
@@ -561,9 +557,7 @@ if %__BuildNative% EQU 1 (
     set __Logging=!__MsbuildLog! !__MsbuildWrn! !__MsbuildErr!
 
     call %__ProjectDir%\cmake_msbuild.cmd /nologo /verbosity:minimal /clp:Summary /nodeReuse:false^
-      /l:BinClashLogger,Tools/net46/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log^
-      /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-      /p:UsePartialNGENOptimization=false /maxcpucount %__IntermediatesDir%\install.vcxproj^
+      /p:PortableBuild=true /maxcpucount %__IntermediatesDir%\install.vcxproj^
       !__Logging! /p:Configuration=%__BuildType% /p:Platform=%__BuildArch% %__CommonMSBuildArgs% %__UnprocessedBuildArgs%
 
     if not !errorlevel! == 0 (
@@ -614,9 +608,7 @@ if %__BuildCoreLib% EQU 1 (
         set __Logging=!__MsbuildLog! !__MsbuildWrn! !__MsbuildErr!
 
         call %__ProjectDir%\dotnet.cmd restore /nologo /verbosity:minimal /clp:Summary /nodeReuse:false^
-          /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log^
-          /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-          /p:UsePartialNGENOptimization=false /maxcpucount /p:IncludeRestoreOnlyProjects=true /p:ArcadeBuild=true^
+          /p:PortableBuild=true /maxcpucount /p:IncludeRestoreOnlyProjects=true /p:ArcadeBuild=true^
           %__ProjectDir%\src\build.proj^
           !__Logging! %__CommonMSBuildArgs% !__ExtraBuildArgs! %__UnprocessedBuildArgs%
         if not !errorlevel! == 0 (
@@ -628,9 +620,7 @@ if %__BuildCoreLib% EQU 1 (
         )
 
         call %__ProjectDir%\dotnet.cmd msbuild /nologo /verbosity:minimal /clp:Summary /nodeReuse:false^
-          /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log^
-          /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-          /p:UsePartialNGENOptimization=false /maxcpucount /p:ArcadeBuild=true^
+          /p:PortableBuild=true /maxcpucount /p:ArcadeBuild=true^
           %__ProjectDir%\src\build.proj^
           !__Logging! %__CommonMSBuildArgs% !__ExtraBuildArgs! %__UnprocessedBuildArgs%
         if not !errorlevel! == 0 (
@@ -835,8 +825,7 @@ if %__BuildPackages% EQU 1 (
     powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__ProjectDir%\eng\common\build.ps1"^
         -r -b -projects %__SourceDir%\.nuget\packages.builds^
         -verbosity minimal /nodeReuse:false /bl:!__BuildLog!^
-        /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true^
-        /p:UsePartialNGENOptimization=false /p:ArcadeBuild=true^
+        /p:PortableBuild=true /p:ArcadeBuild=true^
         /p:Platform=%__BuildArch% %__CommonMSBuildArgs% %__UnprocessedBuildArgs%
     if not !errorlevel! == 0 (
         echo %__MsgPrefix%Error: Nuget package generation failed. Refer to the build log file for details:
diff --git a/build.proj b/build.proj
deleted file mode 100644 (file)
index 3ccf06d..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<Project Sdk="Microsoft.Build.NoTargets">
-  <!-- [ARCADE_REMOVE] The entire file can be removed -->
-  <Import Project="dir.props" />
-
-  <Import Project="dir.targets" />
-
-  <Import Project="dir.traversal.targets" />
-
-  <Target Name="RestoreOptData" Condition="'$(RestoreDuringBuild)'=='true' and '$(BuildType)'=='Release'">
-    <Exec Command="$(DotnetRestoreCommand) $(SourceDir).nuget/optdata/optdata.csproj" StandardOutputImportance="Low" />
-  </Target>
-
-  <Import Project="$(ToolsDir)clean.targets" />
-</Project>
\ No newline at end of file
index 6c39ea6..81d6610 100755 (executable)
--- a/build.sh
+++ b/build.sh
@@ -136,12 +136,11 @@ restore_optdata()
     # we only need optdata on a Release build
     if [[ "$__BuildType" != "Release" ]]; then __SkipRestoreOptData=1; fi
 
+    local OptDataProjectFilePath="$__ProjectRoot/src/.nuget/optdata/optdata.csproj"
     if [[ ( $__SkipRestoreOptData == 0 ) && ( $__isMSBuildOnNETCoreSupported == 1 ) ]]; then
         echo "Restoring the OptimizationData package"
-        "$__ProjectRoot/dotnet.sh" msbuild /nologo /verbosity:minimal /clp:Summary \
-                                   /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true \
-                                   /p:UsePartialNGENOptimization=false /maxcpucount \
-                                   /t:RestoreOptData ./build.proj \
+        "$__ProjectRoot/dotnet.sh" restore /nologo /verbosity:minimal /clp:Summary /m \
+                                   $OptDataProjectFilePath \
                                    $__CommonMSBuildArgs $__UnprocessedBuildArgs
         if [ $? != 0 ]; then
             echo "Failed to restore the optimization data package."
@@ -153,13 +152,12 @@ restore_optdata()
         # Parse the optdata package versions out of msbuild so that we can pass them on to CMake
         local DotNetCli="$__ProjectRoot/.dotnet/dotnet"
         if [ ! -f $DotNetCli ]; then
-            source "$__ProjectRoot/init-tools.sh"
+            source "$__ProjectRoot/init-dotnet.sh"
             if [ $? != 0 ]; then
-                echo "Failed to restore buildtools."
+                echo "Failed to install dotnet."
                 exit 1
             fi
         fi
-        local OptDataProjectFilePath="$__ProjectRoot/src/.nuget/optdata/optdata.csproj"
         __PgoOptDataVersion=$(DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1 $DotNetCli msbuild $OptDataProjectFilePath /t:DumpPgoDataPackageVersion /nologo)
         if [ $? != 0 ]; then
             echo "Failed to get PGO data package version."
@@ -420,9 +418,7 @@ build_CoreLib()
     fi
 
     $__ProjectRoot/dotnet.sh restore /nologo /verbosity:minimal /clp:Summary \
-                             /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll\;LogFile=binclash.log \
-                             /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true \
-                             /p:UsePartialNGENOptimization=false /maxcpucount /p:IncludeRestoreOnlyProjects=true /p:ArcadeBuild=true\
+                             /p:PortableBuild=true /maxcpucount /p:IncludeRestoreOnlyProjects=true /p:ArcadeBuild=true\
                              $__ProjectDir/src/build.proj \
                              /flp:Verbosity=normal\;LogFile=$__LogsDir/System.Private.CoreLib_$__BuildOS__$__BuildArch__$__BuildType.log \
                              /p:__IntermediatesDir=$__IntermediatesDir /p:__RootBinDir=$__RootBinDir \
@@ -434,9 +430,7 @@ build_CoreLib()
     fi
 
     $__ProjectRoot/dotnet.sh msbuild /nologo /verbosity:minimal /clp:Summary \
-                             /l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll\;LogFile=binclash.log \
-                             /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true \
-                             /p:UsePartialNGENOptimization=false /maxcpucount /p:ArcadeBuild=true\
+                             /p:PortableBuild=true /maxcpucount /p:ArcadeBuild=true\
                              $__ProjectDir/src/build.proj \
                              /flp:Verbosity=normal\;LogFile=$__LogsDir/System.Private.CoreLib_$__BuildOS__$__BuildArch__$__BuildType.log \
                              /p:__IntermediatesDir=$__IntermediatesDir /p:__RootBinDir=$__RootBinDir \
@@ -505,8 +499,7 @@ generate_NugetPackages()
     # Package build uses the Arcade system and scripts, relying on it to restore required toolsets as part of build
     $__ProjectRoot/eng/common/build.sh -r -b -projects $__SourceDir/.nuget/packages.builds \
                                        -verbosity minimal -bl:$__LogsDir/Nuget_$__BuildOS__$__BuildArch__$__BuildType.binlog \
-                                       /p:RestoreDefaultOptimizationDataPackage=false /p:PortableBuild=true \
-                                       /p:UsePartialNGENOptimization=false /p:ArcadeBuild=true \
+                                       /p:PortableBuild=true /p:ArcadeBuild=true \
                                        /p:__IntermediatesDir=$__IntermediatesDir /p:__RootBinDir=$__RootBinDir /p:__DoCrossArchBuild=$__CrossBuild \
                                        $__CommonMSBuildArgs $__UnprocessedBuildArgs
 
@@ -1009,10 +1002,7 @@ __MsbuildDebugLogsDir="$__LogsDir/MsbuildDebugLogs"
 # Set the remaining variables based upon the determined build configuration
 __BinDir="$__RootBinDir/Product/$__BuildOS.$__BuildArch.$__BuildType"
 __PackagesBinDir="$__BinDir/.nuget"
-__ToolsDir="$__RootBinDir/tools"
-__TestWorkingDir="$__RootBinDir/tests/$__BuildOS.$__BuildArch.$__BuildType"
 export __IntermediatesDir="$__RootBinDir/obj/$__BuildOS.$__BuildArch.$__BuildType"
-__TestIntermediatesDir="$__RootBinDir/tests/obj/$__BuildOS.$__BuildArch.$__BuildType"
 __isMSBuildOnNETCoreSupported=0
 __CrossComponentBinDir="$__BinDir"
 
index 50af3a3..d2a63e5 100644 (file)
--- a/dir.props
+++ b/dir.props
@@ -2,6 +2,9 @@
 <Project>
   <Import Project="dir.common.props" />
 
+  <!-- [ARCADE REMOVE] This entire file can be removed. Properties set by this file should be moved into
+       dir.common.props and Directory.Build.props as appropriate and projects should stop importing this. -->
+
   <PropertyGroup>
     <LangVersion>8.0</LangVersion>
     <UseSharedCompilation>true</UseSharedCompilation>
     <DebugType Condition="'$(DebugType)' == ''">Portable</DebugType>
   </PropertyGroup>
 
-  <!--
-     Switching to the .NET Core version of the BuildTools tasks seems to break numerous scenarios, such as VS intellisense and resource designer
-     as well as running the build on mono. Until we can get these sorted out we will continue using the .NET 4.5 version of the tasks.
-     -->
-  <PropertyGroup>
-    <RunningOnCore>false</RunningOnCore>
-    <RunningOnCore Condition="'$(MSBuildRuntimeType)' == 'core'">true</RunningOnCore>
-    <BuildToolsTargetsDesktop>false</BuildToolsTargetsDesktop>
-    <BuildToolsTargetsDesktop Condition="'$(RunningOnCore)' != 'true'">true</BuildToolsTargetsDesktop>
-    <BuildToolsTargets45>$(BuildToolsTargetsDesktop)</BuildToolsTargets45>
-  </PropertyGroup>
-
   <!-- Common properties -->
   <PropertyGroup>
 
     <!-- This name is used to create a GIT repository URL https://github.com/dotnet/$(GitHubRepositoryName) used to find source code for debugging -->
     <GitHubRepositoryName Condition="'$(GitHubRepositoryName)' == ''">coreclr</GitHubRepositoryName>
 
-    <ToolsDir Condition="'$(ToolsDir)'==''">$(ProjectDir)Tools\</ToolsDir>
-    <DotnetCliPath Condition="'$(DotnetCliPath)'==''">$(ProjectDir).dotnet\</DotnetCliPath>
-    <OverrideToolHost>$(DotnetCliPath)dotnet</OverrideToolHost>
-    <BuildToolsSemaphore Condition="'$(BuildToolsSemaphore)' == ''">$(ToolsDir)Microsoft.DotNet.Build.Tasks.dll</BuildToolsSemaphore>
-
-    <TestWorkingDir>$(__TestWorkingDir)\</TestWorkingDir>
-    <TestWorkingDir Condition="'$(__TestWorkingDir)'==''">$(RootBinDir)tests\$(PlatformConfigPathPart)\</TestWorkingDir>
-
     <Platform Condition="'$(Platform)' == ''">$(BuildArch)</Platform>
     <Platform Condition="'$(Platform)' == 'amd64'">x64</Platform>
 
     <OutputPath Condition="'$(OutputPath)' == ''">$(BinDir)</OutputPath>
   </PropertyGroup>
 
-  <!-- Import Build tools common props file where repo-independent properties are found -->
-  <Import Condition="Exists('$(ToolsDir)Build.Common.props')" Project="$(ToolsDir)Build.Common.props" />
-
   <!-- Provides properties for dependency versions and configures dependency verification/auto-upgrade. -->
   <Import Project="$(ProjectDir)dependencies.props" />
-
-  <!-- Use Roslyn Compilers to build -->
-  <Import Project="$(RoslynPropsFile)" Condition="Exists('$(RoslynPropsFile)')" />
 </Project>
diff --git a/dir.targets b/dir.targets
deleted file mode 100644 (file)
index cb944a4..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" InitialTargets="CheckForBuildTools" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-
-  <Target Name="CheckForBuildTools">
-    <Error Condition="!Exists('$(ToolsDir)')"
-           Text="The tools directory [$(ToolsDir)] does not exist. Please run init-tools.cmd in your enlistment to ensure the tools are installed before attempting to build an individual project." />
-  </Target>
-
-  <!-- Provide default targets which can be hooked onto or overridden as necessary -->
-  <Target Name="BuildAndTest" DependsOnTargets="Build;Test" />
-  <Target Name="RebuildAndTest" DependsOnTargets="Rebuild;Test" />
-  <Target Name="Test" />
-
-  <PropertyGroup>
-    <ExcludePackagingImport>true</ExcludePackagingImport>
-    <ExcludePackageLibsImport>true</ExcludePackageLibsImport>
-    <ExcludeVersioningImport>true</ExcludeVersioningImport>
-  </PropertyGroup>
-
-  <Import Project="$(ToolsDir)/Build.Common.targets" Condition="'$(UseLiveBuildTools)' != 'true'" />
-
-</Project>
-
index afb3f5a..dc2dd4c 100644 (file)
@@ -14,10 +14,10 @@ set DOTNET_MULTILEVEL_LOOKUP=0
 :: Disable first run since we do not need all ASP.NET packages restored.
 set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
 
-:: Restore the Tools directory
-call %~dp0init-tools.cmd
+:: Install dotnet
+call %~dp0\init-dotnet.cmd
 if NOT [%ERRORLEVEL%]==[0] (
-  exit /b 1
+  exit /b %ERRORLEVEL%
 )
 
 pushd %~dp0
index 479d6be..82ca63a 100755 (executable)
--- a/dotnet.sh
+++ b/dotnet.sh
@@ -8,8 +8,8 @@ export DOTNET_MULTILEVEL_LOOKUP=0
 # Disable first run since we want to control all package sources
 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
 
-echo "Running init-tools.sh"
-source $working_tree_root/init-tools.sh
+echo "Running init-dotnet.sh"
+source $working_tree_root/init-dotnet.sh
 
 dotnet=$working_tree_root/.dotnet/dotnet
 
index f894d6d..639e276 100644 (file)
@@ -9,7 +9,8 @@
     <!-- Always use shipping version instead of dummy versions -->
     <DotNetUseShippingVersions>true</DotNetUseShippingVersions>
     <PreReleaseVersionLabel>preview6</PreReleaseVersionLabel>
-    <!-- Opt-out repo features -->
+    <!-- Opt-in/out repo features -->
+    <UsingToolMicrosoftNetCompilers>true</UsingToolMicrosoftNetCompilers>
     <UsingToolXliff>false</UsingToolXliff>
     <!-- Package versions -->
     <!-- arcade -->
diff --git a/init-dotnet.cmd b/init-dotnet.cmd
new file mode 100644 (file)
index 0000000..ad70b4c
--- /dev/null
@@ -0,0 +1,13 @@
+@if not defined _echo @echo off
+setlocal
+
+echo Installing dotnet using Arcade...
+set PS_DOTNET_INSTALL_SCRIPT=". %~dp0eng\configure-toolset.ps1; . %~dp0eng\common\tools.ps1; InitializeBuildTool"
+echo running: powershell -NoProfile -ExecutionPolicy unrestricted -Command %PS_DOTNET_INSTALL_SCRIPT%
+powershell -NoProfile -ExecutionPolicy unrestricted -Command %PS_DOTNET_INSTALL_SCRIPT%
+if NOT [%ERRORLEVEL%] == [0] (
+  echo Failed to install dotnet using Arcade.
+  exit /b %ERRORLEVEL%
+)
+
+exit /b 0
\ No newline at end of file
diff --git a/init-dotnet.sh b/init-dotnet.sh
new file mode 100644 (file)
index 0000000..f7ac32b
--- /dev/null
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+__scriptpath=$(cd "$(dirname "$0")"; pwd -P)
+
+echo "Installing dotnet using Arcade..."
+
+source $__scriptpath/eng/configure-toolset.sh
+source $__scriptpath/eng/common/tools.sh
+
+InitializeBuildTool
+
+if [ $? != 0 ]; then
+    echo "Failed to install dotnet using Arcade"
+    exit $?
+fi
index 4390b26..32634ec 100644 (file)
@@ -71,11 +71,8 @@ echo "init-tools.cmd: Setting arch to %_Arch% for build tools"
 
 :ArchSet
 
-echo Installing dotnet cli...
-set PS_DOTNET_INSTALL_SCRIPT=". %~dp0eng\configure-toolset.ps1; . %~dp0eng\common\tools.ps1; InitializeBuildTool"
 if NOT exist "%DOTNET_CMD%" (
-  echo running: powershell -NoProfile -ExecutionPolicy unrestricted -Command %PS_DOTNET_INSTALL_SCRIPT%
-  powershell -NoProfile -ExecutionPolicy unrestricted -Command %PS_DOTNET_INSTALL_SCRIPT%
+  call %~dp0init-dotnet.cmd
   if NOT exist "%DOTNET_CMD%" (
     echo ERROR: Could not install dotnet cli correctly. 1>&2
     goto :error
index 6de204a..42bbc09 100755 (executable)
@@ -131,11 +131,7 @@ esac
 __PKG_RID=$__PKG_RID-$__PKG_ARCH
 
 if [ ! -e "$__DOTNET_CMD" ]; then
-    source $__scriptpath/eng/configure-toolset.sh
-    source $__scriptpath/eng/common/tools.sh
-
-    InitializeBuildTool
-
+    source $__scriptpath/init-dotnet.sh
     if [ ! -e "$__DOTNET_CMD" ]; then
         echo "ERROR: Ensure arcade dotnet install did not install dotnet at $__DOTNET_CMD"
         exit 1
diff --git a/src/System.Private.CoreLib/GenerateSplitStringResources.targets b/src/System.Private.CoreLib/GenerateSplitStringResources.targets
deleted file mode 100644 (file)
index 6041cbe..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <PrepareResourcesDependsOn>GenerateSplitStringResources;$(PrepareResourcesDependsOn)</PrepareResourcesDependsOn>
-  </PropertyGroup>
-
-  <PropertyGroup>
-    <PreprocessFileTaskAsssemblyPath Condition="'$(PreprocessFileTaskAsssemblyPath)' == ''">$(BuildToolsTaskDir)Microsoft.DotNet.Build.Tasks.dll</PreprocessFileTaskAsssemblyPath>
-  </PropertyGroup>
-
-  <UsingTask TaskName="PreprocessFile" AssemblyFile="$(PreprocessFileTaskAsssemblyPath)" />
-
-  <Target Name="GenerateSplitStringResources"
-          Inputs="@(SplitTextStringResource)"
-          Outputs="@(SplitTextStringResource->'$(IntermediateOutputPath)%(Filename).txt')">
-         
-    <ItemGroup>
-      <Internal_ResGenDefines Remove="@(Internal_ResGenDefines)" />
-      <Internal_ResGenDefines Include="INCLUDE_DEBUG" />
-      <Internal_ResGenDefines Include="INCLUDE_RUNTIME" />
-      <Internal_ResGenDefines Include="%(SplitTextStringResource.ResGenDefines)" />
-    </ItemGroup>    
-
-    <PreprocessFile SourceFile="%(SplitTextStringResource.Identity)" OutputFile="$(IntermediateOutputPath)%(SplitTextStringResource.Filename).txt" Defines="@(Internal_ResGenDefines)" />
-
-    <GenerateResource Sources="$(IntermediateOutputPath)%(SplitTextStringResource.Filename).txt"
-                      OutputResources="$(IntermediateOutputPath)%(SplitTextStringResource.Filename).resources"
-                      ExecuteAsTool="false" />
-
-    <ItemGroup>
-      <EmbeddedResource Include="@(SplitTextStringResource->'$(IntermediateOutputPath)%(Filename).resources')">
-        <WithCulture>false</WithCulture>
-        <ManifestResourceName>%(Filename)</ManifestResourceName>
-      </EmbeddedResource>
-      <Clean Include="$(IntermediateOutputPath)%(SplitTextStringResource.Filename).txt" />
-      <Clean Include="$(IntermediateOutputPath)%(SplitTextStringResource.Filename).resources" />
-    </ItemGroup>
-
-    <ItemGroup>
-      <Internal_ResGenDefines Remove="@(Internal_ResGenDefines)" />
-    </ItemGroup>    
-  </Target>
-</Project>