Skip to content

Commit 091c664

Browse files
am11jtschuster
authored andcommitted
Revert Revert "Copy published crossgen2 in artifacts/tests (dotnet#80154)" (dotnet#106965)
This reverts commit b579962.
1 parent 3f650fc commit 091c664

File tree

17 files changed

+100
-69
lines changed

17 files changed

+100
-69
lines changed

eng/pipelines/common/templates/runtimes/run-test-job.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ jobs:
244244
# Compose the Core_Root folder containing all artifacts needed for running
245245
# CoreCLR tests. This step also compiles the framework using Crossgen2
246246
# in ReadyToRun jobs.
247-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) generatelayoutonly $(logRootNameArg)Layout $(runtimeFlavorArgs) $(crossgenArg) $(buildConfig) $(archType) $(crossArg) $(priorityArg) $(librariesOverrideArg) $(runtimeVariantArg)
247+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) generatelayoutonly $(logRootNameArg)Layout $(runtimeFlavorArgs) $(crossgenArg) $(buildConfig) $(archType) $(crossArg) $(priorityArg) $(librariesOverrideArg) $(runtimeVariantArg) -ci
248248
displayName: Generate CORE_ROOT
249249

250250
# Build a Mono LLVM AOT cross-compiler for non-amd64 targets (in this case, just arm64)

eng/pipelines/coreclr/exploratory.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ extends:
4040
buildArgs: -s clr+libs -c $(_BuildConfig) -lc Release
4141
timeoutInMinutes: 360
4242
postBuildSteps:
43-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(_BuildConfig) $(archType) $(crossArg) generatelayoutonly
43+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(_BuildConfig) $(archType) $(crossArg) generatelayoutonly /p:UsePublishedCrossgen2=false
4444
displayName: Create Core_Root
4545
condition: succeeded()
4646
- template: /eng/pipelines/coreclr/templates/jit-exploratory-steps.yml

eng/pipelines/coreclr/templates/crossgen2-comparison-build-job.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ jobs:
9898
displayName: 'product build'
9999

100100
# Populate Core_Root
101-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) $(crossArg) generatelayoutonly
101+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) $(crossArg) generatelayoutonly /p:UsePublishedCrossgen2=false
102102
displayName: Populate Core_Root
103103

104104
# Create work item directory and populate with assemblies

eng/pipelines/coreclr/templates/crossgen2-comparison-job.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ jobs:
9494
displayName: 'product build'
9595

9696
# Populate Core_Root
97-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) $(crossArg) generatelayoutonly
97+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) $(crossArg) generatelayoutonly /p:UsePublishedCrossgen2=false
9898
displayName: Populate Core_Root
9999

100100
- task: DownloadPipelineArtifact@2

eng/pipelines/coreclr/templates/perf-job.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ jobs:
273273
checkDownloadedFiles: true
274274

275275
# Create Core_Root
276-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) generatelayoutonly $(librariesOverrideArg) $(_crossBuildPropertyArg)
276+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) generatelayoutonly $(librariesOverrideArg) $(_crossBuildPropertyArg) /p:UsePublishedCrossgen2=false
277277
displayName: Create Core_Root
278278
condition: and(succeeded(), ne(variables.runtimeFlavorName, 'Mono'), not(in('${{ parameters.runtimeType }}', 'wasm', 'AndroidMono', 'iOSMono', 'iOSNativeAOT')))
279279

eng/pipelines/coreclr/templates/superpmi-collect-job.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,6 @@ jobs:
7272
displayName: 'generic managed test artifacts'
7373

7474
# Create Core_Root
75-
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) generatelayoutonly $(librariesOverrideArg)
75+
- script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(buildConfig) $(archType) generatelayoutonly $(librariesOverrideArg) /p:UsePublishedCrossgen2=false
7676
displayName: Create Core_Root
7777
condition: succeeded()

src/coreclr/tools/aot/crossgen2/crossgen2_publish.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
<Import Project="$(RepositoryEngineeringDir)codeOptimization.targets" />
3838

3939
<PropertyGroup Condition="'$(UseNativeAotForComponents)' == 'true'">
40+
<PublishAot>true</PublishAot>
4041
<IlcToolsPath>$(CoreCLRILCompilerDir)</IlcToolsPath>
4142
<IlcToolsPath Condition="'$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)' or '$(EnableNativeSanitizers)' != ''">$(CoreCLRCrossILCompilerDir)</IlcToolsPath>
4243
<SysRoot Condition="('$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)') and '$(HostOS)' != 'windows'">$(ROOTFS_DIR)</SysRoot>

src/coreclr/tools/r2rtest/Crossgen2Runner.cs

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,19 @@ class Crossgen2RunnerOptions
2424
class Crossgen2Runner : CompilerRunner
2525
{
2626
private Crossgen2RunnerOptions Crossgen2RunnerOptions;
27-
public override CompilerIndex Index => CompilerIndex.CPAOT;
27+
private bool IsAssembly => _options.Crossgen2Path != null && _options.Crossgen2Path.FullName.EndsWith(".dll");
2828

29-
// Crossgen2 runs on top of corerun.
29+
// Crossgen2 runs as a standalone binary
3030
protected override string CompilerRelativePath => "";
31+
protected override string CompilerFileName => "";
32+
33+
protected override string CompilerPath => IsAssembly ? _options.DotNetCli : _options.Crossgen2Path?.FullName
34+
?? Path.Combine(_options.CoreRootDirectory.FullName, "crossgen2", RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "crossgen2.exe" : "crossgen2");
35+
36+
public override CompilerIndex Index => CompilerIndex.CPAOT;
3137

32-
protected override string CompilerFileName => _options.DotNetCli;
33-
protected readonly List<string> _referenceFiles = new List<string>();
38+
protected readonly List<string> _referenceFiles = new();
3439

35-
private string Crossgen2Path => _options.Crossgen2Path != null ? _options.Crossgen2Path.FullName : Path.Combine(_options.CoreRootDirectory.FullName, "crossgen2", "crossgen2.dll");
3640
private bool CompositeMode => Crossgen2RunnerOptions != null ? Crossgen2RunnerOptions.Composite : _options.Composite;
3741

3842
public Crossgen2Runner(BuildOptions options, Crossgen2RunnerOptions crossgen2RunnerOptions, IEnumerable<string> references, string overrideOutputPath = null)
@@ -64,7 +68,9 @@ public Crossgen2Runner(BuildOptions options, Crossgen2RunnerOptions crossgen2Run
6468
public override ProcessParameters CompilationProcess(string outputFileName, IEnumerable<string> inputAssemblyFileNames)
6569
{
6670
ProcessParameters processParameters = base.CompilationProcess(outputFileName, inputAssemblyFileNames);
67-
processParameters.Arguments = $"{Crossgen2Path} {processParameters.Arguments}";
71+
if (IsAssembly)
72+
processParameters.Arguments = $"{_options.Crossgen2Path.FullName} {processParameters.Arguments}";
73+
6874
// DOTNET_ variables
6975
processParameters.EnvironmentOverrides["DOTNET_GCStress"] = "";
7076
processParameters.EnvironmentOverrides["DOTNET_HeapVerify"] = "";
@@ -76,6 +82,7 @@ public override ProcessParameters CompilationProcess(string outputFileName, IEnu
7682
processParameters.EnvironmentOverrides["COMPlus_HeapVerify"] = "";
7783
processParameters.EnvironmentOverrides["COMPlus_ReadyToRun"] = "";
7884
processParameters.EnvironmentOverrides["COMPlus_GCName"] = "";
85+
7986
return processParameters;
8087
}
8188

src/tests/Common/CLRTest.CrossGen.targets

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,16 +85,17 @@ if [ ! -z ${RunCrossGen2+x} ]%3B then
8585
__ResponseFile="$__OutputFile.rsp"
8686
rm $__ResponseFile 2>/dev/null
8787
88-
__Command=$_DebuggerFullPath
88+
__R2RDumpCommand=$_DebuggerFullPath
8989
# Tests run locally need __TestDotNetCmd (set by runtest.py) or a compatible 5.0 dotnet runtime in the path
9090
if [ ! -z ${__TestDotNetCmd+x} ] %3B then
91-
__Command+=" $__TestDotNetCmd"
91+
__R2RDumpCommand+=" $__TestDotNetCmd"
9292
else
93-
__Command+=" dotnet"
93+
__R2RDumpCommand+=" dotnet"
9494
fi
95-
__R2RDumpCommand=$__Command" $CORE_ROOT/R2RDump/R2RDump.dll"
95+
__R2RDumpCommand+=" $CORE_ROOT/R2RDump/R2RDump.dll"
9696
__R2RDumpCommand+=" --header --sc --in $__OutputFile --out $__OutputFile.r2rdump --val"
97-
__Command+=" $CORE_ROOT/crossgen2/crossgen2.dll"
97+
98+
__Command="$_DebuggerFullPath $CORE_ROOT/crossgen2/crossgen2"
9899
__Command+=" @$__ResponseFile"
99100
__Command+=" $ExtraCrossGen2Args"
100101
@@ -247,11 +248,10 @@ if defined RunCrossGen2 (
247248
) else (
248249
set __DotNet="dotnet"
249250
)
250-
set __Command=!_DebuggerFullPath!
251-
set __Command=!__Command! !__DotNet!
252-
set __R2RDumpCommand=!__Command! "!CORE_ROOT!\r2rdump\r2rdump.dll"
251+
set __R2RDumpCommand=!_DebuggerFullPath! !__DotNet! "!CORE_ROOT!\r2rdump\r2rdump.dll"
253252
set __R2RDumpCommand=!__R2RDumpCommand! --header --sc --in !__OutputFile! --out !__OutputFile!.r2rdump --val
254-
set __Command=!__Command! "!CORE_ROOT!\crossgen2\crossgen2.dll"
253+
254+
set __Command=!_DebuggerFullPath! "!CORE_ROOT!\crossgen2\crossgen2.exe"
255255
set __Command=!__Command! @"!__ResponseFile!"
256256
set __Command=!__Command! !ExtraCrossGen2Args!
257257
echo !__InputFile!>>!__ResponseFile!

src/tests/Common/Directory.Build.targets

Lines changed: 45 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<CopyCoreDisToolsToCoreRoot Condition="$(GCStressDependsOnCoreDisTools) And '$(DotNetBuildSourceOnly)' != 'true'">true</CopyCoreDisToolsToCoreRoot>
1919
<!-- Non-desktop OS's use a custom dotnet host, instead of corerun -->
2020
<IsDesktopOS Condition="'$(TargetsBrowser)' != 'true' and '$(TargetsAndroid)' != 'true' and '$(TargetstvOS)' != 'true' and '$(TargetsiOS)' != 'true' and '$(TargetsMacCatalyst)' != 'true'">true</IsDesktopOS>
21+
<UsePublishedCrossgen2 Condition="'$(RuntimeFlavor)' == 'coreclr' and '$(TestBuildMode)' != 'nativeaot'">true</UsePublishedCrossgen2>
2122
</PropertyGroup>
2223

2324
<Import Project="$(RepositoryEngineeringDir)coredistools.targets" Condition="$(CopyCoreDisToolsToCoreRoot)" />
@@ -34,7 +35,47 @@
3435
</ItemDefinitionGroup>
3536

3637
<Target Name="CopyDependencyToCoreRoot"
37-
DependsOnTargets="ResolveAssemblyReferences;ResolveRuntimeFilesFromLocalBuild">
38+
DependsOnTargets="ResolveAssemblyReferences;ResolveRuntimeFilesFromLocalBuild">
39+
40+
<!-- Copy apphost to crossgen2_publish directory.
41+
The default configuration between product and tests are flipped. When we build project like:
42+
`build -c debug -rc checked`, the corresponding test command is `src/tests/build -checked -p:LibrariesConfiguration=debug`,
43+
instead of `-debug -p:RuntimeConfiguration=checked`. That forces us to either pass the
44+
`HostConfiguration=debug` explicitly or fix this disparity; both of which will break the dev workflow.
45+
46+
As a workaround, we will first check if the directory pointed by `HostConfiguration` exists, then check
47+
`LibrariesConfiguration`.
48+
-->
49+
50+
<PropertyGroup Condition="'$(UsePublishedCrossgen2)' == 'true'">
51+
<_targetOS>$(TargetOS)</_targetOS>
52+
<_targetOS Condition="'$(_targetOS)' == 'windows'">win</_targetOS>
53+
<_apphostPath Condition="Exists('$(ArtifactsBinDir)$(_targetOS)-$(TargetArchitecture).$(HostConfiguration)\corehost\apphost$(ExeSuffix)')">$(ArtifactsBinDir)$(_targetOS)-$(TargetArchitecture).$(HostConfiguration)\corehost\apphost$(ExeSuffix)</_apphostPath>
54+
<_apphostPath Condition="'$(_apphostPath)' == '' and Exists('$(ArtifactsBinDir)$(_targetOS)-$(TargetArchitecture).$(LibrariesConfiguration)\corehost\apphost$(ExeSuffix)')">$(ArtifactsBinDir)$(_targetOS)-$(TargetArchitecture).$(LibrariesConfiguration)\corehost\apphost$(ExeSuffix)</_apphostPath>
55+
<_toolsConfiguration Condition="Exists('$(ArtifactsBinDir)ILLink.Tasks\$(ToolsConfiguration)\$(NetCoreAppToolCurrent)\ILLink.Tasks.dll')">$(ToolsConfiguration)</_toolsConfiguration>
56+
<_toolsConfiguration Condition="Exists('$(ArtifactsBinDir)ILLink.Tasks\$(LibrariesConfiguration)\$(NetCoreAppToolCurrent)\ILLink.Tasks.dll')">$(LibrariesConfiguration)</_toolsConfiguration>
57+
</PropertyGroup>
58+
59+
<MakeDir Condition="'$(UsePublishedCrossgen2)' == 'true'" Directories="$(ArtifactsObjDir)coreclr\crossgen2_publish\$(TargetOS).$(TargetArchitecture).$(RuntimeConfiguration)" />
60+
61+
<Copy
62+
SourceFiles="$(_apphostPath)"
63+
DestinationFiles="$(ArtifactsObjDir)coreclr\crossgen2_publish\$(TargetOS).$(TargetArchitecture).$(RuntimeConfiguration)\apphost$(ExeSuffix)"
64+
Condition="'$(UsePublishedCrossgen2)' == 'true'" />
65+
66+
<!-- Publish crossgen2 on supported platforms. -->
67+
68+
<MSBuild Condition="'$(UsePublishedCrossgen2)' == 'true'"
69+
Targets="Restore"
70+
BuildInParallel="true"
71+
Properties="NativeAotSupported=$(NativeAotSupported);UseNativeAotForComponents=$(UseNativeAotForComponents);ToolsConfiguration=$(_toolsConfiguration);MSBuildRestoreSessionId=$([System.Guid]::NewGuid())"
72+
Projects="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Crossgen2.sfxproj" />
73+
74+
<MSBuild Condition="'$(UsePublishedCrossgen2)' == 'true'"
75+
Targets="PublishToDisk"
76+
BuildInParallel="true"
77+
Properties="NativeAotSupported=$(NativeAotSupported);UseNativeAotForComponents=$(UseNativeAotForComponents);ToolsConfiguration=$(_toolsConfiguration);OutputPath=$(CORE_ROOT)\crossgen2;LibrariesConfiguration=$(LibrariesConfiguration)"
78+
Projects="$(InstallerProjectRoot)pkg\sfx\Microsoft.NETCore.App\Microsoft.NETCore.App.Crossgen2.sfxproj" />
3879

3980
<ItemGroup>
4081
<RunTimeDependencyCopyLocal Include="@(RuntimeCopyLocalItems)" />
@@ -81,7 +122,7 @@
81122
<RunTimeArtifactsIncludeFolders Include="IL/" TargetDir="IL/" />
82123

83124
<!-- Used for Crossgen2 R2R tests -->
84-
<RunTimeArtifactsIncludeFolders Include="crossgen2/" TargetDir="crossgen2/">
125+
<RunTimeArtifactsIncludeFolders Include="crossgen2/" TargetDir="crossgen2/" Condition="'$(UsePublishedCrossgen2)' != 'true'">
85126
<IncludeSubFolders>True</IncludeSubFolders>
86127
</RunTimeArtifactsIncludeFolders>
87128

@@ -135,7 +176,7 @@
135176

136177
<RunTimeDependencyCopyLocal
137178
Condition="'%(RuntimeArtifactsIncludeFolders.IncludeSubFolders)' == 'True'"
138-
Include="$(CoreCLRArtifactsPath)%(RunTimeArtifactsIncludeFolders.Identity)**/*"
179+
Include="$(CoreCLRArtifactsPath)%(RunTimeArtifactsIncludeFolders.Identity)**\*"
139180
Exclude="@(RunTimeArtifactsExcludeFiles -> '$(CoreCLRArtifactsPath)%(Identity)')"
140181
TargetDir="%(RunTimeArtifactsIncludeFolders.TargetDir)" />
141182
</ItemGroup>
@@ -223,7 +264,7 @@
223264

224265
<Copy
225266
SourceFiles="@(RunTimeDependencyCopyLocal)"
226-
DestinationFiles="@(RunTimeDependencyCopyLocal -> '$(CORE_ROOT)/%(TargetDir)%(RecursiveDir)%(Filename)%(Extension)')"
267+
DestinationFiles="@(RunTimeDependencyCopyLocal -> '$(CORE_ROOT)\%(TargetDir)%(RecursiveDir)%(Filename)%(Extension)')"
227268
SkipUnchangedFiles="$(SkipCopyUnchangedFiles)"
228269
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
229270
Retries="$(CopyRetryCount)"

src/tests/baseservices/TieredCompilation/BasicTestWithMcj.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ set "DOTNET_GCStress="
3535
set "DOTNET_HeapVerify="
3636
set "DOTNET_ReadyToRun="
3737
38-
"%CORE_ROOT%\corerun" %CORE_ROOT%\crossgen2\crossgen2.dll --out r2r\$(MSBuildProjectName).dll $(MSBuildProjectName).dll -r %CORE_ROOT%\*.dll
38+
"%CORE_ROOT%\crossgen2\crossgen2.exe" --out r2r\$(MSBuildProjectName).dll $(MSBuildProjectName).dll -r %CORE_ROOT%\*.dll
3939
4040
endlocal
4141
set CLRCustomTestLauncher=RunBasicTestWithMcj.cmd --runCustomTest
@@ -47,7 +47,7 @@ mkdir r2r
4747
# Suppress some DOTNET variables for the duration of Crossgen2 execution
4848
export -n DOTNET_GCName DOTNET_GCStress DOTNET_HeapVerify DOTNET_ReadyToRun
4949
50-
"$CORE_ROOT/corerun" $CORE_ROOT/crossgen2/crossgen2.dll --out r2r/$(MSBuildProjectName).dll $(MSBuildProjectName).dll -r $CORE_ROOT/*.dll
50+
"$CORE_ROOT/crossgen2/crossgen2" --out r2r/$(MSBuildProjectName).dll $(MSBuildProjectName).dll -r $CORE_ROOT/*.dll
5151
5252
export DOTNET_GCName DOTNET_GCStress DOTNET_HeapVerify DOTNET_ReadyToRun
5353
chmod +x ./RunBasicTestWithMcj.sh

src/tests/build.proj

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -659,8 +659,6 @@
659659
Condition="'$(__BuildTestWrappersOnly)' != '1' and '$(__CopyNativeTestBinaries)' != '1' and '$(__TestBuildMode)' == 'crossgen2' and !$(MonoAot) and !$(MonoFullAot)" >
660660

661661
<PropertyGroup>
662-
<CrossgenDir>$(__BinDir)\$(BuildArchitecture)</CrossgenDir>
663-
664662
<CrossgenOutputDir>$(__TestIntermediatesDir)\crossgen.out</CrossgenOutputDir>
665663

666664
<CrossgenCmd>$(DotNetCli)</CrossgenCmd>
@@ -680,7 +678,7 @@
680678
<CrossgenCmd Condition="'$(__CompositeBuildMode)' == ''">$(CrossgenCmd) --crossgen2-parallelism 1</CrossgenCmd>
681679

682680
<CrossgenCmd>$(CrossgenCmd) --verify-type-and-field-layout</CrossgenCmd>
683-
<CrossgenCmd>$(CrossgenCmd) --crossgen2-path "$(CrossgenDir)\crossgen2\tools\crossgen2.dll"</CrossgenCmd>
681+
<CrossgenCmd>$(CrossgenCmd) --crossgen2-path "$(__BinDir)\$(BuildArchitecture)\crossgen2\tools\crossgen2.dll"</CrossgenCmd>
684682
</PropertyGroup>
685683

686684
<Message Importance="High" Text="$(MsgPrefix)Compiling framework using Crossgen2: $(CrossgenCmd)" />

src/tests/readytorun/crossboundarylayout/buildcrossgen2image.cmd

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,36 +48,36 @@ goto Loop
4848

4949
if "%COMPOSITENAME%"=="" goto done
5050

51-
set BUILDCMD=%TESTBATCHROOT%\..\..\..\..\..\..\.dotnet\dotnet %CORE_ROOT%\crossgen2\crossgen2.dll -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%Composite.dll --composite %COMPILEARG%
51+
set BUILDCMD=%CORE_ROOT%\crossgen2\crossgen2.exe -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%Composite.dll --composite %COMPILEARG%
5252
echo %BUILDCMD% > %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%Composite.dll.log
5353
call %BUILDCMD% >> %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%Composite.dll.log 2>&1
5454
if NOT EXIST %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%Composite.dll del %TESTINITIALBINPATH%\%TESTTARGET_DIR%\a.dll
5555
goto done
5656

5757
:CG2Single
5858
del %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll
59-
set BUILDCMD=%TESTBATCHROOT%\..\..\..\..\..\..\.dotnet\dotnet %CORE_ROOT%\crossgen2\crossgen2.dll -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
59+
set BUILDCMD=%CORE_ROOT%\crossgen2\crossgen2.exe -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
6060
echo %BUILDCMD% > %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log
6161
call %BUILDCMD% >> %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log 2>&1
6262
goto done
6363

6464
:CG2NoMethods
6565
del %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll
66-
set BUILDCMD=%TESTBATCHROOT%\..\..\..\..\..\..\.dotnet\dotnet %CORE_ROOT%\crossgen2\crossgen2.dll --compile-no-methods -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
66+
set BUILDCMD=%CORE_ROOT%\crossgen2\crossgen2.exe --compile-no-methods -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
6767
echo %BUILDCMD% > %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log
6868
call %BUILDCMD% >> %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log 2>&1
6969
goto done
7070

7171
:CG2SingleInputBubble
7272
del %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll
73-
set BUILDCMD=%TESTBATCHROOT%\..\..\..\..\..\..\.dotnet\dotnet %CORE_ROOT%\crossgen2\crossgen2.dll -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll --inputbubble %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
73+
set BUILDCMD=%CORE_ROOT%\crossgen2\crossgen2.exe -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\*.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll --inputbubble %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
7474
echo %BUILDCMD% > %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log
7575
call %BUILDCMD% >> %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log 2>&1
7676
goto done
7777

7878
:CG2SingleBubbleADOnly
7979
del %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll
80-
set BUILDCMD=%TESTBATCHROOT%\..\..\..\..\..\..\.dotnet\dotnet %CORE_ROOT%\crossgen2\crossgen2.dll -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\d.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll --inputbubble %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
80+
set BUILDCMD=%CORE_ROOT%\crossgen2\crossgen2.exe -r %CORE_ROOT%\* -r %TESTINITIALBINPATH%\d.dll -o %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll --inputbubble %TESTINITIALBINPATH%\%COMPOSITENAME%.dll
8181
echo %BUILDCMD% > %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log
8282
call %BUILDCMD% >> %TESTINITIALBINPATH%\%TESTTARGET_DIR%\%COMPOSITENAME%.dll.log 2>&1
8383
goto done

0 commit comments

Comments
 (0)