Skip to content

Commit 957aaac

Browse files
steveisokjkotas
andauthored
[cdac] Create transport package and rename the native cdac reader library (#114812)
This change adds new cdac transport packages that are built for Windows, MacOS, and Linux. Each package contains a host specific native cdac library that is meant to ride along with various diagnostics tools. The native library that is part of the transport package was renamed from 'cdacreader' to 'mscordaccore_universal'.   Contributes to #108720 --------- Co-authored-by: Jan Kotas <[email protected]>
1 parent 87bf42d commit 957aaac

File tree

245 files changed

+67
-33
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

245 files changed

+67
-33
lines changed

Directory.Build.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@
178178

179179
<PropertyGroup>
180180
<DotNetHostBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', '$(OutputRID).$(HostConfiguration)', 'corehost'))</DotNetHostBinDir>
181+
<DotNetCDacBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'mscordaccore_universal', '$(Configuration)', '$(NetCoreAppCurrent)', '$(OutputRID)', 'publish'))</DotNetCDacBinDir>
181182
</PropertyGroup>
182183

183184
<!--Feature switches -->

docs/project/glossary.md

Lines changed: 1 addition & 0 deletions

eng/Subsets.props

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@
135135
<!-- Respect the DotNetBuildTests product flag when building the product. -->
136136
<DefaultLibrariesSubsets Condition="'$(DotNetBuildTests)' == 'true'">$(DefaultLibrariesSubsets)+libs.tests</DefaultLibrariesSubsets>
137137

138-
<DefaultToolsSubsets>tools.illink+tools.cdacreader</DefaultToolsSubsets>
138+
<DefaultToolsSubsets>tools.illink+tools.cdac</DefaultToolsSubsets>
139139

140140
<DefaultHostSubsets>host.native+host.tools+host.pkg</DefaultHostSubsets>
141141
<DefaultHostSubsets Condition="'$(DotNetBuildSourceOnly)' != 'true'">$(DefaultHostSubsets)+host.pretest+host.tests</DefaultHostSubsets>
@@ -228,10 +228,9 @@
228228
<!-- Tools -->
229229
<SubsetName Include="Tools" Description="Additional runtime tools projects. Equivalent to: $(DefaultToolsSubsets)" />
230230
<SubsetName Include="Tools.ILLink" Description="The projects that produce illink and analyzer tools for trimming." />
231-
<SubsetName Include="Tools.CdacReader" Description="The cDAC reader." />
231+
<SubsetName Include="Tools.Cdac" Description="Diagnostic data contract reader and related projects." />
232232
<SubsetName Include="Tools.ILLinkTests" OnDemand="true" Description="Unit tests for the tools.illink subset." />
233-
234-
<SubsetName Include="Tools.CdacReaderTests" OnDemand="true" Description="Units tests for the cDAC reader." />
233+
<SubsetName Include="Tools.CdacTests" OnDemand="true" Description="Unit tests for the diagnostic data contract reader." />
235234

236235
<!-- Host -->
237236
<SubsetName Include="Host" Description="The .NET hosts, packages, hosting libraries, and tests. Equivalent to: $(DefaultHostSubsets)" />
@@ -313,7 +312,7 @@
313312
<ClrRuntimeBuildSubsets>$(ClrRuntimeBuildSubsets);ClrILToolsSubset=true</ClrRuntimeBuildSubsets>
314313
</PropertyGroup>
315314

316-
<PropertyGroup Condition="$(_subset.Contains('+tools.cdacreader+'))">
315+
<PropertyGroup Condition="$(_subset.Contains('+tools.cdac+'))">
317316
<ClrRuntimeBuildSubsets>$(ClrRuntimeBuildSubsets);ClrCdacSubset=true</ClrRuntimeBuildSubsets>
318317
</PropertyGroup>
319318

@@ -472,12 +471,16 @@
472471
Test="true" Category="clr" Condition="'$(DotNetBuildSourceOnly)' != 'true' and '$(NativeAotSupported)' == 'true'"/>
473472
</ItemGroup>
474473

475-
<ItemGroup Condition="$(_subset.Contains('+tools.cdacreader+'))">
474+
<PropertyGroup Condition="$(_subset.Contains('+tools.cdac+'))">
475+
<_CDacToolsBuilt Condition="'$(_CDacToolsBuilt)' != 'true'">true</_CDacToolsBuilt>
476+
</PropertyGroup>
477+
478+
<ItemGroup Condition="$(_subset.Contains('+tools.cdac+'))">
476479
<ProjectToBuild Include="$(SharedNativeRoot)managed\compile-native.proj" Category="tools" />
477480
</ItemGroup>
478481

479-
<ItemGroup Condition="$(_subset.Contains('+tools.cdacreadertests+'))">
480-
<ProjectToBuild Include="$(SharedNativeRoot)managed\cdacreader\tests\Microsoft.Diagnostics.DataContractReader.Tests.csproj" Test="true" Category="tools"/>
482+
<ItemGroup Condition="$(_subset.Contains('+tools.cdactests+'))">
483+
<ProjectToBuild Include="$(SharedNativeRoot)managed\cdac\tests\Microsoft.Diagnostics.DataContractReader.Tests.csproj" Test="true" Category="tools"/>
481484
</ItemGroup>
482485

483486
<ItemGroup Condition="$(_subset.Contains('+tools.illink+'))">
@@ -637,6 +640,8 @@
637640
<_BuildCoreCLRRuntimePack Condition="'$(RuntimeFlavor)' == 'CoreCLR' and '$(CoreCLRSupported)' == 'true'">true</_BuildCoreCLRRuntimePack>
638641
<_BuildMonoRuntimePack Condition="'$(RuntimeFlavor)' == 'Mono' and '$(MonoSupported)' == 'true'">true</_BuildMonoRuntimePack>
639642
<_BuildHostPack Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true'">true</_BuildHostPack>
643+
<_BuildCDacPack Condition="'$(_CDacToolsBuilt)' == 'true' and '$(RuntimeFlavor)' == 'CoreCLR' and '$(TargetsMobile)' != 'true' and '$(TargetsLinuxMusl)' != 'true' and ('$(TargetOS)' == 'windows' or '$(TargetOS)' == 'osx' or '$(TargetOS)' == 'linux')">true</_BuildCDacPack>
644+
<_BuildCDacPack Condition="'$(DotNetBuildSourceOnly)' == 'true' or '$(TargetArchitecture)' == 'arm' or '$(TargetArchitecture)' == 'armel' or '$(TargetArchitecture)' == 'x86' or '$(TargetArchitecture)' == 'riscv64'">false</_BuildCDacPack>
640645
<_BuildBundle Condition="'$(RuntimeFlavor)' == '$(PrimaryRuntimeFlavor)' and '$(TargetsMobile)' != 'true'">true</_BuildBundle>
641646
</PropertyGroup>
642647

@@ -669,6 +674,7 @@
669674
</ItemGroup>
670675
<ItemGroup>
671676
<ProjectToBuild Condition="'$(NativeAotSupported)' == 'true' and '$(RuntimeFlavor)' != 'Mono' and '$(TargetsMobile)' != 'true' and '$(TargetsLinuxBionic)' != 'true'" Include="$(InstallerProjectRoot)\pkg\projects\nativeaot-packages.proj" Category="packs" />
677+
<ProjectToBuild Condition="'$(_BuildCDacPack)' == 'true'" Include="$(InstallerProjectRoot)pkg\projects\cdac-packages.proj" Category="packs" />
672678
</ItemGroup>
673679
<ItemGroup>
674680
<!--

eng/liveBuilds.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@
124124
</CoreCLRCrossTargetFiles>
125125
</ItemGroup>
126126
<ItemGroup Condition="'$(RuntimeFlavor)' == 'Mono'">
127-
<RuntimeFiles Include="$(MonoArtifactsPath)\*.*" Exclude="$(MonoArtifactsPath)\*cdacreader*" />
127+
<RuntimeFiles Include="$(MonoArtifactsPath)\*.*" Exclude="$(MonoArtifactsPath)\*cdac*" />
128128
<RuntimeFiles>
129129
<IsNative>true</IsNative>
130130
</RuntimeFiles>

eng/pipelines/common/evaluate-default-paths.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,9 +161,9 @@ jobs:
161161
- src/coreclr/tools/ILVerification/*
162162
- global.json
163163

164-
- subset: tools_cdacreader
164+
- subset: tools_cdac
165165
include:
166-
- src/native/managed/cdacreader/*
166+
- src/native/managed/cdac/*
167167

168168
- subset: installer
169169
include:

eng/pipelines/runtime-diagnostics.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ extends:
4141
platforms:
4242
- windows_x64
4343
jobParameters:
44-
buildArgs: -s clr+libs+tools.cdacreader+host+packs -c $(_BuildConfig)
44+
buildArgs: -s clr+libs+tools.cdac+host+packs -c $(_BuildConfig)
4545
nameSuffix: AllSubsets_CoreCLR
4646
isOfficialBuild: ${{ variables.isOfficialBuild }}
4747
timeoutInMinutes: 360

eng/pipelines/runtime.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -695,15 +695,15 @@ extends:
695695
jobParameters:
696696
timeoutInMinutes: 120
697697
nameSuffix: CLR_Tools_Tests
698-
buildArgs: -s clr.aot+clr.iltools+libs.sfx+clr.toolstests+tools.cdacreader+tools.cdacreadertests -c $(_BuildConfig) -test
698+
buildArgs: -s clr.aot+clr.iltools+libs.sfx+clr.toolstests+tools.cdac+tools.cdactests -c $(_BuildConfig) -test
699699
enablePublishTestResults: true
700700
testResultsFormat: 'xunit'
701701
# We want to run AOT tests when illink changes because there's share code and tests from illink which are used by AOT
702702
condition: >-
703703
or(
704704
eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
705705
eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true),
706-
eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_cdacreader.containsChange'], true),
706+
eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_cdac.containsChange'], true),
707707
eq(variables['isRollingBuild'], true))
708708
#
709709
# Build CrossDacs

src/coreclr/debug/daccess/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
add_definitions(-DFEATURE_NO_HOST)
22

3-
add_subdirectory(${CLR_SRC_NATIVE_DIR}/managed/cdacreader/cmake ${CLR_ARTIFACTS_OBJ_DIR}/cdacreader)
3+
add_subdirectory(${CLR_SRC_NATIVE_DIR}/managed/cdac/cmake ${CLR_ARTIFACTS_OBJ_DIR}/mscordaccore_universal)
44

55
include_directories(BEFORE ${VM_DIR})
66
include_directories(BEFORE ${VM_DIR}/${ARCH_SOURCES_DIR})
@@ -43,7 +43,7 @@ convert_to_absolute_path(DACCESS_SOURCES ${DACCESS_SOURCES})
4343
add_library_clr(daccess ${DACCESS_SOURCES})
4444
set_target_properties(daccess PROPERTIES DAC_COMPONENT TRUE)
4545
target_precompile_headers(daccess PRIVATE [["stdafx.h"]])
46-
target_link_libraries(daccess PRIVATE cdacreader_api)
46+
target_link_libraries(daccess PRIVATE cdac_api)
4747

4848
add_dependencies(daccess eventing_headers)
4949

src/coreclr/debug/daccess/cdac.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
#include "dbgutil.h"
88
#include <cdac_reader.h>
99

10-
#define CDAC_LIB_NAME MAKEDLLNAME_W(W("cdacreader"))
10+
#define CDAC_LIB_NAME MAKEDLLNAME_W(W("mscordaccore_universal"))
1111

1212
namespace
1313
{
1414
bool TryLoadCDACLibrary(HMODULE *phCDAC)
1515
{
16-
// Load cdacreader from next to current module (DAC binary)
16+
// Load cdac from next to current module (DAC binary)
1717
PathString path;
1818
if (WszGetModuleFileName((HMODULE)GetCurrentModuleBase(), path) == 0)
1919
return false;

src/coreclr/debug/daccess/dacimpl.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1417,7 +1417,7 @@ class ClrDataAccess
14171417
ULONG32 m_instanceAge;
14181418
bool m_debugMode;
14191419

1420-
// This currently exists on the DAC as a way of managing lifetime of loading/freeing the cdacreader
1420+
// This currently exists on the DAC as a way of managing lifetime of loading/freeing the cdac
14211421
// TODO: [cdac] Remove when cDAC deploys with SOS - https://github.com/dotnet/runtime/issues/108720
14221422
CDAC m_cdac;
14231423

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<PackageDescription>Transport package for the cdac reader to be used with diagnostics tooling</PackageDescription>
4+
<IsShipping>false</IsShipping>
5+
</PropertyGroup>
6+
7+
<ItemGroup>
8+
<File Include="$(DotNetCDacBinDir)$(LibPrefix)mscordaccore_universal$(LibSuffix)">
9+
<TargetPath>runtimes/$(PackageTargetRuntime)/native</TargetPath>
10+
<IsNative>true</IsNative>
11+
</File>
12+
</ItemGroup>
13+
</Project>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<Project>
2+
<Import Sdk="Microsoft.Build.Traversal" Project="Sdk.props" />
3+
4+
<ItemGroup>
5+
<ProjectReference Include="Microsoft.DotNet.Cdac.Transport\Microsoft.DotNet.Cdac.Transport.pkgproj"
6+
AdditionalProperties="PackageTargetRuntime=$(OutputRID)" />
7+
</ItemGroup>
8+
9+
<Import Sdk="Microsoft.Build.Traversal" Project="Sdk.targets" />
10+
11+
<!-- Ordering matters! Overwriting the Pack target which should just invoke Build. -->
12+
<Target Name="Pack" DependsOnTargets="Build" />
13+
</Project>

src/native/managed/cdacreader/Microsoft.Diagnostics.DataContractReader.Abstractions/Target.cs renamed to src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Abstractions/Target.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ namespace Microsoft.Diagnostics.DataContractReader;
1313
/// </summary>
1414
/// <remarks>
1515
/// This class provides APIs used by contracts for reading from the target and getting type and globals
16-
/// information. Like the contracts themselves in cdacreader, these are throwing APIs. Any callers at the boundaries
16+
/// information. Like the contracts themselves in the cdac, these are throwing APIs. Any callers at the boundaries
1717
/// (for example, unmanaged entry points, COM) should handle any exceptions.
1818
/// </remarks>
1919
public abstract class Target
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ internal bool ValidateMethodDescPointer(TargetPointer methodDescPointer, [NotNul
228228
// TODO(cdac): maybe don't swallow all exceptions? We could consider a richer contract that
229229
// helps to track down what sort of memory corruption caused the validation to fail.
230230
// TODO(cdac): we could also consider a more fine-grained exception type so we don't mask
231-
// programmer mistakes in cdacreader.
231+
// programmer mistakes in the cdac.
232232
return false;
233233
}
234234
return true;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ private bool ValidateMethodTablePointer(NonValidatedMethodTable umt)
122122
// TODO(cdac): maybe don't swallow all exceptions? We could consider a richer contract that
123123
// helps to track down what sort of memory corruption caused the validation to fail.
124124
// TODO(cdac): we could also consider a more fine-grained exception type so we don't mask
125-
// programmer mistakes in cdacreader.
125+
// programmer mistakes in the cdac.
126126
return false;
127127
}
128128
return true;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ namespace Microsoft.Diagnostics.DataContractReader;
1717
/// </summary>
1818
/// <remarks>
1919
/// This class provides APIs used by contracts for reading from the target and getting type and globals
20-
/// information based on the target's contract descriptor. Like the contracts themselves in cdacreader,
20+
/// information based on the target's contract descriptor. Like the contracts themselves in the cdac,
2121
/// these are throwing APIs. Any callers at the boundaries (for example, unmanaged entry points, COM)
2222
/// should handle any exceptions.
2323
/// </remarks>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
add_library(cdac_api INTERFACE)
2+
target_include_directories(cdac_api INTERFACE ${CLR_SRC_NATIVE_DIR}/managed/cdac/inc)

src/native/managed/cdacreader/src/cdacreader.csproj renamed to src/native/managed/cdac/mscordaccore_universal/mscordaccore_universal.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<AssemblyName Condition="'$(TargetsWindows)' != 'true'">lib$(MSBuildProjectName)</AssemblyName>
4+
<AssemblyName>$(LibPrefix)$(MSBuildProjectName)</AssemblyName>
55
<TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
66
<RootNamespace>Microsoft.Diagnostics.DataContractReader</RootNamespace>
77
<Nullable>enable</Nullable>

src/native/managed/cdacreader/tests/Microsoft.Diagnostics.DataContractReader.Tests.csproj renamed to src/native/managed/cdac/tests/Microsoft.Diagnostics.DataContractReader.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<Import Project="..\..\subproject.props" />
1010

1111
<ItemGroup>
12-
<ProjectReference Include="..\src\cdacreader.csproj" AdditionalProperties="$(SplitSubprojectProps)" />
12+
<ProjectReference Include="..\mscordaccore_universal\mscordaccore_universal.csproj" AdditionalProperties="$(SplitSubprojectProps)" />
1313
</ItemGroup>
1414
<ItemGroup>
1515
<PackageReference Include="Moq" Version="$(MoqVersion)" />

src/native/managed/cdacreader/cmake/CMakeLists.txt

Lines changed: 0 additions & 2 deletions
This file was deleted.

src/native/managed/compile-native.proj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<ItemGroup>
1111
<!-- add new projects here -->
1212
<!-- NativeLibsProjectsToBuild Include="$(MSBuildThisFileDirectory)libhellomanaged/src/libhellomanaged.csproj" -->
13-
<NativeLibsProjectsToBuild Include="$(MSBuildThisFileDirectory)cdacreader/src/cdacreader.csproj" />
13+
<NativeLibsProjectsToBuild Include="$(MSBuildThisFileDirectory)cdac/mscordaccore_universal/mscordaccore_universal.csproj" />
1414
</ItemGroup>
1515

1616
<!-- Decide if we're going to do the NativeAOT builds -->

src/tools/StressLogAnalyzer/StressLogAnalyzer.sln

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StressLogAnalyzer", "src\St
77
EndProject
88
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{D67D7F2A-1459-4A22-99B2-6B1F56EF4D79}"
99
EndProject
10-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader", "..\..\native\managed\cdacreader\Microsoft.Diagnostics.DataContractReader\Microsoft.Diagnostics.DataContractReader.csproj", "{D44FD88F-1E43-4F53-9D2C-F0F3925BBE69}"
10+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader", "..\..\native\managed\cdac\Microsoft.Diagnostics.DataContractReader\Microsoft.Diagnostics.DataContractReader.csproj", "{D44FD88F-1E43-4F53-9D2C-F0F3925BBE69}"
1111
EndProject
12-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader.Abstractions", "..\..\native\managed\cdacreader\Microsoft.Diagnostics.DataContractReader.Abstractions\Microsoft.Diagnostics.DataContractReader.Abstractions.csproj", "{67C3CA4E-BBB0-4C0A-A06F-1C32B458F1BC}"
12+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader.Abstractions", "..\..\native\managed\cdac\Microsoft.Diagnostics.DataContractReader.Abstractions\Microsoft.Diagnostics.DataContractReader.Abstractions.csproj", "{67C3CA4E-BBB0-4C0A-A06F-1C32B458F1BC}"
1313
EndProject
14-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader.Contracts", "..\..\native\managed\cdacreader\Microsoft.Diagnostics.DataContractReader.Contracts\Microsoft.Diagnostics.DataContractReader.Contracts.csproj", "{EC665835-E05A-439E-8607-D0DFA1E7A18F}"
14+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Diagnostics.DataContractReader.Contracts", "..\..\native\managed\cdac\Microsoft.Diagnostics.DataContractReader.Contracts\Microsoft.Diagnostics.DataContractReader.Contracts.csproj", "{EC665835-E05A-439E-8607-D0DFA1E7A18F}"
1515
EndProject
1616
Global
1717
GlobalSection(SolutionConfigurationPlatforms) = preSolution

src/tools/StressLogAnalyzer/src/StressLogAnalyzer.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
</PropertyGroup>
1313

1414
<ItemGroup>
15-
<ProjectReference Include="$(RepoRoot)/src/native/managed/cdacreader/Microsoft.Diagnostics.DataContractReader/Microsoft.Diagnostics.DataContractReader.csproj" />
16-
<ProjectReference Include="$(RepoRoot)/src/native/managed/cdacreader/Microsoft.Diagnostics.DataContractReader.Contracts/Microsoft.Diagnostics.DataContractReader.Contracts.csproj" />
15+
<ProjectReference Include="$(RepoRoot)/src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader/Microsoft.Diagnostics.DataContractReader.csproj" />
16+
<ProjectReference Include="$(RepoRoot)/src/native/managed/cdac/Microsoft.Diagnostics.DataContractReader.Contracts/Microsoft.Diagnostics.DataContractReader.Contracts.csproj" />
1717
</ItemGroup>
1818

1919
<ItemGroup>

0 commit comments

Comments
 (0)