070c271def
* [Linker] Remove bundled mscorlib.xml descriptor from mmp and mtouch This fixes xamarin/xamarin-macios#3749 We currently process both mscorlib.xml descriptors[1] from the mtouch/mmp bundle and also the one contained in mscorlib.dll as resource, we are now removing the descriptor bundled inside mtouch and mmp in favour of the one bundled in mscorlib.dll. Source descriptors files for diff: mono (master): |
||
---|---|---|
.. | ||
MonoTouch.Tuner | ||
ApplyPreserveAttribute.cs | ||
BaseProfile.cs | ||
ChangeLog | ||
CoreHttpMessageHandler.cs | ||
CoreMarkStep.cs | ||
CoreOptimizeGeneratedCode.cs | ||
CorePreserveCode.cs | ||
CoreRemoveAttributes.cs | ||
CoreRemoveSecurity.cs | ||
CoreSweepStep.cs | ||
CoreTypeMapStep.cs | ||
ExceptionalSubStep.cs | ||
MarkNSObjects.cs | ||
MobileExtensions.cs | ||
MobileMarkStep.cs | ||
MobileProfile.cs | ||
MobileRemoveAttributes.cs | ||
MobileResolveMainAssemblyStep.cs | ||
MobileSweepStep.cs | ||
ObjCExtensions.cs | ||
README.linker | ||
RemoveSelectors.cs | ||
RemoveUserResourcesSubStep.cs |
README.linker
README.linker Q: Why some stuff is not linked out ? A: In most case this is because: a) the BCL uses it internally b) the mono runtime depends on the type, methods, class layout = mscorlib.dll = System.Security.PermissionSet * Assembly has (3) fields of that type * mscorlib.xml preserve all fields from Assembly (object-internals.h) * code is "stubified" by the linker System.Security.Policy.ApplicationTrust: * Used as a field in AppDomainSetup; * Field also exists in unmanaged code (domain-internals.h); * mscorlib.xml preserve all fields from AppDomainSetup * only the default .ctor remains and is stubified by the linker System.Security.Policy.Evidence * Used by AppDomain.Load[Assembly] * Used by Assembly.LoadWithPartialName overloads * code is "stubified" by the linker = System.dll = System.Text.RegularExpressions.* * Included because there is 2 regex in UriParser