@@ -1158,6 +1158,7 @@ because xbuild doesn't support framework reference assemblies.
11581158 <_AndroidLinkFlag >$(IntermediateOutputPath)link.flag</_AndroidLinkFlag >
11591159 <_AndroidApkPerAbiFlagFile >$(IntermediateOutputPath)android\bin\apk_per_abi.flag</_AndroidApkPerAbiFlagFile >
11601160 <_AndroidDebugKeyStoreFlag >$(IntermediateOutputPath)android_debug_keystore.flag</_AndroidDebugKeyStoreFlag >
1161+ <_RemoveRegisterFlag >$(MonoAndroidIntermediateAssemblyDir)shrunk\shrunk.flag</_RemoveRegisterFlag >
11611162 <_AcwMapFile >$(IntermediateOutputPath)acw-map.txt</_AcwMapFile >
11621163 <_CustomViewMapFile >$(IntermediateOutputPath)customview-map.txt</_CustomViewMapFile >
11631164 <_AndroidTypeMappingJavaToManaged >$(IntermediateOutputPath)android\typemap.jm</_AndroidTypeMappingJavaToManaged >
@@ -2040,6 +2041,18 @@ because xbuild doesn't support framework reference assemblies.
20402041 <Output TaskParameter =" Include" ItemName =" _ResolvedFrameworkAssemblies" />
20412042 </CreateItem >
20422043
2044+ <CreateItem
2045+ Include =" @(_ResolvedFrameworkAssemblies)"
2046+ Condition =" '$(AndroidLinkMode)' == 'None' OR '$(AndroidUseSharedRuntime)' == 'true'" >
2047+ <Output TaskParameter =" Include" ItemName =" _ShrunkFrameworkAssemblies" />
2048+ </CreateItem >
2049+
2050+ <CreateItem
2051+ Include =" @(_ResolvedFrameworkAssemblies->'$(MonoAndroidIntermediateAssemblyDir)shrunk\%(Filename)%(Extension)')"
2052+ Condition =" '$(AndroidLinkMode)' != 'None' AND '$(AndroidUseSharedRuntime)' != 'true'" >
2053+ <Output TaskParameter =" Include" ItemName =" _ShrunkFrameworkAssemblies" />
2054+ </CreateItem >
2055+
20432056 <CreateItem
20442057 Include =" @(_ResolvedUserAssemblies)"
20452058 Condition =" '%(_ResolvedUserAssemblies.TargetFrameworkIdentifier)' == 'MonoAndroid' Or '%(_ResolvedUserAssemblies.HasMonoAndroidReference)' == 'True'" >
@@ -2503,16 +2516,27 @@ because xbuild doesn't support framework reference assemblies.
25032516<Target Name =" _RemoveRegisterAttribute"
25042517 DependsOnTargets =" _PrepareAssemblies"
25052518 Inputs =" $(_AndroidLinkFlag)"
2506- Outputs =" $(_AndroidStampDirectory)_RemoveRegisterAttribute.stamp "
2519+ Outputs =" $(_RemoveRegisterFlag) "
25072520 Condition =" '$(AndroidLinkMode)' != 'None' AND '$(AndroidUseSharedRuntime)' != 'true'" >
2521+
2522+ <!-- Make a copy of every assembly into assets\shrunk -->
2523+ <Copy
2524+ SourceFiles =" @(_ResolvedFrameworkAssemblies)"
2525+ DestinationFiles =" @(_ShrunkFrameworkAssemblies)"
2526+ SkipUnchangedFiles =" true" />
2527+
2528+ <CopyIfChanged
2529+ SourceFiles =" @(_ResolvedFrameworkAssemblies->'%(Identity).config')"
2530+ DestinationFiles =" @(_ShrunkFrameworkAssemblies->'%(Identity).config')" />
25082531
25092532 <!-- Shrink Mono.Android.dll by removing attribute only needed for GenerateJavaStubs -->
25102533 <RemoveRegisterAttribute
25112534 Condition =" '$(AndroidLinkMode)' != 'None' AND '$(AndroidUseSharedRuntime)' != 'true'"
25122535 Deterministic =" $(Deterministic)"
2513- FrameworkAssemblies =" @(_ResolvedFrameworkAssemblies )" />
2536+ ShrunkFrameworkAssemblies =" @(_ShrunkFrameworkAssemblies )" />
25142537
2515- <Touch Files =" $(_AndroidStampDirectory)_RemoveRegisterAttribute.stamp" AlwaysCreate =" true" />
2538+ <MakeDir Directories =" $(MonoAndroidIntermediateAssemblyDir)shrunk" />
2539+ <Touch Files =" $(_RemoveRegisterFlag)" AlwaysCreate =" true" />
25162540</Target >
25172541
25182542<Target Name =" _ResolveSatellitePaths"
@@ -2654,7 +2678,8 @@ because xbuild doesn't support framework reference assemblies.
26542678 <_BuildApkEmbedInputs >
26552679 $(MSBuildAllProjects)
26562680 ;$(_PackagedResources)
2657- ;@(_ResolvedAssemblies)
2681+ ;@(_ResolvedUserAssemblies)
2682+ ;@(_ShrunkFrameworkAssemblies)
26582683 ;@(AndroidNativeLibrary)
26592684 ;@(_DexFile)
26602685 ;$(_AndroidBuildPropertiesCache)
@@ -2717,7 +2742,7 @@ because xbuild doesn't support framework reference assemblies.
27172742 Condition=" '$(BundleAssemblies)' == 'True'"
27182743 KeepTemp=" $(AndroidMakeBundleKeepTemporaryFiles)"
27192744 AndroidNdkDirectory=" $(_AndroidNdkDirectory)"
2720- Assemblies=" @(_ResolvedAssemblies );@(_AndroidResolvedSatellitePaths)"
2745+ Assemblies=" @(_ResolvedUserAssemblies );@(_AndroidResolvedSatellitePaths);@(_ShrunkFrameworkAssemblies )"
27212746 IncludePath=" $(MonoAndroidIncludeDirectory)"
27222747 SupportedAbis=" @(_BuildTargetAbis)"
27232748 TempOutputPath=" $(IntermediateOutputPath)"
@@ -2735,7 +2760,7 @@ because xbuild doesn't support framework reference assemblies.
27352760 BundleNativeLibraries =" $(_BundleResultNativeLibraries)"
27362761 EmbedAssemblies =" $(EmbedAssembliesIntoApk)"
27372762 ResolvedUserAssemblies =" @(_ResolvedUserAssemblies);@(_AndroidResolvedSatellitePaths)"
2738- ResolvedFrameworkAssemblies =" @(_ResolvedFrameworkAssemblies )"
2763+ ResolvedFrameworkAssemblies =" @(_ShrunkFrameworkAssemblies )"
27392764 NativeLibraries =" @(AndroidNativeLibrary)"
27402765 ApplicationSharedLibraries =" @(_ApplicationSharedLibrary)"
27412766 AdditionalNativeLibraryReferences =" @(_AdditionalNativeLibraryReferences)"
@@ -2764,7 +2789,7 @@ because xbuild doesn't support framework reference assemblies.
27642789 BundleNativeLibraries =" $(_BundleResultNativeLibraries)"
27652790 EmbedAssemblies =" $(EmbedAssembliesIntoApk)"
27662791 ResolvedUserAssemblies =" @(_ResolvedUserAssemblies);@(_AndroidResolvedSatellitePaths)"
2767- ResolvedFrameworkAssemblies =" @(_ResolvedFrameworkAssemblies )"
2792+ ResolvedFrameworkAssemblies =" @(_ShrunkFrameworkAssemblies )"
27682793 NativeLibraries =" @(AndroidNativeLibrary)"
27692794 ApplicationSharedLibraries =" @(_ApplicationSharedLibrary)"
27702795 AdditionalNativeLibraryReferences =" @(_AdditionalNativeLibraryReferences)"
0 commit comments