diff --git a/eng/liveBuilds.targets b/eng/liveBuilds.targets
index c9a7ed1125ffd..76327b6312357 100644
--- a/eng/liveBuilds.targets
+++ b/eng/liveBuilds.targets
@@ -24,7 +24,9 @@
+ $([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)', 'PDB'))
$([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)', 'sharedFramework'))
+ $([MSBuild]::NormalizeDirectory('$(CoreCLRSharedFrameworkDir)', 'PDB'))
$([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)', 'ilc-published'))
$([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)', '$(BuildArchitecture)', 'ilc'))
$([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)', 'aotsdk'))
@@ -67,22 +69,10 @@
Text="The Mono artifacts path does not exist '$(MonoArtifactsPath)'. The 'mono' subset must be built before building this project. Configuration: '$(MonoConfiguration)'. To use a different configuration, specify the 'RuntimeConfiguration' property." />
- $([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)'))
- $([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)','PDB'))
-
- $([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)','sharedFramework'))
- $([MSBuild]::NormalizeDirectory('$(CoreCLRSharedFrameworkDir)','PDB'))
$([MSBuild]::NormalizeDirectory('$(CoreCLRArtifactsPath)','$(CoreCLRCrossTargetComponentDirName)','sharedFramework'))
-
- $([MSBuild]::NormalizeDirectory('$(MonoArtifactsPath)'))
-
-
<_nativeAotRuntimeFiles Include="$(CoreCLRAotSdkDir)*" />
@@ -97,18 +87,22 @@
true
+
+
<_systemPrivateCoreLib Include="$(CoreCLRArtifactsPath)System.Private.CoreLib.dll"
Condition="Exists('$(CoreCLRArtifactsPath)System.Private.CoreLib.dll')" />
<_systemPrivateCoreLib Include="$(CoreCLRArtifactsPath)IL/System.Private.CoreLib.dll"
Condition="Exists('$(CoreCLRArtifactsPath)IL/System.Private.CoreLib.dll') and '@(_systemPrivateCoreLib)' == ''" />
+
+
+ $(CoreCLRSharedFrameworkPdbDir)*.dSYM/**"
+ IsNative="true" />
+ $(CoreCLRSharedFrameworkPdbDir)*.dSYM/**" />
runtime/$(CoreCLRCrossTargetComponentDirName)_$(TargetArchitecture)/native
@@ -195,7 +189,7 @@
$(LibrariesNativeArtifactsPath)*.so;
$(LibrariesNativeArtifactsPath)*.dbg;
$(LibrariesNativeArtifactsPath)*.dwarf;
- $(LibrariesNativeArtifactsPath)*.dSYM;
+ $(LibrariesNativeArtifactsPath)*.dSYM/**;
$(LibrariesNativeArtifactsPath)*.pdb"
IsNative="true"
Exclude="@(ExcludeNativeLibrariesRuntimeFiles)" />
diff --git a/eng/native/functions.cmake b/eng/native/functions.cmake
index a0ac400cf2c83..f6e79e6437291 100644
--- a/eng/native/functions.cmake
+++ b/eng/native/functions.cmake
@@ -369,7 +369,6 @@ endfunction()
function (get_symbol_file_name targetName outputSymbolFilename)
if (CLR_CMAKE_HOST_UNIX)
if (CLR_CMAKE_TARGET_APPLE)
- # set(strip_destination_file $.dwarf)
set(strip_destination_file $.dSYM)
else ()
set(strip_destination_file $.dbg)
@@ -417,7 +416,6 @@ function(strip_symbols targetName outputFilename)
OUTPUT_VARIABLE DSYMUTIL_HELP_OUTPUT
)
- # set(DSYMUTIL_OPTS "--flat")
set(DSYMUTIL_OPTS "")
if ("${DSYMUTIL_HELP_OUTPUT}" MATCHES "--minimize")
list(APPEND DSYMUTIL_OPTS "--minimize")
diff --git a/eng/native/naming.props b/eng/native/naming.props
index 0aef054a27a25..9f3f39056c326 100644
--- a/eng/native/naming.props
+++ b/eng/native/naming.props
@@ -11,6 +11,8 @@
.dll
.lib
.pdb
+ .pdb
+ false
@@ -18,8 +20,9 @@
lib
.dylib
.a
-
.dSYM
+ .dSYM/**
+ true
@@ -28,12 +31,15 @@
.so
.a
.dbg
+ .dbg
+ false
-
+
+
diff --git a/src/coreclr/tools/aot/crossgen2/crossgen2_publish.csproj b/src/coreclr/tools/aot/crossgen2/crossgen2_publish.csproj
index 20b57ff1048ba..083d56a9244d5 100644
--- a/src/coreclr/tools/aot/crossgen2/crossgen2_publish.csproj
+++ b/src/coreclr/tools/aot/crossgen2/crossgen2_publish.csproj
@@ -51,9 +51,6 @@
$(MicrosoftNetCoreAppRuntimePackRidLibTfmDir)
$(MicrosoftNetCoreAppRuntimePackNativeDir)
false
-
-
-
diff --git a/src/installer/pkg/archives/dotnet-nethost.proj b/src/installer/pkg/archives/dotnet-nethost.proj
index e6bc4e90c2dbc..db99ebc948cb2 100644
--- a/src/installer/pkg/archives/dotnet-nethost.proj
+++ b/src/installer/pkg/archives/dotnet-nethost.proj
@@ -34,7 +34,15 @@
Condition="'$(TargetsWindows)' == 'true'"
DestinationFolder="$(SymbolsOutputPath)" />
+
+
+
+
+
+
diff --git a/src/installer/pkg/projects/Directory.Build.targets b/src/installer/pkg/projects/Directory.Build.targets
index 74420fa76bb1f..0906f60056366 100644
--- a/src/installer/pkg/projects/Directory.Build.targets
+++ b/src/installer/pkg/projects/Directory.Build.targets
@@ -9,8 +9,8 @@
$(PackageOutputPath)
@@ -95,8 +95,7 @@
-->
-
-
+
diff --git a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Crossgen2.sfxproj b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Crossgen2.sfxproj
index f3fcd14b2a3d1..1e6c5d4de3976 100644
--- a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Crossgen2.sfxproj
+++ b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Crossgen2.sfxproj
@@ -73,6 +73,7 @@
<_Crossgen2SymbolFilesToPackage Include="@(_CrossgenPublishFiles)" Condition="'%(Extension)' == '.pdb'" />
<_Crossgen2SymbolFilesToPackage Include="@(NativeRuntimeAsset->'$(CoreCLRArtifactsPdbDir)%(FileName).pdb')" Condition="'$(TargetOS)' == 'windows' and '%(FileName)' != 'crossgen2'" />
+
<_Crossgen2SymbolFilesToPackage Include="@(NativeRuntimeAsset->'$(CoreCLRArtifactsPath)%(FileName)%(Extension)$(SymbolsSuffix)')" Condition="'$(TargetOS)' != 'windows' and '%(FileName)' != 'crossgen2'" />
<_Crossgen2SymbolFilesToPackage Remove="@(_Crossgen2SymbolFilesToPackage)" Condition="!Exists('%(Identity)')" />
diff --git a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Host.sfxproj b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Host.sfxproj
index fc7b8b90fe907..80cfc814413ce 100644
--- a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Host.sfxproj
+++ b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Host.sfxproj
@@ -47,25 +47,23 @@
-
- <_SymbolFiles Condition="'$(TargetOS)' == 'windows'"
- Include="@(NativeRuntimeAsset->'%(RootDir)%(Directory)PDB/%(Filename).pdb')"
- IsSymbolFile="true"
- IsNative="true" />
- <_SymbolFiles Condition="'$(TargetOS)' != 'windows'"
- Include="@(NativeRuntimeAsset->'%(RootDir)%(Directory)%(Filename)%(Extension)$(SymbolsSuffix)')"
- IsSymbolFile="true"
- IsNative="true" />
-
+
+ <_SymbolFilesBase Condition="'$(TargetOS)' == 'windows'"
+ Include="@(NativeRuntimeAsset->'%(RootDir)%(Directory)PDB/%(Filename).pdb')" />
+ <_SymbolFilesBase Condition="'$(TargetOS)' != 'windows'"
+ Include="@(NativeRuntimeAsset->'%(RootDir)%(Directory)%(Filename)%(Extension)$(SymbolsSuffixPath)')" />
+
- <_SymbolFiles Condition="'$(TargetOS)' == 'windows'"
- Include="$(DotNetHostBinDir)PDB/dotnet.pdb"
- IsSymbolFile="true"
- IsNative="true" />
- <_SymbolFiles Condition="'$(TargetOS)' != 'windows'"
- Include="$(DotNetHostBinDir)dotnet$(ExeSuffix)$(SymbolsSuffix)"
- IsSymbolFile="true"
- IsNative="true" />
+ <_SymbolFilesBase Condition="'$(TargetOS)' == 'windows'"
+ Include="$(DotNetHostBinDir)PDB/dotnet.pdb" />
+ <_SymbolFilesBase Condition="'$(TargetOS)' != 'windows'"
+ Include="$(DotNetHostBinDir)dotnet$(ExeSuffix)$(SymbolsSuffixPath)" />
+
+
+
+ <_SymbolFiles Include="@(_SymbolFilesBase)"
+ IsSymbolFile="true"
+ IsNative="true" />
<_SymbolFiles Remove="@(_SymbolsToIncludeAlways)" />
diff --git a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Runtime.props b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Runtime.props
index 007249b9888f4..232393d7fdd3d 100644
--- a/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Runtime.props
+++ b/src/installer/pkg/sfx/Microsoft.NETCore.App/Microsoft.NETCore.App.Runtime.props
@@ -72,6 +72,7 @@
<_HostFiles Include="$(DotNetHostBinDir)/$(LibPrefix)hostfxr$(LibSuffix)" PackOnly="true" />
+
<_HostSymbolFiles Include="@(_HostFiles->'%(RootDir)%(Directory)PDB/%(Filename)$(SymbolsSuffix)')" Condition="'$(TargetOS)' == 'windows'" />
<_HostSymbolFiles Include="@(_HostFiles->'%(RootDir)%(Directory)%(Filename)%(Extension)$(SymbolsSuffix)')" Condition="'$(TargetOS)' != 'windows'" />
<_SymbolFilesToPackage Include="@(_HostSymbolFiles->Exists())" IsNative="true" />
@@ -80,9 +81,12 @@
- runtimes/$(RuntimeIdentifier)/native
+ runtimes/$(RuntimeIdentifier)/native/%(RecursiveDir)
+
+
+
tools
@@ -121,11 +125,25 @@
tools/$(CoreCLRCrossTargetComponentDirName)_$(TargetArchitecture)
+
tools
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/installer/pkg/sfx/installers/dotnet-host.proj b/src/installer/pkg/sfx/installers/dotnet-host.proj
index b62668f2a9596..e86992f9ba7ae 100644
--- a/src/installer/pkg/sfx/installers/dotnet-host.proj
+++ b/src/installer/pkg/sfx/installers/dotnet-host.proj
@@ -75,6 +75,7 @@
Condition="'$(TargetOS)' == 'windows'"
DestinationFolder="$(SymbolsOutputPath)" />
+
diff --git a/src/installer/pkg/sfx/installers/dotnet-hostfxr.proj b/src/installer/pkg/sfx/installers/dotnet-hostfxr.proj
index d2a2c64a6a6ac..b9e6f499cc64f 100644
--- a/src/installer/pkg/sfx/installers/dotnet-hostfxr.proj
+++ b/src/installer/pkg/sfx/installers/dotnet-hostfxr.proj
@@ -34,6 +34,7 @@
Condition="'$(TargetOS)' == 'windows'"
DestinationFolder="$(SymbolsOutputPath)" />
+