提交 00a6ef21 编写于 作者: S Sven Boemer 提交者: GitHub

Remove buildtools (dotnet/coreclr#26108)

Remove the dependency on buildtools.

- Makes a number of common test projects SDK-style, and replaces the buildtools prerelease restore target with the restore logic built in to the SDK. For some projects, we currently restore 5.0 assets that are used for netcoreapp3.0 - this required a workaround to switch the TFM in a few cases.
- Replaces the corefx testhost deps file creation logic with that from the SDK's publish logic.
- Uses a new IL sdk (as the old one used to make many redundant file copies), and uses an .ilproj to restore ilasm/ildasm up-front.
- Uses the UpdateVersions logic from arcade instead of buildtools.
This opens up the possibility of further simplifying some of our msbuild imports in a future change.

Commit migrated from https://github.com/dotnet/coreclr/commit/0dbe04c4938d16ceee92cd50bc9a4eb375b7b8aa
上级 d0ada95a
<Project>
<PropertyGroup>
<ArcadeBuild>true</ArcadeBuild>
</PropertyGroup>
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Project="$(NuGetPackageRoot)\microsoft.dotnet.versiontools.tasks\$(MicrosoftDotNetVersionToolsTasksPackageVersion)\build\Microsoft.DotNet.VersionTools.Tasks.targets" />
</Project>
......@@ -108,7 +108,7 @@ jobs:
variables:
- name: buildConfig
value: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.buildConfig, 'checked') }}:
- name: buildConfigUpper
value: 'Checked'
......@@ -132,7 +132,7 @@ jobs:
- name: osSubgroup
value: ${{ parameters.osSubgroup }}
- ${{ if and(eq(variables['System.TeamProject'], 'internal'), ne(variables['Build.Reason'], 'PullRequest')) }}:
- name: _HelixSource
value: official/dotnet/coreclr/$(Build.SourceBranch)
......
......@@ -16,14 +16,12 @@ 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 `
/p:PortableBuild=true `
/p:UsePartialNGENOptimization=false `
/maxcpucount `
tests\build.proj /t:UpdatePublishedVersions `
"$PSScriptRoot\eng\updateversions.proj" /t:UpdatePublishedVersions `
/p:GitHubUser="$gitHubUser" `
/p:GitHubEmail="$gitHubEmail" `
/p:GitHubAuthToken="$gitHubAuthToken" `
......
......@@ -129,7 +129,6 @@ if "%__TargetsWindows%"=="1" (
@if defined _echo @echo on
set __CommonMSBuildArgs=/p:__BuildOS=%__BuildOS% /p:__BuildType=%__BuildType% /p:__BuildArch=%__BuildArch%
REM As we move from buildtools to arcade, __RunArgs should be replaced with __msbuildArgs
set __msbuildArgs=/p:__BuildOS=%__BuildOS% /p:__BuildType=%__BuildType% /p:__BuildArch=%__BuildArch% /nologo /verbosity:minimal /clp:Summary /maxcpucount
echo %__MsgPrefix%Commencing CoreCLR test build
......@@ -172,10 +171,6 @@ REM === Restore Build Tools
REM ===
REM =========================================================================================
call "%__ProjectDir%\init-tools.cmd"
if NOT [%ERRORLEVEL%]==[0] (
exit /b %ERRORLEVEL%
)
@if defined _echo @echo on
set "__ToolsDir=%__ProjectDir%\Tools"
......
......@@ -680,7 +680,6 @@ export __ProjectDir="$__ProjectRoot"
__SourceDir="$__ProjectDir/src"
__PackagesDir="$__ProjectDir/.packages"
__RootBinDir="$__ProjectDir/bin"
__BuildToolsDir="$__ProjectDir/Tools"
__DotNetCli="$__ProjectDir/dotnet.sh"
__UnprocessedBuildArgs=
__CommonMSBuildArgs=
......@@ -1028,9 +1027,6 @@ if [ $__PortableBuild == 0 ]; then
__CommonMSBuildArgs="$__CommonMSBuildArgs /p:PortableBuild=false"
fi
# Restore Build Tools
source $__ProjectRoot/init-tools.sh
if [[ (-z "$__GenerateLayoutOnly") && (-z "$__GenerateTestHostOnly") && (-z "$__BuildTestWrappersOnly") ]]; then
build_Tests
elif [ ! -z "$__BuildTestWrappersOnly" ]; then
......
......@@ -17,7 +17,6 @@
<!-- Source of truth for dependency tooling: the commit hash of the dotnet/versions master branch as of the last auto-upgrade. -->
<PropertyGroup>
<CoreClrCurrentRef>5d3c9a7c54c1c59b764de0e2dfb6bbb4ce29476c</CoreClrCurrentRef>
<BuildToolsCurrentRef>00797464e62272e9c721a1854abe49ff05743bdf</BuildToolsCurrentRef>
</PropertyGroup>
<!-- Tests/infrastructure dependency versions. -->
......@@ -53,10 +52,6 @@
<BuildInfoPath>$(BaseDotNetBuildInfo)coreclr/$(DependencyBranch)</BuildInfoPath>
<CurrentRef>$(CoreClrCurrentRef)</CurrentRef>
</RemoteDependencyBuildInfo>
<RemoteDependencyBuildInfo Include="BuildTools">
<BuildInfoPath>$(BaseDotNetBuildInfo)buildtools/$(DependencyBranch)</BuildInfoPath>
<CurrentRef>$(BuildToolsCurrentRef)</CurrentRef>
</RemoteDependencyBuildInfo>
<DependencyBuildInfo Include="@(RemoteDependencyBuildInfo)">
<RawVersionsBaseUrl>https://raw.githubusercontent.com/dotnet/versions</RawVersionsBaseUrl>
......@@ -67,11 +62,6 @@
<ElementName>MicrosoftNETCoreRuntimeCoreCLRPackageVersion</ElementName>
<PackageId>Microsoft.NETCore.Runtime.CoreCLR</PackageId>
</XmlUpdateStep>
<UpdateStep Include="BuildTools">
<UpdaterType>File</UpdaterType>
<Path>$(MSBuildThisFileDirectory)BuildToolsVersion.txt</Path>
<PackageId>Microsoft.DotNet.BuildTools</PackageId>
</UpdateStep>
<UpdateStep Include="ILAsm">
<UpdaterType>File</UpdaterType>
<Path>$(MSBuildThisFileDirectory)ILAsmVersion.txt</Path>
......
......@@ -32,8 +32,10 @@
<BuildOS Condition="'$(__BuildOS)' == '' And '$([MSBuild]::IsOSPlatform(Windows))' == 'true'">Windows_NT</BuildOS>
<BuildOS Condition="'$(__BuildOS)' == '' And '$([MSBuild]::IsOSPlatform(Linux))' == 'true'">Linux</BuildOS>
<BuildOS Condition="'$(__BuildOS)' == '' And '$([MSBuild]::IsOSPlatform(OSX))' == 'true'">OSX</BuildOS>
<!-- TODO: converge on one property for BuildOS and __BuildOS, and remove this extra line. -->
<!-- TODO: converge on one property for BuildOS and __BuildOS (and similar), and remove these extra lines. -->
<__BuildOS>$(BuildOS)</__BuildOS>
<__BuildArch>$(BuildArch)</__BuildArch>
<Configuration Condition="'$(Configuration)' == ''">$(BuildType)</Configuration>
<Platform Condition="'$(Platform)' == ''">$(BuildArch)</Platform>
......
@if not defined _echo @echo off
setlocal
:: Clear the 'Platform' environment variable for this session
:: This avoids overriding the default value from BuildTools projects used for initialization
set Platform=
set INIT_TOOLS_LOG=%~dp0init-tools.log
if [%PACKAGES_DIR%]==[] set PACKAGES_DIR=%~dp0.packages
if [%TOOLRUNTIME_DIR%]==[] set TOOLRUNTIME_DIR=%~dp0Tools
set DOTNET_PATH=%~dp0.dotnet\
if [%DOTNET_CMD%]==[] set DOTNET_CMD=%DOTNET_PATH%dotnet.exe
if [%BUILDTOOLS_SOURCE%]==[] set BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json
set /P BUILDTOOLS_VERSION=< "%~dp0BuildToolsVersion.txt"
set BUILD_TOOLS_PATH=%PACKAGES_DIR%\Microsoft.DotNet.BuildTools\%BUILDTOOLS_VERSION%\lib
set INIT_TOOLS_RESTORE_PROJECT=%~dp0init-tools.msbuild
set BUILD_TOOLS_SEMAPHORE_DIR=%TOOLRUNTIME_DIR%\%BUILDTOOLS_VERSION%
set BUILD_TOOLS_SEMAPHORE=%BUILD_TOOLS_SEMAPHORE_DIR%\init-tools.completed
:: if force option is specified then clean the tool runtime and build tools package directory to force it to get recreated
if [%1]==[force] (
if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%"
if exist "%PACKAGES_DIR%\Microsoft.DotNet.BuildTools" rmdir /S /Q "%PACKAGES_DIR%\Microsoft.DotNet.BuildTools"
)
:: If semaphore exists do nothing
if exist "%BUILD_TOOLS_SEMAPHORE%" (
echo Tools are already initialized.
goto :EOF
)
if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%"
if exist "%DotNetBuildToolsDir%" (
echo Using tools from '%DotNetBuildToolsDir%'.
mklink /j "%TOOLRUNTIME_DIR%" "%DotNetBuildToolsDir%"
if not exist "%DOTNET_CMD%" (
echo %__ErrMsgPrefix%ERROR: Ensure that '%DotNetBuildToolsDir%' contains the .NET Core SDK at '%DOTNET_PATH%'
exit /b 1
)
echo Done initializing tools.
if NOT exist "%BUILD_TOOLS_SEMAPHORE_DIR%" mkdir "%BUILD_TOOLS_SEMAPHORE_DIR%"
echo Using tools from '%DotNetBuildToolsDir%'. > "%BUILD_TOOLS_SEMAPHORE%"
exit /b 0
)
echo Running %0 > "%INIT_TOOLS_LOG%"
set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt"
if exist "%DOTNET_CMD%" goto :afterdotnetrestore
REM Use x86 tools on arm64 and x86.
REM arm32 host is not currently supported, please crossbuild.
if /i "%PROCESSOR_ARCHITECTURE%" == "arm" (
echo %__ErrMsgPrefix%ERROR: arm32 arch not supported for build tools.
exit /b 1
)
if /i "%PROCESSOR_ARCHITECTURE%" == "amd64" (
set _Arch=x64
goto ArchSet
)
REM If this is not amd64 and not arm, then we should be running on arm64 or x86
REM either way we can (and should) use the x86 dotnet cli
REM
REM TODO: consume native arm64 toolset, blocked by official arm64 windows cli
REM : release. See https://github.com/dotnet/coreclr/issues/19614 for more
REM : information
set _Arch=x86
echo "init-tools.cmd: Setting arch to %_Arch% for build tools"
:ArchSet
if NOT exist "%DOTNET_CMD%" (
call %~dp0init-dotnet.cmd
if NOT exist "%DOTNET_CMD%" (
echo %__ErrMsgPrefix%ERROR: Could not install dotnet cli correctly. Expected to be installed at %DOTNET_CMD% 1>&2
goto :error
)
)
:afterdotnetrestore
REM We do not need the build tools for arm64/x86
if /i "%PROCESSOR_ARCHITEW6432%" == "arm64" (
goto :EOF
)
if /i "%PROCESSOR_ARCHITECTURE%" == "arm64" (
goto :EOF
)
if exist "%BUILD_TOOLS_PATH%" goto :afterbuildtoolsrestore
echo Restoring BuildTools version %BUILDTOOLS_VERSION%...
echo Running: "%DOTNET_CMD%" restore "%INIT_TOOLS_RESTORE_PROJECT%" --no-cache --packages "%PACKAGES_DIR%" --source "%BUILDTOOLS_SOURCE%" /p:BuildToolsPackageVersion=%BUILDTOOLS_VERSION% /p:ToolsDir=%TOOLRUNTIME_DIR% >> "%INIT_TOOLS_LOG%"
call "%DOTNET_CMD%" restore "%INIT_TOOLS_RESTORE_PROJECT%" --no-cache --packages "%PACKAGES_DIR%" --source "%BUILDTOOLS_SOURCE%" /p:BuildToolsPackageVersion=%BUILDTOOLS_VERSION% /p:ToolsDir=%TOOLRUNTIME_DIR% >> "%INIT_TOOLS_LOG%"
if NOT exist "%BUILD_TOOLS_PATH%\init-tools.cmd" (
echo %__ErrMsgPrefix%ERROR: Could not restore build tools correctly. 1>&2
goto :error
)
:afterbuildtoolsrestore
:: Ask init-tools to also restore ILAsm
set /p ILASMCOMPILER_VERSION=< "%~dp0ILAsmVersion.txt"
echo Initializing BuildTools...
echo Running: "%BUILD_TOOLS_PATH%\init-tools.cmd" "%~dp0" "%DOTNET_CMD%" "%TOOLRUNTIME_DIR%" >> "%INIT_TOOLS_LOG%"
call "%BUILD_TOOLS_PATH%\init-tools.cmd" "%~dp0" "%DOTNET_CMD%" "%TOOLRUNTIME_DIR%" "%PACKAGES_DIR%" >> "%INIT_TOOLS_LOG%"
set INIT_TOOLS_ERRORLEVEL=%ERRORLEVEL%
if not [%INIT_TOOLS_ERRORLEVEL%]==[0] (
echo %__ErrMsgPrefix%ERROR: An error occurred when trying to initialize the tools. 1>&2
goto :error
)
:: Create semaphore file
echo Done initializing tools.
if NOT exist "%BUILD_TOOLS_SEMAPHORE_DIR%" mkdir "%BUILD_TOOLS_SEMAPHORE_DIR%"
echo Init-Tools.cmd completed for BuildTools Version: %BUILDTOOLS_VERSION% > "%BUILD_TOOLS_SEMAPHORE%"
exit /b 0
:error
echo Please check the detailed log that follows. 1>&2
type "%INIT_TOOLS_LOG%" 1>&2
exit /b 1
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp1.0</TargetFramework>
<EnableDefaultItems>false</EnableDefaultItems>
<DisableImplicitFrameworkReferences>true</DisableImplicitFrameworkReferences>
<BaseIntermediateOutputPath>$(ToolsDir)/$(BuildToolsPackageVersion)</BaseIntermediateOutputPath>
<PackageTargetFallback>$(PackageTargetFallback);netframework</PackageTargetFallback>
</PropertyGroup>
<Import Project="dependencies.props" />
<ItemGroup>
<PackageReference Include="microsoft.dotnet.buildtools">
<Version>$(BuildToolsPackageVersion)</Version>
</PackageReference>
<PackageReference Include="$(ILLinkTasksPackage)">
<Version>$(ILLinkTasksPackageVersion)</Version>
</PackageReference>
</ItemGroup>
</Project>
#!/usr/bin/env bash
__scriptpath=$(cd "$(dirname "$0")"; pwd -P)
__init_tools_log="$__scriptpath/init-tools.log"
__PACKAGES_DIR="$__scriptpath/.packages"
__TOOLRUNTIME_DIR="$__scriptpath/Tools"
__DOTNET_PATH="$__scriptpath/.dotnet"
__DOTNET_CMD="$__DOTNET_PATH/dotnet"
if [ -z "${__BUILDTOOLS_SOURCE:-}" ]; then __BUILDTOOLS_SOURCE=https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json; fi
export __BUILDTOOLS_USE_CSPROJ=true
__BUILD_TOOLS_PACKAGE_VERSION=$(cat "$__scriptpath/BuildToolsVersion.txt" | sed 's/\r$//') # remove CR if mounted repo on Windows drive
__DOTNET_TOOLS_VERSION=$(cat "$__scriptpath/DotnetCLIVersion.txt" | sed 's/\r$//') # remove CR if mounted repo on Windows drive
__ILASM_VERSION=$(cat "$__scriptpath/ILAsmVersion.txt" | sed 's/\r$//') # remove CR if mounted repo on Windows drive
__BUILD_TOOLS_PATH="$__PACKAGES_DIR/microsoft.dotnet.buildtools/$__BUILD_TOOLS_PACKAGE_VERSION/lib"
__INIT_TOOLS_RESTORE_PROJECT="$__scriptpath/init-tools.msbuild"
__BUILD_TOOLS_SEMAPHORE="$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION/init-tools.complete"
if [ -e "$__BUILD_TOOLS_SEMAPHORE" ]; then
echo "Tools are already initialized"
return #return instead of exit because this script is inlined in other scripts which we don't want to exit
fi
if [ -e "$__TOOLRUNTIME_DIR" ]; then rm -rf -- "$__TOOLRUNTIME_DIR"; fi
if [ -d "${DotNetBuildToolsDir:-}" ]; then
echo "Using tools from '$DotNetBuildToolsDir'."
ln -s "$DotNetBuildToolsDir" "$__TOOLRUNTIME_DIR"
if [ ! -e "$__DOTNET_CMD" ]; then
echo "${__ErrMsgPrefix}ERROR: Ensure that $DotNetBuildToolsDir contains the .NET Core SDK at $__DOTNET_PATH"
exit 1
fi
echo "Done initializing tools."
mkdir -p "$(dirname "$__BUILD_TOOLS_SEMAPHORE")" && touch "$__BUILD_TOOLS_SEMAPHORE"
return #return instead of exit because this script is inlined in other scripts which we don't want to exit
fi
echo "Running: $__scriptpath/init-tools.sh" > "$__init_tools_log"
display_error_message()
{
echo "Please check the detailed log that follows." 1>&2
cat "$__init_tools_log" 1>&2
}
# Executes a command and retries if it fails.
execute_with_retry() {
local count=0
local retries=${retries:-5}
local waitFactor=${waitFactor:-6}
until "$@"; do
local exit=$?
count=$(( $count + 1 ))
if [ $count -lt $retries ]; then
local wait=$(( waitFactor ** (( count - 1 )) ))
echo "Retry $count/$retries exited $exit, retrying in $wait seconds..."
sleep $wait
else
say_err "Retry $count/$retries exited $exit, no more retries left."
return $exit
fi
done
return 0
}
if [ "$(uname -m | grep "i[3456]86")" = "i686" ]; then
echo "Warning: build not supported on 32 bit Unix"
fi
if [ "$(uname -m)" = "armhf" ] || [ "$(uname -m)" = "arm64" ] || [ "$(uname -m)" = "aarch64" ]; then
if [ "$(uname -m)" = "armhf" ]; then
__PKG_ARCH=arm
fi
if [ "$(uname -m)" = "arm64" ] || [ "$(uname -m)" = "aarch64" ]; then
__PKG_ARCH=arm64
fi
else
__PKG_ARCH=x64
fi
OSName=$(uname -s)
case $OSName in
Darwin)
OS=OSX
__PKG_RID=osx
ulimit -n 2048
# Format x.y.z as single integer with three digits for each part
VERSION=`sw_vers -productVersion| sed -e 's/\./ /g' | xargs printf "%03d%03d%03d"`
if [ "$VERSION" -lt 010012000 ]; then
echo ${__ErrMsgPrefix}ERROR: macOS version `sw_vers -productVersion` is too old. 10.12 is needed as minimum.
exit 1
fi
;;
FreeBSD)
__PKG_RID=freebsd
OS=FreeBSD
;;
Linux)
__PKG_RID=linux
OS=Linux
if [ -e /etc/os-release ]; then
source /etc/os-release
if [[ $ID == "alpine" ]]; then
__PKG_RID=linux-musl
fi
elif [ -e /etc/redhat-release ]; then
redhatRelease=$(</etc/redhat-release)
if [[ $redhatRelease == "CentOS release 6."* || $redhatRelease == "Red Hat Enterprise Linux Server release 6."* ]]; then
__PKG_RID=rhel.6
fi
fi
OSArch=$(uname -m)
if [ $OSArch == 'armv7l' ];then
__PKG_ARCH=arm
elif [ $OSArch == 'aarch64' ]; then
__PKG_ARCH=arm64
fi
;;
*)
echo "Unsupported OS '$OSName' detected. Downloading linux-$__PKG_ARCH tools."
OS=Linux
__PKG_RID=linux
;;
esac
__PKG_RID=$__PKG_RID-$__PKG_ARCH
if [ ! -e "$__DOTNET_CMD" ]; then
source $__scriptpath/init-dotnet.sh
if [ ! -e "$__DOTNET_CMD" ]; then
echo "${__ErrMsgPrefix}ERROR: Could not install dotnet cli correctly. Expected to be installed at $__DOTNET_CMD"
exit 1
fi
fi
if [ ! -e "$__BUILD_TOOLS_PATH" ]; then
echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..."
echo "Running: $__DOTNET_CMD restore \"$__INIT_TOOLS_RESTORE_PROJECT\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION /p:ToolsDir=$__TOOLRUNTIME_DIR" >> "$__init_tools_log"
"$__DOTNET_CMD" restore "$__INIT_TOOLS_RESTORE_PROJECT" --no-cache --packages "$__PACKAGES_DIR" --source "$__BUILDTOOLS_SOURCE" /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION /p:ToolsDir="$__TOOLRUNTIME_DIR" >> "$__init_tools_log"
if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then
echo "${__ErrMsgPrefix}ERROR: Could not restore build tools correctly." 1>&2
display_error_message
fi
fi
if [ -z "${__ILASM_RID-}" ]; then
__ILASM_RID=$__PKG_RID
fi
echo "Using RID $__ILASM_RID for BuildTools native tools"
export ILASMCOMPILER_VERSION=$__ILASM_VERSION
export NATIVE_TOOLS_RID=$__ILASM_RID
if [ -n "${DotNetBootstrapCliTarPath-}" ]; then
# Assume ilasm is not in nuget yet when bootstrapping...
unset ILASMCOMPILER_VERSION
fi
# Build tools only supported on x64
if [ "${__PKG_ARCH}" != "x64" ] && [ "${__PKG_ARCH}" != "arm" ]; then
echo "Skipped installing build tools."
else
echo "Initializing BuildTools..."
echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR $__PACKAGES_DIR" >> "$__init_tools_log"
# Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
chmod +x "$__BUILD_TOOLS_PATH/init-tools.sh"
"$__BUILD_TOOLS_PATH/init-tools.sh" "$__scriptpath" "$__DOTNET_CMD" "$__TOOLRUNTIME_DIR" "$__PACKAGES_DIR" >> "$__init_tools_log"
if [ "$?" != "0" ]; then
echo "${__ErrMsgPrefix}ERROR: An error occurred when trying to initialize the tools." 1>&2
display_error_message
exit 1
fi
echo "Making all .sh files executable under Tools."
# Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
ls "$__scriptpath/Tools/"*.sh | xargs chmod +x
ls "$__scriptpath/Tools/scripts/docker/"*.sh | xargs chmod +x
"$__scriptpath/Tools/crossgen.sh" "$__scriptpath/Tools" $__PKG_RID
mkdir -p "$(dirname "$__BUILD_TOOLS_SEMAPHORE")" && touch "$__BUILD_TOOLS_SEMAPHORE"
echo "Done initializing tools."
fi
......@@ -11,7 +11,7 @@ else
exit 1
fi
cd $(dirname "$0")
cd $(dirname "${BASH_SOURCE[0]}")
for D in */; do
for file in "${D}"*.cpp; do
......
#!/bin/sh
test -n "$srcdir" || srcdir=`dirname "$0"`
test -n "$srcdir" || srcdir=`dirname "${BASH_SOURCE[0]}"`
test -n "$srcdir" || srcdir=.
(
cd "$srcdir" &&
......
......@@ -448,7 +448,6 @@ function create_testhost
fi
# Initialize test variables
local buildToolsDir=$coreClrSrc/Tools
local dotnetExe=$coreClrSrc/dotnet.sh
local coreClrSrcTestDir=$coreClrSrc/tests
......@@ -616,14 +615,14 @@ function read_array {
function load_unsupported_tests {
# Load the list of tests that are not supported on this platform. These tests are disabled (skipped) permanently.
unsupportedTests=($(read_array "$(dirname "$0")/testsUnsupportedOutsideWindows.txt"))
unsupportedTests+=($(read_array "$(dirname "$0")/testsUnsupported.$ARCH.txt"))
unsupportedTests=($(read_array "$(dirname "${BASH_SOURCE[0]}")/testsUnsupportedOutsideWindows.txt"))
unsupportedTests+=($(read_array "$(dirname "${BASH_SOURCE[0]}")/testsUnsupported.$ARCH.txt"))
}
function load_failing_tests {
# Load the list of tests that fail on this platform. These tests are disabled (skipped) temporarily, pending investigation.
failingTests=($(read_array "$(dirname "$0")/testsFailingOutsideWindows.txt"))
failingTests+=($(read_array "$(dirname "$0")/testsFailing.$ARCH.txt"))
failingTests=($(read_array "$(dirname "${BASH_SOURCE[0]}")/testsFailingOutsideWindows.txt"))
failingTests+=($(read_array "$(dirname "${BASH_SOURCE[0]}")/testsFailing.$ARCH.txt"))
}
function load_playlist_tests {
......
......@@ -15,7 +15,6 @@
<PropertyGroup>
<TraversalBuildDependsOn>
BatchRestorePackages;
BuildTargetingPack;
$(TraversalBuildDependsOn);
</TraversalBuildDependsOn>
</PropertyGroup>
......@@ -31,12 +30,17 @@
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\JIT\config\benchmark\benchmark.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\JIT\config\benchmark+intrinsic\benchmark+intrinsic.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\performance\performance.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\Common\CoreCLRTestLibrary\CoreCLRTestLibrary.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\Common\CoreFX\CoreFX.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\Common\external\external.csproj" />
<RestoreProjects Include="$(MSBuildThisFileDirectory)src\Common\ilasm\ilasm.ilproj" />
</ItemGroup>
<Target Name="BuildTargetingPack" AfterTargets="BatchRestorePackages" Condition="$(__SkipTargetingPackBuild) != 'true'">
<Message Text="Building Targeting Pack" Importance="High" />
<Error Text="BuildOS has not been specified. Please do that then run build again." Condition="'$(BuildOS)' == 'AnyOS'" />
<MSBuild Projects="$(MSBuildThisFileDirectory)\src\Common\external\external.depproj" />
<MSBuild Projects="$(MSBuildThisFileDirectory)\src\Common\external\external.csproj"
Targets="Build" />
</Target>
<Target Name="BatchRestorePackages" Condition="$(__SkipPackageRestore) != 'true'">
......@@ -51,8 +55,14 @@
</Target>
<Target Name="RestorePackage">
<Exec Condition="'$(__DistroRid)' == ''" Command="$(DotnetRestoreCommand) $(RestoreProj) $(PackageVersionArg)" StandardOutputImportance="Low" />
<Exec Condition="'$(__DistroRid)' != ''" Command="$(DotnetRestoreCommand) -r $(__DistroRid) $(RestoreProj) $(PackageVersionArg)" StandardOutputImportance="Low" />
<PropertyGroup>
<DotnetCliPath Condition="'$(DotnetCliPath)'==''">$(ProjectDir)..\.dotnet\</DotnetCliPath>
<DotnetToolPath Condition="'$(OS)' != 'Windows_NT'">$(DotnetCliPath)dotnet</DotnetToolPath>
<DotnetToolPath Condition="'$(OS)' == 'Windows_NT'">$(DotnetCliPath)dotnet.exe</DotnetToolPath>
<DotnetRestoreCommand Condition="'$(__DistroRid)' == ''">$(DotnetToolPath) restore $(RestoreProj) $(PackageVersionArg) /p:SetTFMForRestore=true</DotnetRestoreCommand>
<DotnetRestoreCommand Condition="'$(__DistroRid)' != ''">$(DotnetToolPath) restore -r $(__DistroRid) $(RestoreProj) $(PackageVersionArg) /p:SetTFMForRestore=true</DotnetRestoreCommand>
</PropertyGroup>
<Exec Command="$(DotnetRestoreCommand)"/>
</Target>
<!-- Override RestorePackages from dir.traversal.targets and do a batch restore -->
......
......@@ -4,7 +4,7 @@
<!-- This file contains common build properties for projects under
the test tree, and also generated test projects in
bin/tests. It currently has only those properties that are
shared between buildtools test projects and SDK-style test
shared between old-style test projects and SDK-style test
projects. Eventually every test project should build using the
SDK. Some test projects still bypass this by importing
tests/dir.props directly - these should eventually go away. -->
......
......@@ -7,43 +7,15 @@
<UseSharedCompilation>true</UseSharedCompilation>
</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.
It also breaks building any C# project with dotnet.exe on Windows. The windows version of BuildTools doesn't appear to download the .NET Core
Roslyn NuGet package which has a Csc task supporting OverrideToolHost, but the default BuildTools CSharpCore targets file does specify
OverrideToolHost. The result is that building anything in C# when RunningOnCore=true on Windows fails in Csc task with a parameter not supported error.
Given that the Windows Core scenario is pretty broken on BuildTools it is currently configured not to use BuildTools at all. This allows ad-hoc usage
of the dotnet tool to work in the test tree as a developer convenience. Its not clear that we should invest in improving BuildTools Core support and
instead we could just move to using dotnet officially.
-->
<PropertyGroup>
<RunningOnCore>false</RunningOnCore>
<RunningOnCore Condition="'$(MSBuildRuntimeType)' == 'core'">true</RunningOnCore>
<BuildToolsTargetsDesktop>false</BuildToolsTargetsDesktop>
<BuildToolsTargetsDesktop Condition="'$(RunningOnCore)' != 'true'">true</BuildToolsTargetsDesktop>
<BuildToolsTargets45>$(BuildToolsTargetsDesktop)</BuildToolsTargets45>
<PropertyGroup>
<RunningOnUnix Condition="('$(RunningOnUnix)' == '') And ('$(MSBuildRuntimeType)' == 'Core') And ('$(OS)'!='Windows_NT')">true</RunningOnUnix>
<UseBuildTools>true</UseBuildTools>
</PropertyGroup>
<!-- Common repo directories -->
<PropertyGroup>
<CopyNuGetImplementations Condition="'$(CopyNuGetImplementations)'==''">false</CopyNuGetImplementations>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<SourceDir>$(ProjectDir)src\</SourceDir>
<PackagesDir>$(ProjectDir)..\.packages\</PackagesDir>
<ToolsDir Condition="'$(ToolsDir)'==''">$(ProjectDir)..\Tools\</ToolsDir>
<DotnetCliPath Condition="'$(DotnetCliPath)'==''">$(ProjectDir)..\.dotnet\</DotnetCliPath>
<BuildToolsTaskDir Condition="'$(BuildToolsTargets45)' == 'true'">$(ToolsDir)net46\</BuildToolsTaskDir>
<OverrideToolHost Condition="'$(OS)' != 'Windows_NT'">$(DotnetCliPath)dotnet</OverrideToolHost>
<!-- We don't use any of MSBuild's resolution logic for resolving the framework, so just set these two properties to any folder that exists to skip
the GenerateReferenceAssemblyPaths task (not target) and to prevent it from outputting a warning (MSB3644). -->
<_TargetFrameworkDirectories Condition="'$(BuildToolsTargetsDesktop)' != 'true'">$(MSBuildThisFileDirectory)/Documentation</_TargetFrameworkDirectories>
<_FullFrameworkReferenceAssemblyPaths Condition="'$(BuildToolsTargetsDesktop)' != 'true'">$(MSBuildThisFileDirectory)/Documentation</_FullFrameworkReferenceAssemblyPaths>
<ExcludeSigningImport>true</ExcludeSigningImport>
</PropertyGroup>
<!-- Common properties -->
......@@ -59,14 +31,6 @@
<AltJitArch>$(__AltJitArch)</AltJitArch>
</PropertyGroup>
<!-- Default Test platform to deploy the netstandard compiled tests to -->
<PropertyGroup>
<!-- we default TestTFM and FilterToTestTFM to netcoreapp1.0 if they are not explicity defined -->
<DefaultTestTFM Condition="'$(DefaultTestTFM)'==''">netcoreapp1.0</DefaultTestTFM>
<TestTFM Condition="'$(TestTFM)'==''">$(DefaultTestTFM)</TestTFM>
<FilterToTestTFM Condition="'$(FilterToTestTFM)'==''">$(DefaultTestTFM)</FilterToTestTFM>
</PropertyGroup>
<!-- Output paths -->
<PropertyGroup>
<!-- When not using the SKD, we want to set this property here so
......@@ -81,9 +45,6 @@
<TargetingPackPath Condition="'$(BaseTargetingPackPath)' == ''">$(RootBinDir)TargetingPack\</TargetingPackPath>
</PropertyGroup>
<!-- Import Build tools common props file where repo-independent properties are found -->
<Import Condition="Exists('$(ToolsDir)Build.Common.props') And '$(UseBuildTools)'=='true'" Project="$(ToolsDir)Build.Common.props" />
<!-- Provides properties for dependency versions and configures dependency verification/auto-upgrade. -->
<Import Project="$(ProjectDir)..\dependencies.props" />
......@@ -99,9 +60,6 @@
</RestoreSources>
</PropertyGroup>
<!-- Use Roslyn Compilers to build -->
<Import Project="$(RoslynPropsFile)" Condition="Exists('$(RoslynPropsFile)')" />
<PropertyGroup Condition="'$(BuildAllProjects)'=='true'">
<!-- When we do a traversal build we get all packages up front, don't restore them again -->
<RestorePackages>false</RestorePackages>
......
......@@ -3,7 +3,7 @@
<!-- This file contains build properties that apply only to
SDK-style test projects. Properties that are shared between SDK
and buildtools projects should go in dir.common.props. -->
and old-style projects should go in dir.common.props. -->
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
......@@ -11,9 +11,6 @@
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<EnableDefaultItems>false</EnableDefaultItems>
<Platform>$(BuildArch)</Platform>
<!-- Force the CLI to allow us to target higher netcoreapp than it may know about -->
<NETCoreAppMaximumVersion>99.0</NETCoreAppMaximumVersion>
<!-- [ARCADE REMOVE] This line should be removed we use the Arcade Sdk. -->
<DeterministicSourcePaths>false</DeterministicSourcePaths>
......
<?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>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- 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" />
</Project>
<Import Project="disableversioncheck.targets" />
</Project>
<Project>
<Target Name="DisableNETCoreVersionCheck"
BeforeTargets="_CheckForUnsupportedNETCoreVersion">
<!-- Force the CLI to allow us to target higher netcoreapp than it may know about -->
<PropertyGroup>
<NETCoreAppMaximumVersion>99.0</NETCoreAppMaximumVersion>
</PropertyGroup>
</Target>
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<UsingTask TaskName="PrereleaseResolveNuGetPackageAssets" AssemblyFile="$(BuildToolsTaskDir)Microsoft.DotNet.Build.Tasks.dll"/>
<ItemGroup>
<TestTargetFramework Include=".NETCoreApp,Version=v5.0">
<Folder>netcoreapp5.0</Folder>
......@@ -9,7 +8,6 @@
</ItemGroup>
<PropertyGroup>
<!-- defined in buildtools packaging.targets, but we need this before targets are imported -->
<PackagePlatform Condition="'$(PackagePlatform)' == ''">$(__BuildArch)</PackagePlatform>
<PackagePlatform Condition="'$(PackagePlatform)' == 'amd64'">x64</PackagePlatform>
<MinOSForArch>win7</MinOSForArch>
......@@ -18,8 +16,11 @@
</PropertyGroup>
<ItemGroup>
<CoreRootProjectLockJsonFiles Include="$(SourceDir)Common\test_runtime\obj\project.assets.json"/>
<CoreRootProjectLockJsonFiles Include="$(SourceDir)Common\test_dependencies\obj\project.assets.json"/>
<!-- These projects are individually restored in order. Each
subsequent restore only copies files that don't already exist
in CORE_ROOT, so assets from the first project file win. -->
<CoreRootProjectFiles Include="$(SourceDir)Common\test_dependencies\test_dependencies.csproj" />
<CoreRootProjectFiles Include="$(SourceDir)Common\test_runtime\test_runtime.csproj" />
</ItemGroup>
<ItemGroup>
......@@ -39,122 +40,10 @@
<RefDestination>$(ProductDestination)\ref</RefDestination>
</PropertyGroup>
<Target Name="CopyDependencyToCoreRoot"
Inputs="@(CoreRootProjectLockJsonFiles)"
Outputs="$(CORE_ROOT)\*.*">
<!-- This will use the overridden PrereleaseResolveNuGetPackageAssets, which outputs copy local items
for the xunit wrapper projects -->
<PrereleaseResolveNuGetPackageAssets AllowFallbackOnTargetSelection="false"
IncludeFrameworkReferences="false"
NuGetPackagesDirectory="$(PackagesDir)"
RuntimeIdentifier="$(TargetRid)"
ProjectLanguage="$(Language)"
ProjectLockFile="%(CoreRootProjectLockJsonFiles.Identity)"
TargetMonikers="@(TestTargetFramework)">
<Output TaskParameter="ResolvedAnalyzers" ItemName="Analyzer" />
<Output TaskParameter="ResolvedReferences" ItemName="Reference" />
<Output TaskParameter="ResolvedCopyLocalItems" ItemName="RunTimeCopyLocal" />
</PrereleaseResolveNuGetPackageAssets>
<ItemGroup>
<RunTimeDependecyExclude Include="$(CORE_ROOT)\**\*.*" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName)%(Extension)')" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName).ni%(Extension)')" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName).pdb')" />
<AllResolvedRuntimeDependencies Include="@(RunTimeCopyLocal -> '%(FileName)%(Extension)')">
<File>%(Identity)</File>
</AllResolvedRuntimeDependencies>
<RunTimeDependecyCopyLocalFile Include="@(AllResolvedRuntimeDependencies)" Exclude="@(RunTimeDependecyExcludeFiles)"/>
<RunTimeDependecyCopyLocal Include="@(RunTimeDependecyCopyLocalFile -> '%(File)')" />
<RunTimeDependecyCopyLocal Include="$(TargetingPackPath)/*" />
</ItemGroup>
<Copy
SourceFiles="@(RunTimeDependecyCopyLocal)"
DestinationFolder="$(CORE_ROOT)"
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForCopyFilesToOutputDirectoryIfPossible)">
<Output TaskParameter="DestinationFiles" ItemName="FileWrites" />
</Copy>
</Target>
<Target Name="CopyDependencyToRef"
Inputs="@(RefProjectLockJsonFiles)"
Outputs="$(RefDestination)\*.*">
<!-- This will use the overridden PrereleaseResolveNuGetPackageAssets, which outputs copy local items
for the xunit wrapper projects -->
<PrereleaseResolveNuGetPackageAssets AllowFallbackOnTargetSelection="true"
IncludeFrameworkReferences="false"
NuGetPackagesDirectory="$(PackagesDir)"
RuntimeIdentifier="$(TargetRid)"
ProjectLanguage="$(Language)"
ProjectLockFile="%(RefProjectLockJsonFiles.Identity)"
TargetMonikers="@(TestTargetFramework)">
<Output TaskParameter="ResolvedAnalyzers" ItemName="RefAnalyzer" />
<Output TaskParameter="ResolvedReferences" ItemName="RefReference" />
<Output TaskParameter="ResolvedCopyLocalItems" ItemName="RefRunTimeCopyLocal" />
</PrereleaseResolveNuGetPackageAssets>
<Copy
SourceFiles="@(RefRunTimeCopyLocal)"
DestinationFolder="$(RefDestination)"
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForCopyFilesToOutputDirectoryIfPossible)">
<Output TaskParameter="DestinationFiles" ItemName="FileWrites" />
</Copy>
</Target>
<Target Name="CopyDependencyToProduct"
Inputs="@(ProductProjectLockJsonFiles)"
Outputs="$(ProductDestination)\*.*">
<!-- This will use the overridden PrereleaseResolveNuGetPackageAssets, which outputs copy local items
for the xunit wrapper projects -->
<PrereleaseResolveNuGetPackageAssets AllowFallbackOnTargetSelection="true"
IncludeFrameworkReferences="false"
NuGetPackagesDirectory="$(PackagesDir)"
RuntimeIdentifier="$(TargetRid)"
ProjectLanguage="$(Language)"
ProjectLockFile="%(ProductProjectLockJsonFiles.Identity)"
TargetMonikers="@(TestTargetFramework)">
<Output TaskParameter="ResolvedAnalyzers" ItemName="RefAnalyzer" />
<Output TaskParameter="ResolvedReferences" ItemName="RefReference" />
<Output TaskParameter="ResolvedCopyLocalItems" ItemName="RefRunTimeCopyLocal" />
</PrereleaseResolveNuGetPackageAssets>
<Copy
SourceFiles="@(RefRunTimeCopyLocal)"
DestinationFolder="$(ProductDestination)"
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForCopyFilesToOutputDirectoryIfPossible)">
<Output TaskParameter="DestinationFiles" ItemName="FileWrites" />
</Copy>
</Target>
<Target Name="CopyCrossgenToProduct"
AfterTargets="CopyDependencyToProduct"
Outputs="$(ProductDestination)\crossgen.exe;$(CORE_OVERLAY)\crossgen.exe">
<Copy
SourceFiles="@(CrossGenFiles)"
DestinationFolder="$(ProductDestination)"
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForCopyFilesToOutputDirectoryIfPossible)">
<Output TaskParameter="DestinationFiles" ItemName="FileWrites" />
</Copy>
<Target Name="CopyDependencyToCoreRoot">
<MSBuild Projects="@(CoreRootProjectFiles)"
Targets="CopyDependencyToCoreRoot"
Properties="Language=C#;RuntimeIdentifier=$(TargetRid)" />
</Target>
......
......@@ -373,7 +373,7 @@ namespace $([System.String]::Copy($(Category)).Replace(".","_").Replace("\","").
<Target Name="CreateTestOverlay">
<MSBuild Projects="$(MSBuildProjectFile)"
Targets="CopyDependencyToCoreRoot"
Properties="Language=C#;TargetRid=$(TargetRid)" />
Properties="Language=C#;TargetRid=$(TargetRid);RuntimeIdentifier=$(TargetRid)" />
</Target>
<!--
......@@ -381,36 +381,9 @@ namespace $([System.String]::Copy($(Category)).Replace(".","_").Replace("\","").
-->
<Target Name="CreateTestHost">
<MSBuild Projects="$(MSBuildThisFileDirectory)src\Common\CoreFX\CoreFX.depproj"
Targets="Build;SetupTestingHost"
<MSBuild Projects="$(MSBuildThisFileDirectory)src\Common\CoreFX\CoreFX.csproj"
Targets="SetupTestingHost"
Properties="OutputPath=$(NETCoreAppTestSharedFrameworkPath)" />
<MSBuild Projects="$(MSBuildProjectFile)"
Targets="GenerateTestSharedFrameworkDepsFile"/>
</Target>
<UsingTask TaskName="GenerateDepsJson" AssemblyFile="$(BuildToolsTaskDir)Microsoft.DotNet.Build.Tasks.dll"/>
<!-- After we copied all the framework libraries we need to generate a deps.json file for the shared test framework -->
<Target Name="GenerateTestSharedFrameworkDepsFile">
<ItemGroup>
<!-- This is for HostPolicy, CoreCLR and Jit dependencies to continue to remain inside of the dep.json -->
<ExceptionForDepsJson Include="microsoft.netcore.app" />
<!-- TODO: We should see about generating this from scratch instead of relying on a previous deps file as a template -->
<_sharedFrameworkDepsJson Include="$(DotnetCliPath)\shared\Microsoft.NETCore.App\*\Microsoft.NETCore.App.deps.json" />
</ItemGroup>
<PropertyGroup>
<_OriginalDepsJsonPath>%(_sharedFrameworkDepsJson.FullPath)</_OriginalDepsJsonPath>
<_OutputTestSharedFrameworkDepsPath>$(NETCoreAppTestSharedFrameworkPath)\Microsoft.NETCore.App.deps.json</_OutputTestSharedFrameworkDepsPath>
</PropertyGroup>
<GenerateDepsJson DepsJsonPath="$(_OriginalDepsJsonPath)"
GenerateNewDepsJson="true"
RuntimeDirectory="$(NETCoreAppTestSharedFrameworkPath)"
DepsExceptions="@(ExceptionForDepsJson)"
OutputPath="$(_OutputTestSharedFrameworkDepsPath)"/>
</Target>
<Target Name="Build">
......
......@@ -1457,8 +1457,7 @@ def setup_core_root(host_os,
if host_os != "Windows_NT":
os.environ["__DistroRid"] = "%s-%s" % ("osx" if sys.platform == "darwin" else "linux", arch)
command = [dotnetcli_location, "msbuild", "/nologo", "/verbosity:minimal", "/clp:Summary",
"\"/l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log\""]
command = [dotnetcli_location, "msbuild", "/nologo", "/verbosity:minimal", "/clp:Summary"]
if host_os == "Windows_NT":
command += ["/nodeReuse:false"]
......@@ -1522,8 +1521,7 @@ def setup_core_root(host_os,
os.environ["Core_Root"] = core_root
os.environ["xUnitTestBinBase"] = os.path.dirname(os.path.dirname(core_root))
command = [dotnetcli_location, "msbuild", "/nologo", "/verbosity:minimal", "/clp:Summary",
"\"/l:BinClashLogger,Tools/Microsoft.DotNet.Build.Tasks.dll;LogFile=binclash.log\""]
command = [dotnetcli_location, "msbuild", "/nologo", "/verbosity:minimal", "/clp:Summary"]
if host_os == "Windows_NT":
command += ["/nodeReuse:false"]
......
......@@ -24,9 +24,6 @@
<PropertyGroup>
<TargetFramework>netstandard1.3</TargetFramework>
<TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
<RuntimeIdentifiers>win7-x86;win7-x64</RuntimeIdentifiers>
<IsTestProject>false</IsTestProject>
</PropertyGroup>
......
......@@ -52,16 +52,10 @@ REM === Check if dotnet CLI and necessary directories exist
REM ===
REM =========================================================================================
set __DotNetToolDir=%__ThisScriptPath%..\Tools
set __DotNetCmd=%__ThisScriptPath%..\dotnet.cmd
set __PackageDir=%__ThisScriptPath%..\.packages
set __CsprojPath=%__ThisScriptPath%\src\Common\stress_dependencies\stress_dependencies.csproj
REM Check if dotnet cli exists
if not exist "%__DotNetToolDir%" (
echo Directory containing dotnet CLI does not exist: %__DotNetToolDir%
goto Fail
)
if not exist "%__DotNetCmd%" (
echo dotnet.exe does not exist: %__DotNetCmd%
goto Fail
......
......@@ -90,9 +90,6 @@ fi
# This script must be located in coreclr/tests.
scriptDir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
echo "Running init-tools.sh"
"${scriptDir}"/../init-tools.sh
dotnet=$"${scriptDir}"/../.dotnet/dotnet
packageDir="${scriptDir}"/../.packages
csprojPath="${scriptDir}"/src/Common/stress_dependencies/stress_dependencies.csproj
......
......@@ -281,8 +281,8 @@ $(BashLinkerTestCleanupCmds)
]]></BashCLRTestLaunchCmds>
<BashCLRTestLaunchCmds Condition="'$(CLRTestKind)' == 'RunOnly'"><![CDATA[
$(BashCLRTestLaunchCmds)
echo export CDPATH="$%28dirname "$0")"
export CDPATH="$%28dirname "$0")"
echo export CDPATH="$%28dirname "${BASH_SOURCE[0]}")"
export CDPATH="$%28dirname "${BASH_SOURCE[0]}")"
echo /usr/bin/env bash $(InputAssemblyName) %24(printf "'%s' " "${CLRTestExecutionArguments[@]}")
/usr/bin/env bash $(InputAssemblyName) "${CLRTestExecutionArguments[@]}"
CLRTestExitCode=$?
......@@ -371,7 +371,7 @@ ReleaseLock()
return 3
fi
}
cd "$%28dirname "$0")"
cd "$%28dirname "${BASH_SOURCE[0]}")"
LockFile="lock"
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<AssemblyName>TestLibrary</AssemblyName>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{C8C0DC74-FAC4-45B1-81FE-70C4808366E0}</ProjectGuid>
<OutputType>Library</OutputType>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
<CLRTestKind>BuildOnly</CLRTestKind>
<DefineConstants>$(DefineConstants);$([System.String]::Copy('$(BuildArch)').ToUpper())</DefineConstants>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<GenerateRunScript>false</GenerateRunScript>
</PropertyGroup>
<!-- Default configurations to help VS understand the configurations -->
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<!-- Tests build for netcoreapp3.0, but use the test_dependencies
assets file, which has netcoreapp5.0 assets. Therefore the
assets file for this project must have netcoreapp5.0 assets,
but the project needs to build for 3.0. -->
<TargetFramework Condition=" '$(SetTFMForRestore)' == 'true' ">netcoreapp5.0</TargetFramework>
<ProjectAssetsFile>$(SourceDir)Common\CoreCLRTestLibrary\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
<ItemGroup>
<CodeAnalysisDependentAssemblyPaths Condition=" '$(VS100COMNTOOLS)' != '' " Include="$(VS100COMNTOOLS)..\IDE\PrivateAssemblies">
......@@ -34,5 +28,10 @@
<Compile Include="HostPolicyMock.cs" />
<Compile Include="XPlatformUtils.cs" />
</ItemGroup>
<!-- This project depends on properties pulled in by dir.targets,
which isn't usually imported for the tests/src/Common
projects. -->
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project>
<Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
<PropertyGroup>
<RestoreOutputPath>$(SourceDir)Common\CoreFX\obj</RestoreOutputPath>
<Language>C#</Language>
<NugetTargetMoniker>.NETCoreApp,Version=v5.0</NugetTargetMoniker>
<TargetFramework>netcoreapp5.0</TargetFramework>
<ContainsPackageReferences>true</ContainsPackageReferences>
<TargetFramework>netcoreapp3.0</TargetFramework>
<CLRTestKind>SharedLibrary</CLRTestKind>
<IsTestProject>false</IsTestProject>
<MicrosoftDiagnosticsRuntimePackageVersion>1.0.5</MicrosoftDiagnosticsRuntimePackageVersion>
<OutputType>Library</OutputType>
<SelfContained>true</SelfContained>
<ProjectDepsFileName>Microsoft.NETCore.App.deps.json</ProjectDepsFileName>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<IncludeMainProjectInDepsFile>false</IncludeMainProjectInDepsFile>
<NuGetTargetMoniker>.NETCoreApp,Version=v3.0</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netcoreapp3.0</NuGetTargetMonikerShort>
<GenerateDependencyFile>true</GenerateDependencyFile>
<RuntimeFrameworkVersion>$(MicrosoftNETCoreAppVersion)</RuntimeFrameworkVersion>
</PropertyGroup>
<!-- Switch RuntimeIdentifier according to currently targeted OSGroup -->
<PropertyGroup>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'Windows_NT'">win-$(Platform)</RuntimeIdentifier>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'Linux'">linux-$(Platform)</RuntimeIdentifier>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'OSX'">osx-$(Platform)</RuntimeIdentifier>
<NugetRuntimeIdentifier>$(RuntimeIdentifier)</NugetRuntimeIdentifier>
<!-- Set AdditionalRestoreArgs so the _DnuRestoreCommandFull in Tools\packageresolve.targets
passes these on to 'dotnet restore'. This is needed so all the various dirs.props files
set up the target architecture correctly, so $(Platform) above gets set correctly, among
other things. (Note that _DnuRestoreCommandFull doesn't properly set
TargetGroup/ConfigurationGroup/ArchGroup, and even if they are set, it isn't used by
the various dirs.props files.)
-->
<AdditionalRestoreArgs>/p:__BuildOS=$(__BuildOS) /p:__BuildType=$(__BuildType) /p:__BuildArch=$(__BuildArch)</AdditionalRestoreArgs>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'Windows_NT'">win-$(Platform)</RuntimeIdentifier>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'Linux'">linux-$(Platform)</RuntimeIdentifier>
<RuntimeIdentifier Condition="'$(OSGroup)' == 'OSX'">osx-$(Platform)</RuntimeIdentifier>
</PropertyGroup>
<ItemGroup>
<!-- Microsoft.Private.CoreFx.OOB is a meta-package that contains references to most of what we need -->
<PackageReference Include="Microsoft.Private.CoreFx.OOB" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
......@@ -43,13 +40,19 @@
<!-- hostpolicy.dll -->
<PackageReference Include="Microsoft.NETCore.DotNetHostPolicy" Version="$(MicrosoftNETCoreAppVersion)" />
<KnownFrameworkReference Remove="Microsoft.AspNetCore.App" />
</ItemGroup>
<!-- Target SetupTestingHost needs to run after "AfterResolveReferences" so @(ReferenceCopyLocalPaths) is
set up, and before "BeforeCompile" because @(ReferenceCopyLocalPaths) is cleared out during the
compile phase.
-->
<Target Name="SetupTestingHost" AfterTargets="AfterResolveReferences" BeforeTargets="BeforeCompile">
<Target Name="SetupTestingHost" DependsOnTargets="ResolveAssemblyReferences">
<MSBuild Projects="$(MSBuildProjectFile)"
Targets="Publish"
Properties="RuntimeIdentifier=$(RuntimeIdentifier);PublishDir=$(NETCoreAppTestSharedFrameworkPath)" />
<Error Condition="'$(CORE_ROOT)' == ''"
Text="CORE_ROOT variable is not set." />
......@@ -129,9 +132,16 @@
<Exec Command="chmod +x $(TestHostRootPath)%(DotnetExe.Filename)%(DotnetExe.Extension)" Condition="'$(OSGroup)' != 'Windows_NT'"/>
</Target>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<PropertyGroup>
<ProjectAssetsFile>$(SourceDir)Common\CoreFX\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
<Target Name="CoreCompile">
<ItemGroup>
<IntermediateAssembly Remove="@(IntermediateAssembly)" />
</ItemGroup>
</Target>
</Project>
<Project>
<Import Project="$([MSBuild]::GetPathOfFileAbove('dependencies.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Project="$([MSBuild]::GetPathOfFileAbove('dir.sdkbuild.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<ProjectAssetsFile>$(SourceDir)Common\Coreclr.TestWrapper\obj\project.assets.json</ProjectAssetsFile>
<NuGetTargetMoniker>.NETCoreApp,Version=v3.0</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netcoreapp3.0</NuGetTargetMonikerShort>
</PropertyGroup>
<ItemGroup>
<Compile Include="CoreclrTestWrapperLib.cs" />
</ItemGroup>
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.targets" />
</Project>
<Project>
<!--
Common files don't take part in the root tests\src\Directory.Build.props
This file prevents them from including it as it gets included in its place
If they ever need to take part, we can conditionally include them as documented
here https://docs.microsoft.com/en-us/visualstudio/msbuild/customize-your-build#directorybuildprops-and-directorybuildtargets
-->
</Project>
\ No newline at end of file
<Project>
<!--
<!--
Common files don't take part in the root tests\src\Directory.Build.targets
This file prevents them from including it as it gets included in its place
If they ever need to take part, we can conditionally include them as documented
here https://docs.microsoft.com/en-us/visualstudio/msbuild/customize-your-build#directorybuildprops-and-directorybuildtargets
-->
</Project>
\ No newline at end of file
<Import Project="$([MSBuild]::GetPathOfFileAbove('disableversioncheck.targets', '$(MSBuildThisFileDirectory)../'))" />
<Target Name="CopyDependencyToCoreRoot"
DependsOnTargets="ResolveAssemblyReferences">
<ItemGroup>
<RunTimeDependecyExclude Include="$(CORE_ROOT)\**\*.*" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName)%(Extension)')" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName).ni%(Extension)')" />
<RunTimeDependecyExcludeFiles Include="@(RunTimeDependecyExclude -> '%(FileName).pdb')" />
<AllResolvedRuntimeDependencies Include="@(RuntimeCopyLocalItems -> '%(FileName)%(Extension)');@(NativeCopyLocalItems -> '%(FileName)%(Extension)')">
<File>%(Identity)</File>
</AllResolvedRuntimeDependencies>
<RunTimeDependecyCopyLocalFile Include="@(AllResolvedRuntimeDependencies)" Exclude="@(RunTimeDependecyExcludeFiles)"/>
<RunTimeDependecyCopyLocal Include="@(RunTimeDependecyCopyLocalFile -> '%(File)')" />
<RunTimeDependecyCopyLocal Include="$(TargetingPackPath)/*" />
</ItemGroup>
<Copy
SourceFiles="@(RunTimeDependecyCopyLocal)"
DestinationFolder="$(CORE_ROOT)"
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
Retries="$(CopyRetryCount)"
RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)"
UseHardlinksIfPossible="$(CreateHardLinksForCopyFilesToOutputDirectoryIfPossible)">
<Output TaskParameter="DestinationFiles" ItemName="FileWrites" />
</Copy>
</Target>
</Project>
......@@ -27,10 +27,7 @@
<PropertyGroup>
<TargetFramework>netcoreapp5.0</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project>
<Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
<!-- This project places dlls from packagereferences into the
targeting pack folder, where they are referenced directly (via
"Reference") by the test projects. They are also copied into
the CORE_ROOT when running tests. -->
<PropertyGroup>
<!-- Given that xunit packages bring with them part of the framework, we need to specify a runtime in order to get the assets
This RID value doesn't really matter, since the assets we are copying are not RID specific, so defaulting to Windows here
-->
<RestoreOutputPath>$(MSBuildThisFileDirectory)obj</RestoreOutputPath>
<Language>C#</Language>
<NugetTargetMoniker>.NETCoreApp,Version=v1.1</NugetTargetMoniker>
<NugetTargetMonikerShort>netcoreapp1.1</NugetTargetMonikerShort>
<NugetRuntimeIdentifier>win7-x64</NugetRuntimeIdentifier>
<ContainsPackageReferences>true</ContainsPackageReferences>
<OutputPath>$(TargetingPackPath)</OutputPath>
<TargetFramework>netcoreapp3.0</TargetFramework>
<NuGetTargetMoniker>.NETCoreApp,Version=v3.0</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netcoreapp3.0</NuGetTargetMonikerShort>
<RuntimeIdentifiers>win7-x86;win7-x64</RuntimeIdentifiers>
<XUnitRunnerPackageId>xunit.runner.console</XUnitRunnerPackageId>
<XUnitRunnerTargetFramework>netcoreapp2.0</XUnitRunnerTargetFramework>
<CLRTestKind>SharedLibrary</CLRTestKind>
<IsTestProject>false</IsTestProject>
<GenerateDependencyFile>false</GenerateDependencyFile>
<GenerateRuntimeConfigurationFiles>false</GenerateRuntimeConfigurationFiles>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<NoWarn>$(NoWarn);NU1701</NoWarn>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.Compilers">
<Version>1.1.1</Version>
</PackageReference>
<PackageReference Include="CommandLineParser">
<Version>2.1.1-beta</Version>
</PackageReference>
<PackageReference Include="xunit.performance.api">
<Version>$(XunitPerformanceApiPackageVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.performance.core">
<Version>$(XunitPerformanceApiPackageVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.performance.execution">
<Version>$(XunitPerformanceApiPackageVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.performance.metrics">
<Version>$(XunitPerformanceApiPackageVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.Diagnostics.Tracing.TraceEvent">
<Version>$(MicrosoftDiagnosticsTracingTraceEventPackageVersion)</Version>
</PackageReference>
<PackageReference Include="Newtonsoft.Json">
<Version>12.0.1</Version>
</PackageReference>
<PackageReference Include="xunit">
<Version>$(XunitPackageVersion)</Version>
</PackageReference>
<PackageReference Include="$(XUnitRunnerPackageId)">
<Version>$(XunitPackageVersion)</Version>
</PackageReference>
<PackageReference Include="xunit.runner.utility">
<Version>$(XunitPackageVersion)</Version>
</PackageReference>
</ItemGroup>
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win7-x86;win7-x64</RuntimeIdentifiers>
</PropertyGroup>
<!-- Some out-of-band packages like System.ComponentModel.Primitives
conflict with the versions in other test dependencies files. We
don't want to overwrite these versions when creating the
CORE_ROOT. This logic prevents filters out such conflicts. -->
<Target Name="FilterNugetPackages"
AfterTargets="ResolveAssemblyReferences"
Condition="'@(PackageToInclude)' != ''">
<ItemGroup>
<_nuGetDeploy Include="@(ReferenceCopyLocalPaths)">
<OriginalItemSpec>%(Identity)</OriginalItemSpec>
</_nuGetDeploy>
<_nuGetDeployByPackageId Include="@(_nuGetDeploy->'%(NuGetPackageId)')" />
<_nuGetDeployByPackageIdToRemove Include="@(_nuGetDeployByPackageId)" Exclude="@(PackageToInclude)" Condition="'@(PackageToInclude)' != ''" />
<_filteredNuGetDeployByPackageId Include="@(_nuGetDeployByPackageId)" Exclude="@(_nuGetDeployByPackageIdToRemove)" />
<ReferenceCopyLocalPaths Remove="@(ReferenceCopyLocalPaths)" />
<ReferenceCopyLocalPaths Include="@(_filteredNuGetDeployByPackageId->'%(OriginalItemSpec)')" />
</ItemGroup>
</Target>
<ItemGroup>
<PackageToInclude Include="xunit.abstractions"/>
<PackageToInclude Include="xunit.assert"/>
......@@ -75,9 +70,19 @@
<PackageToInclude Include="Microsoft.CodeAnalysis.CSharp"/>
<PackageToInclude Include="Microsoft.CodeAnalysis.VisualBasic"/>
<PackageToInclude Include="CommandLineParser"/>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<PackageReference Include="Microsoft.CodeAnalysis.Compilers" Version="1.1.1" />
<PackageReference Include="CommandLineParser" Version="2.1.1-beta" />
<PackageReference Include="xunit.performance.api" Version="$(XunitPerformanceApiPackageVersion)" />
<PackageReference Include="xunit.performance.core" Version="$(XunitPerformanceApiPackageVersion)" />
<PackageReference Include="xunit.performance.execution" Version="$(XunitPerformanceApiPackageVersion)" />
<PackageReference Include="xunit.performance.metrics" Version="$(XunitPerformanceApiPackageVersion)" />
<PackageReference Include="Microsoft.Diagnostics.Tracing.TraceEvent" Version="$(MicrosoftDiagnosticsTracingTraceEventPackageVersion)" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
<PackageReference Include="xunit" Version="$(XunitPackageVersion)" />
<PackageReference Include="$(XUnitRunnerPackageId)" Version="$(XunitPackageVersion)" />
<PackageReference Include="xunit.runner.utility" Version="$(XunitPackageVersion)" />
</ItemGroup>
<PropertyGroup>
<ProjectAssetsFile>$(SourceDir)Common\external\obj\project.assets.json</ProjectAssetsFile>
......@@ -97,5 +102,14 @@
<NuGetPackageVersion>$(XUnitPackageVersion)</NuGetPackageVersion>
</ReferenceCopyLocalPaths>
</ItemGroup>
</Target>
</Target>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
<Target Name="CoreCompile">
<ItemGroup>
<IntermediateAssembly Remove="@(IntermediateAssembly)" />
</ItemGroup>
</Target>
</Project>
<Project Sdk="Microsoft.NET.Sdk.IL">
<!-- This project exists to restore ilasm and ildasm, which are
needed by the IL SDK. -->
<PropertyGroup>
<RuntimeIdentifier>$(TargetRid)</RuntimeIdentifier>
<ProjectAssetsFile>$(SourceDir)Common\ilasm\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk" >
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<CLRTestKind>BuildOnly</CLRTestKind>
<NugetTargetMoniker>.NETCoreApp,Version=v2.0</NugetTargetMoniker>
<NugetTargetMonikerShort>netcoreapp2.0</NugetTargetMonikerShort>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsTestProject>false</IsTestProject>
<RuntimeIdentifiers>win-x64;ubuntu.14.04-x64;osx.10.10-x64;win-x86;ubuntu.14.04-x86;osx.10.10-x86</RuntimeIdentifiers>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NETCore.CoreDisTools">
<Version>1.0.1-prerelease-*</Version>
</PackageReference>
</ItemGroup>
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50</PackageTargetFallback>
<RuntimeIdentifiers>win-x64;ubuntu.14.04-x64;osx.10.10-x64;win-x86;ubuntu.14.04-x86;osx.10.10-x86</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
DependsOnTargets="ResolveReferences" />
</Project>
\ No newline at end of file
......@@ -15,10 +15,7 @@
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<CLRTestKind>BuildOnly</CLRTestKind>
<NugetTargetMoniker>.NETCoreApp,Version=v5.0</NugetTargetMoniker>
<NugetTargetMonikerShort>netcoreapp5.0</NugetTargetMonikerShort>
<IsTestProject>false</IsTestProject>
<TargetFramework>netcoreapp3.0</TargetFramework>
<TargetFramework Condition="'$(SetTFMForRestore)'=='true'">netcoreapp5.0</TargetFramework>
<DisableRarCache>true</DisableRarCache>
<DisablePackageAssetsCache>true</DisablePackageAssetsCache>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Private.CoreFx.NETCoreApp">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="System.Runtime.CompilerServices.Unsafe">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="System.Security.Permissions">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="System.Diagnostics.EventLog">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="System.Drawing.Common">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="System.Runtime.Intrinsics.Experimental">
<Version>$(MicrosoftPrivateCoreFxNETCoreAppVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.Diagnostics.Tools.RuntimeClient">
<Version>$(MicrosoftDiagnosticsToolsRuntimeClientVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.Private.CoreFx.NETCoreApp" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="System.Security.Permissions" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="System.Diagnostics.EventLog" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="System.Drawing.Common" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="System.Runtime.Intrinsics.Experimental" Version="$(MicrosoftPrivateCoreFxNETCoreAppVersion)" />
<PackageReference Include="Microsoft.Diagnostics.Tools.RuntimeClient" Version="$(MicrosoftDiagnosticsToolsRuntimeClientVersion)" />
</ItemGroup>
<Target Name="Build" DependsOnTargets="$(TraversalBuildDependsOn)" />
<PropertyGroup>
<TargetFramework>netcoreapp5.0</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;netcoreapp1.1;portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
<ProjectAssetsFile>$(SourceDir)Common\test_dependencies\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
DependsOnTargets="ResolveReferences" />
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<CLRTestKind>BuildOnly</CLRTestKind>
<NugetTargetMoniker>.NETCoreApp,Version=v5.0</NugetTargetMoniker>
<NugetTargetMonikerShort>netcoreapp5.0</NugetTargetMonikerShort>
<IsTestProject>false</IsTestProject>
<TargetFramework>netcoreapp3.0</TargetFramework>
<TargetFramework Condition="'$(SetTFMForRestore)'=='true'">netcoreapp5.0</TargetFramework>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<AssetTargetFallback>$(AssetTargetFallback);dnxcore50;netcoreapp1.1;portable-net45+win8</AssetTargetFallback>
<NoWarn>$(NoWarn);NU1603</NoWarn>
<DisableImplicitFrameworkReferences>true</DisableImplicitFrameworkReferences>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NETCore.Platforms">
<Version>$(MicrosoftNETCorePlatformsVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.DotNet.CoreCLR.TestDependencies">
<Version>1.0.0-prerelease</Version>
</PackageReference>
<PackageReference Include="jit-dasm">
<Version>0.0.1.4</Version>
</PackageReference>
<PackageReference Include="cijobs">
<Version>0.0.1.2</Version>
</PackageReference>
<PackageReference Include="jit-analyze">
<Version>0.0.1.1</Version>
</PackageReference>
<PackageReference Include="Microsoft.NETCore.Platforms" Version="$(MicrosoftNETCorePlatformsVersion)" />
<PackageReference Include="Microsoft.DotNet.CoreCLR.TestDependencies" Version="1.0.0-prerelease" NoWarn="NU1701" />
<PackageReference Include="jit-dasm" Version="0.0.1.4" />
<PackageReference Include="cijobs" Version="0.0.1.2" />
<PackageReference Include="jit-analyze" Version="0.0.1.1" />
</ItemGroup>
<Target Name="Build" DependsOnTargets="$(TraversalBuildDependsOn)" />
<PropertyGroup>
<TargetFramework>netcoreapp5.0</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
<ProjectAssetsFile>$(SourceDir)Common\test_runtime\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
DependsOnTargets="ResolveReferences" />
</Project>
......@@ -3,4 +3,7 @@
We include the dir.props for them here so they partake in the old
style of build without them needing to explicitly include anything -->
<Import Project="dir.props" Condition="'$(UsingMicrosoftNETSdk)' == 'true'" />
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
</Project>
......@@ -20,10 +20,7 @@
<PropertyGroup>
<TargetFramework>netcoreapp5.0</TargetFramework>
<TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;netcoreapp1.1;portable-net45+win8</PackageTargetFallback>
<RuntimeIdentifiers>win-arm;win-arm64;win-x64;win-x86;$(TargetRid)</RuntimeIdentifiers>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
......@@ -92,9 +92,6 @@
<PropertyGroup>
<TargetFramework>netstandard1.4</TargetFramework>
<TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
......@@ -89,9 +89,6 @@
<PropertyGroup>
<TargetFramework>netstandard1.4</TargetFramework>
<TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
......@@ -107,9 +107,6 @@
<PropertyGroup>
<TargetFramework>netstandard1.4</TargetFramework>
<TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
......
......@@ -120,6 +120,16 @@
<TargetRid Condition="'$(TargetRid)' == ''">$(TestNugetRuntimeId)</TargetRid>
</PropertyGroup>
<!-- The IL SDK adds a packagereference to the native ilasm package,
but does not detect musl or rhel, so we set the RID
ourselves. If we passed in a proper host RID from the build
scripts, we could also use that instead of relying on the IL
SDK RID detection. -->
<PropertyGroup>
<MicrosoftNetCoreIlasmPackageRuntimeId Condition=" '$(TargetRid)' == 'linux-musl-x64' ">$(TargetRid)</MicrosoftNetCoreIlasmPackageRuntimeId>
<MicrosoftNetCoreIlasmPackageRuntimeId Condition=" '$(TargetRid)' == 'rhel.6-x64' ">$(TargetRid)</MicrosoftNetCoreIlasmPackageRuntimeId>
</PropertyGroup>
<PropertyGroup>
<TargetsUnknownUnix Condition="'$(TargetsUnix)' == 'true' AND '$(OSGroup)' != 'FreeBSD' AND '$(OSGroup)' != 'Linux' AND '$(OSGroup)' != 'OSX'">true</TargetsUnknownUnix>
<Language Condition="'$(Language)' == '' and '$(MSBuildProjectExtension)' == '.csproj'">C#</Language>
......@@ -135,14 +145,13 @@
<PropertyGroup>
<ZapRequire Condition="'$(ZapRequire)' == ''">2</ZapRequire>
</PropertyGroup>
<PropertyGroup>
<RestoreOutputPath>$(MSBuildProjectDirectory)\obj</RestoreOutputPath>
<!-- Specify the target framework of the common test dependency project.json. -->
<NuGetTargetMoniker>.NETCoreApp,Version=v5.0</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netcoreapp5.0</NuGetTargetMonikerShort>
<PrereleaseResolveNuGetPackages>true</PrereleaseResolveNuGetPackages>
</PropertyGroup>
</Project>
......@@ -64,10 +64,6 @@
</ProjectReference>
</ItemGroup>
<PropertyGroup>
<ErrorIfBuildToolsRestoredFromIndividualProject Condition="!Exists('$(ToolsDir)')">true</ErrorIfBuildToolsRestoredFromIndividualProject>
</PropertyGroup>
<Import Project="..\dir.targets" />
<!-- Determine if this project should be built or not -->
......@@ -88,11 +84,6 @@
<!-- RunOnly projects have a special build for dependent projects -->
<Import Project="runonly.targets" Condition="'$(CLRTestKind)' == 'RunOnly'" />
<!-- We will use an imported build here in the instance that we're a non-sdk style project, have source that we need to build, and we are the correct priority...OR if we are being asked to build for
a test with a higher priority. -->
<Import Project="$(ToolsDir)Build.Common.targets" Condition="('$(UsingMicrosoftNETSdk)' != 'true') And ('$(CLRTestKind)'!='RunOnly') And $(_CLRTestCompilesSource) And ('$(_WillCLRTestProjectBuild)' == 'true')"/>
<Import Project="..\override.targets" Condition="Exists('..\override.targets')"/>
......
<Project ToolsVersion="12.0" DefaultTargets="Build" InitialTargets="VerifyBuildTools" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="dir.props" />
<Target Name="VerifyBuildTools"
Inputs="$(BuildToolsTargetInputs)"
Outputs="$(BuildToolsTargetOutputs)"
>
<Error Condition="!Exists('$(BuildToolsInstallSemaphore)')"
Text="The build tools have not been installed. Please run buildtest.cmd from the root of the repo at least once to get the tools installed." />
<!-- If we enter this target at all then the inputs are newer then the outputs so give a warning. -->
<Warning Text="Looks like there may be an update to the build tools. Please run buildtest.cmd from the root of the repo to refresh the build tools." />
</Target>
<Target Name="ResolveDisabledProjects" BeforeTargets="BuildAllProjects;CopyAllNativeTestProjectBinaries" >
<ItemGroup>
<DisabledProjects Include="TestWrappers*\**\*.csproj" />
......@@ -24,6 +13,7 @@
<DisabledProjects Include="Common\targeting_pack_ref\targeting_pack_ref.csproj" />
<DisabledProjects Include="Common\external\external.csproj" />
<DisabledProjects Include="Common\PerfHarness\PerfHarness.csproj" />
<DisabledProjects Include="Common\stress_dependencies\stress_dependencies.csproj" />
<DisabledProjects Include="GC\Performance\Framework\GCPerfTestFramework.csproj" />
<DisabledProjects Include="JIT\config\**" />
<DisabledProjects Include="Performance\performance.csproj" />
......@@ -31,6 +21,8 @@
<DisabledProjects Include="Loader\classloader\generics\regressions\DD117522\Test.csproj" />
<DisabledProjects Include="Loader\classloader\generics\GenericMethods\VSW491668.csproj" /> <!-- issue 5501 -->
<DisabledProjects Include="reflection\GenericAttribute\GenericAttributeTests.csproj" />
<DisabledProjects Include="Common\CoreFX\CoreFX.csproj" />
<DisabledProjects Include="Common\ilasm\ilasm.ilproj" />
</ItemGroup>
<ItemGroup>
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>
<Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
<OutputType>Exe</OutputType>
<TargetExt>.exe</TargetExt>
<CLRTestKind>BuildOnly</CLRTestKind>
</PropertyGroup>
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<AssemblyName>LinkBench</AssemblyName>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{507E3CC2-5D95-414D-9F01-2A106FC177DC}</ProjectGuid>
<OutputType>exe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
<NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netstandard1.6</NuGetTargetMonikerShort>
<NugetTargetMoniker>.NETStandard,Version=v1.6</NugetTargetMoniker>
<NugetTargetMonikerShort>netstandard1.6</NugetTargetMonikerShort>
<TargetFramework>netstandard1.6</TargetFramework>
</PropertyGroup>
<!-- Default configurations to help VS understand the configurations -->
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' " />
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' " />
<PropertyGroup>
<RestoreOutputPath>..\obj</RestoreOutputPath>
<DebugType>pdbonly</DebugType>
......@@ -32,11 +22,8 @@
<Compile Include="BenchmarkOptions.cs" />
<Compile Include="linkbench.cs" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), performance.targets))\performance.targets" />
<PropertyGroup>
<ProjectAssetsFile>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), performance.targets))\obj\project.assets.json</ProjectAssetsFile>
</PropertyGroup>
</Project>
\ No newline at end of file
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<AssemblyName>PerfLab</AssemblyName>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{507E3CC2-5D95-414D-9F01-2A106FC177DC}</ProjectGuid>
<OutputType>Library</OutputType>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\</SolutionDir>
<DefineConstants>$(DefineConstants);STATIC</DefineConstants>
<TargetFramework>netstandard1.6</TargetFramework>
<NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>
<NuGetTargetMonikerShort>netstandard1.6</NuGetTargetMonikerShort>
</PropertyGroup>
<!-- Default configurations to help VS understand the configurations -->
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
</PropertyGroup>
<PropertyGroup>
<RestoreOutputPath>..\obj</RestoreOutputPath>
</PropertyGroup>
......@@ -39,9 +29,6 @@
<Compile Include="ThreadingPerf.cs" />
<Compile Include="XunitPerformance.cs" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), performance.targets))/performance.targets" />
<PropertyGroup>
<ProjectAssetsFile>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), performance.targets))/obj/project.assets.json</ProjectAssetsFile>
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<NugetTargetMoniker>.NETStandard,Version=v1.6</NugetTargetMoniker>
<NugetTargetMonikerShort>netstandard1.6</NugetTargetMonikerShort>
<TargetFramework>netstandard1.6</TargetFramework>
<IsTestProject>false</IsTestProject>
</PropertyGroup>
<ItemGroup>
......@@ -103,15 +101,8 @@
<PackageReference Include="System.Security.Principal.Windows">
<Version>4.4.0</Version>
</PackageReference>
<PackageReference Include="System.Net.Primitives" Version="4.3.0" NoWarn="NU1605" />
</ItemGroup>
<PropertyGroup>
<TargetFramework>netstandard1.6</TargetFramework>
<TargetFrameworkIdentifier>.NETStandard,Version=1.6</TargetFrameworkIdentifier>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
<ContainsPackageReferences>true</ContainsPackageReferences>
<PrereleaseResolveNuGetPackages>false</PrereleaseResolveNuGetPackages>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<Target Name="Build"
DependsOnTargets="ResolveReferences" />
</Project>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" InitialTargets="CheckForBuildTools" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<CLRTestKind>BuildOnly</CLRTestKind>
</PropertyGroup>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册