|
|
@@ -22,8 +22,6 @@
|
|
|
<Target
|
|
|
Name="_BlazorCopyFilesToOutputDirectory"
|
|
|
DependsOnTargets="PrepareBlazorOutputs"
|
|
|
- Inputs="@(BlazorOutputWithTargetPath)"
|
|
|
- Outputs="@(BlazorOutputWithTargetPath->'$(TargetDir)%(TargetOutputPath)')"
|
|
|
AfterTargets="CopyFilesToOutputDirectory"
|
|
|
Condition="'$(OutputType.ToLowerInvariant())'=='exe'">
|
|
|
|
|
|
@@ -160,6 +158,7 @@
|
|
|
</Target>
|
|
|
|
|
|
<UsingTask TaskName="BlazorILLink" AssemblyFile="$(BlazorTasksPath)" />
|
|
|
+ <UsingTask TaskName="GenerateTypeGranularityLinkingConfig" AssemblyFile="$(BlazorTasksPath)" />
|
|
|
|
|
|
<Target
|
|
|
Name="_LinkBlazorApplication"
|
|
|
@@ -171,7 +170,10 @@
|
|
|
Outputs="$(_BlazorLinkerOutputCache)">
|
|
|
|
|
|
<ItemGroup>
|
|
|
- <_BlazorDependencyAssembly Include="@(_BlazorDependencyInput)" IsLinkable="$([System.String]::Copy('%(FileName)').StartsWith('System.'))" />
|
|
|
+ <_BlazorDependencyAssembly Include="@(_BlazorDependencyInput)" />
|
|
|
+ <_BlazorDependencyAssembly IsLinkable="true" Condition="$([System.String]::Copy('%(Filename)').StartsWith('System.'))" />
|
|
|
+ <_BlazorDependencyAssembly IsLinkable="true" TypeGranularity="true" Condition="$([System.String]::Copy('%(Filename)').StartsWith('Microsoft.AspNetCore.'))" />
|
|
|
+ <_BlazorDependencyAssembly IsLinkable="true" TypeGranularity="true" Condition="$([System.String]::Copy('%(Filename)').StartsWith('Microsoft.Extensions.'))" />
|
|
|
|
|
|
<_BlazorAssemblyToLink Include="@(_WebAssemblyBCLAssembly)" />
|
|
|
<_BlazorAssemblyToLink Include="@(_BlazorDependencyAssembly)" Condition="'%(_BlazorDependencyAssembly.IsLinkable)' == 'true'" />
|
|
|
@@ -201,6 +203,15 @@
|
|
|
<_DotNetHostFileName Condition=" '$(OS)' == 'Windows_NT' ">dotnet.exe</_DotNetHostFileName>
|
|
|
</PropertyGroup>
|
|
|
|
|
|
+ <PropertyGroup>
|
|
|
+ <_TypeGranularityLinkingConfig>$(BlazorIntermediateOutputPath)linker.typegranularityconfig.xml</_TypeGranularityLinkingConfig>
|
|
|
+ </PropertyGroup>
|
|
|
+ <GenerateTypeGranularityLinkingConfig Assemblies="@(_BlazorAssemblyToLink->WithMetadataValue('TypeGranularity', 'true'))" OutputPath="$(_TypeGranularityLinkingConfig)" />
|
|
|
+ <ItemGroup>
|
|
|
+ <BlazorLinkerDescriptor Include="$(_TypeGranularityLinkingConfig)" />
|
|
|
+ <FileWrites Include="$(_TypeGranularityLinkingConfig)" />
|
|
|
+ </ItemGroup>
|
|
|
+
|
|
|
<BlazorILLink
|
|
|
ILLinkPath="$(MonoLinkerPath)"
|
|
|
AssemblyPaths="@(_BlazorAssemblyToLink)"
|
|
|
@@ -257,6 +268,8 @@
|
|
|
<Output TaskParameter="Dependencies" ItemName="_BlazorResolvedRuntimeDependencies" />
|
|
|
</ResolveBlazorRuntimeDependencies>
|
|
|
|
|
|
+ <WriteLinesToFile File="$(_BlazorApplicationAssembliesCacheFile)" Lines="@(_BlazorResolvedRuntimeDependencies)" Overwrite="true" />
|
|
|
+
|
|
|
<ItemGroup>
|
|
|
<FileWrites Include="$(_BlazorApplicationAssembliesCacheFile)" />
|
|
|
</ItemGroup>
|