xamarin-macios/tools/linker
Rolf Bjarne Kvinge b87db48344
[mtouch] Make 'MonoTouch.Dialog-1' and 'MonoTouch.NUnitLite' SDK assemblies, not product assemblies. Fixes #12862. (#12919)
The "product assembly" is supposed to be Xamarin.iOS.dll, Xamarin.Mac.dll,
etc., not other assemblies, so fix the implementation to reflect this. The
original commit where MonoTouch.Dialog-1 and MonoTouch.NUnitLite were
introduced as platform assemblies is quite old [1], and doesn't explain much,
but I believe the intention was to make us treat these assemblies as *SDK*
assemblies and link them accordingly, so I made these assemblies SDK assemblies now.

Additionally remove "Xamarin.iOS" as a hardcoded platform assembly for Mac
Catalyst, because this particular code is exclusive to legacy Xamarin, and Mac
Catalyst support will only be included in our .NET release, which means this
code does not have any purpose here, and might even break something one day.

[1]: 0349f8d47f

Fixes https://github.com/xamarin/xamarin-macios/issues/12862.
2021-10-04 19:14:34 +02:00
..
MonoTouch.Tuner [mtouch] Make 'MonoTouch.Dialog-1' and 'MonoTouch.NUnitLite' SDK assemblies, not product assemblies. Fixes #12862. (#12919) 2021-10-04 19:14:34 +02:00
ApplyPreserveAttribute.cs Fixes for .NET 6 linker (#11739) 2021-06-14 20:10:29 -04:00
BaseProfile.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
ChangeLog Build mmp. 2016-04-24 14:47:26 -04:00
CoreHttpMessageHandler.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
CoreMarkStep.cs [linker] Fix infinite queue found with nullability PR (#8337) 2020-04-10 10:59:01 -04:00
CoreOptimizeGeneratedCode.cs [tests] Add .NET version of link all for macOS. (#12436) 2021-08-17 16:39:43 +02:00
CorePreserveCode.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
CoreRemoveAttributes.cs [linker] Always create the [Core]RemoveAttributes steps, and instead detect if it should be active using the LinkContext field. 2020-05-07 15:51:38 +02:00
CoreRemoveSecurity.cs [linker] Always create the CoreRemoveSecurity step, and instead detect if it should be active using the LinkContext field. 2020-05-07 15:51:38 +02:00
CoreSweepStep.cs [linker] Find linked away interfaces when resolving removed interfaces. Fixes #3513. (#3515) (#3524) 2018-02-19 15:24:40 +01:00
CoreTypeMapStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
CustomSymbolWriter.cs [mtouch] Use a custom symbol writer to ensure only pdb file names are written to assemblies. 2019-02-13 14:59:34 +01:00
ExceptionalSubStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
MarkNSObjects.cs Fixes for .NET 6 linker (#11739) 2021-06-14 20:10:29 -04:00
MobileApplyPreserveAttribute.cs [dotnet-linker] Add ApplyPreserveAttribute into the pipeline. (#9529) 2020-08-27 18:30:19 +02:00
MobileExtensions.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
MobileMarkStep.cs [linker] Remove code to deal with ExportedTypes (#8632) 2020-05-21 08:44:48 -04:00
MobileProfile.cs [mtouch] Make 'MonoTouch.Dialog-1' and 'MonoTouch.NUnitLite' SDK assemblies, not product assemblies. Fixes #12862. (#12919) 2021-10-04 19:14:34 +02:00
MobileRemoveAttributes.cs [linker] Remove internal [NullablePublicOnly] attribute from apps (#8568) 2020-05-11 19:39:43 -04:00
MobileResolveMainAssemblyStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
MobileSweepStep.cs [linker] Remove code to deal with ExportedTypes (#8632) 2020-05-21 08:44:48 -04:00
ObjCExtensions.cs [ThreadNetwork] Add new framework Xcode 13 beta 5. (#12533) 2021-08-26 18:15:31 -04:00
README.linker Build mmp. 2016-04-24 14:47:26 -04:00
RegistrarRemovalTrackingStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
RemoveRejectedTypesStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
RemoveSelectors.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
RemoveUserResourcesSubStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
ScanTypeReferenceStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00

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