Skip to content

Commit 20e10bf

Browse files
committed
Make it default for .NET 6
1 parent f72a6ae commit 20e10bf

File tree

7 files changed

+71
-78
lines changed

7 files changed

+71
-78
lines changed

src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/LinkDesignerBase.cs

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -92,21 +92,6 @@ protected Dictionary<string, int> BuildResourceDesignerFieldLookup (TypeDefiniti
9292
return output;
9393
}
9494

95-
protected Dictionary<string, int> BuildResourceDesignerFieldLookup (TypeDefinition type)
96-
{
97-
var output = new Dictionary<string, int> ();
98-
foreach (TypeDefinition definition in type.NestedTypes)
99-
{
100-
foreach (FieldDefinition field in definition.Fields)
101-
{
102-
string key = $"{definition.Name}::{field.Name}";
103-
if (!output.ContainsKey (key))
104-
output.Add(key, int.Parse (field.Constant?.ToString () ?? "0"));
105-
}
106-
}
107-
return output;
108-
}
109-
11095
protected void FixType (TypeDefinition type, TypeDefinition localDesigner)
11196
{
11297
foreach (MethodDefinition method in type.Methods)

src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.DefaultProperties.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<AndroidEnableSGenConcurrent Condition=" '$(AndroidEnableSGenConcurrent)' == '' ">true</AndroidEnableSGenConcurrent>
1111
<AndroidHttpClientHandlerType Condition=" '$(AndroidHttpClientHandlerType)' == '' and '$(UsingAndroidNETSdk)' == 'true' ">Xamarin.Android.Net.AndroidMessageHandler</AndroidHttpClientHandlerType>
1212
<AndroidHttpClientHandlerType Condition=" '$(AndroidHttpClientHandlerType)' == '' and '$(UsingAndroidNETSdk)' != 'true' ">Xamarin.Android.Net.AndroidClientHandler</AndroidHttpClientHandlerType>
13-
<AndroidUseDesignerAssembly Condition=" '$(AndroidUseDesignerAssembly)' == '' ">false</AndroidUseDesignerAssembly>
13+
<AndroidUseDesignerAssembly Condition=" '$(AndroidUseDesignerAssembly)' == '' ">true</AndroidUseDesignerAssembly>
1414
<AndroidGenerateResourceDesigner Condition=" '$(AndroidUseDesignerAssembly)' == 'True' ">false</AndroidGenerateResourceDesigner>
1515
<AndroidGenerateResourceDesigner Condition=" '$(AndroidGenerateResourceDesigner)' == '' ">true</AndroidGenerateResourceDesigner>
1616
<AndroidUseIntermediateDesignerFile Condition=" '$(AndroidUseIntermediateDesignerFile)' == '' ">$(AndroidGenerateResourceDesigner)</AndroidUseIntermediateDesignerFile>

src/Xamarin.Android.Build.Tasks/Tasks/GenerateResourceDesignerIntermediateClass.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ public partial class Resource : Xamarin.Android.Resource.Designer.Resource {
2323
namespace %NAMESPACE%
2424
2525
type Resource = Xamarin.Android.Resource.Designer.Resource
26+
";
27+
28+
private const string VBTemplate = @"// This is an Auto Generated file DO NOT EDIT
29+
Class Resource
30+
Inherits Xamarin.Android.Resource.Designer.Resource
31+
End Class
2632
";
2733

2834
public string Namespace { get; set; }
@@ -31,14 +37,16 @@ public override bool RunTask ()
3137
{
3238
var extension = Path.GetExtension (OutputFile.ItemSpec);
3339
var language = string.Compare (extension, ".fs", StringComparison.OrdinalIgnoreCase) == 0 ? "F#" : CodeDomProvider.GetLanguageFromExtension (extension);
34-
//bool isVB = string.Equals (extension, ".vb", StringComparison.OrdinalIgnoreCase);
40+
bool isVB = string.Equals (extension, ".vb", StringComparison.OrdinalIgnoreCase);
3541
bool isFSharp = string.Equals (language, "F#", StringComparison.OrdinalIgnoreCase);
3642
bool isCSharp = string.Equals (language, "C#", StringComparison.OrdinalIgnoreCase);
3743
string template = "";
3844
if (isCSharp)
3945
template = CSharpTemplate.Replace ("%NAMESPACE%", Namespace);
4046
else if (isFSharp)
4147
template = FSharpTemplate.Replace ("%NAMESPACE%", Namespace);
48+
else if (isVB)
49+
template = VBTemplate.Replace ("%NAMESPACE%", Namespace);
4250

4351

4452
File.WriteAllText (OutputFile.ItemSpec, template, System.Text.Encoding.UTF8);

src/Xamarin.Android.Build.Tasks/Utilities/RtxtParser.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ public class RtxtParser {
3030
TaskLoggingHelper log;
3131
Dictionary<string, string> map;
3232

33-
Dictionary<string, string> resource_fixup = new Dictionary<string, string> (StringComparer.OrdinalIgnoreCase);
3433
public Dictionary<string, R> Parse (string file, TaskLoggingHelper logger, Dictionary<string, string> mapping){
3534
log = logger;
3635
map = mapping;
@@ -47,7 +46,7 @@ void ProcessRtxtFile (string file, Dictionary<string, R> result)
4746
foreach (var line in lines) {
4847
var items = line.Split (new char [] { ' ' }, 4);
4948
int value = items [1] != "styleable" ? Convert.ToInt32 (items [3], 16) : -1;
50-
string itemName = ResourceIdentifier.GetResourceName(items [1], items [2], resource_fixup, log);
49+
string itemName = ResourceIdentifier.GetResourceName(items [1], items [2], map, log);
5150
string itemKey = $"{items [1]}:{itemName}";
5251
switch (items [1]) {
5352
case "anim":

src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -962,60 +962,6 @@ because xbuild doesn't support framework reference assemblies.
962962
</ItemGroup>
963963
</Target>
964964

965-
<Target Name="_BeforeManagedUpdateAndroidResgen">
966-
<PropertyGroup>
967-
<_ManagedUpdateAndroidResgenInputs>
968-
@(_AndroidMSBuildAllProjects);
969-
@(AndroidResource);
970-
@(AndroidBoundLayout);
971-
@(_MonoAndroidReferencePath);
972-
@(_LibraryResourceDirectoryStamps);
973-
$(_AndroidBuildPropertiesCache);
974-
$(ProjectAssetsFile);
975-
</_ManagedUpdateAndroidResgenInputs>
976-
</PropertyGroup>
977-
<PropertyGroup>
978-
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidResourcePathsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidResourcePathsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
979-
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidLibraryImportsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidLibraryImportsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
980-
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidLibraryProjectImportsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidLibraryProjectImportsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
981-
</PropertyGroup>
982-
</Target>
983-
984-
<!-- Managed DesignTime Resource Generation -->
985-
<Target Name="_ManagedUpdateAndroidResgen" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And '$(AndroidUseDesignerAssembly)' != 'True' "
986-
Inputs="$(_ManagedUpdateAndroidResgenInputs)"
987-
Outputs="$(_AndroidManagedResourceDesignerFile)"
988-
DependsOnTargets="_CreatePropertiesCache;_ExtractLibraryProjectImports;_ValidateAndroidPackageProperties;_GenerateResourceCaseMap;_BeforeManagedUpdateAndroidResgen">
989-
<MakeDir Directories="$(_AndroidIntermediateDesignTimeBuildDirectory)" />
990-
<!-- Parse primary R.java and create Resources.Designer.cs -->
991-
<GenerateResourceDesigner
992-
ContinueOnError="$(DesignTimeBuild)"
993-
NetResgenOutputFile="$(_AndroidManagedResourceDesignerFile)"
994-
JavaResgenInputFile="$(_GeneratedPrimaryJavaResgenFile)"
995-
RTxtFile="$(IntermediateOutputPath)R.txt"
996-
Namespace="$(AndroidResgenNamespace)"
997-
ProjectDir="$(ProjectDir)"
998-
Resources="@(AndroidResource);@(AndroidBoundLayout)"
999-
ResourceDirectory="$(MonoAndroidResourcePrefix)"
1000-
AdditionalResourceDirectories="@(LibraryResourceDirectories)"
1001-
IsApplication="$(AndroidApplication)"
1002-
References="@(_MonoAndroidReferencePath)"
1003-
UseManagedResourceGenerator="True"
1004-
DesignTimeBuild="$(DesignTimeBuild)"
1005-
JavaPlatformJarPath="$(JavaPlatformJarPath)"
1006-
ResourceFlagFile="$(_AndroidResFlagFile)"
1007-
CaseMapFile="$(_GenerateResourceCaseMapFile)"
1008-
Condition="Exists ('$(MonoAndroidResourcePrefix)')"
1009-
/>
1010-
<Touch Condition="Exists ('$(_AndroidManagedResourceDesignerFile)')" Files="$(_AndroidManagedResourceDesignerFile)" />
1011-
<ItemGroup>
1012-
<CorrectCasedItem Include="%(Compile.Identity)" Condition="'%(Compile.Identity)' == '$(AndroidResgenFile)'"/>
1013-
<CorrectCasedItem Include="%(Compile.Identity)" Condition="'%(Compile.Identity)' == 'Resources\Resource.designer.cs'"/>
1014-
<Compile Remove="@(CorrectCasedItem)" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And '%(CorrectCasedItem.Identity)' != '' "/>
1015-
<Compile Include="$(_AndroidManagedResourceDesignerFile)" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And Exists ('$(_AndroidManagedResourceDesignerFile)')" />
1016-
</ItemGroup>
1017-
</Target>
1018-
1019965
<!-- Resource Build -->
1020966

1021967
<Target Name="_UpdateAndroidResources"

src/Xamarin.Android.Build.Tasks/Xamarin.Android.DesignTime.targets

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,58 @@ This file is used by all project types, including binding projects.
5353
/>
5454
</Target>
5555

56+
<Target Name="_BeforeManagedUpdateAndroidResgen">
57+
<PropertyGroup>
58+
<_ManagedUpdateAndroidResgenInputs>
59+
@(_AndroidMSBuildAllProjects);
60+
@(AndroidResource);
61+
@(AndroidBoundLayout);
62+
@(_MonoAndroidReferencePath);
63+
@(_LibraryResourceDirectoryStamps);
64+
$(_AndroidBuildPropertiesCache);
65+
$(ProjectAssetsFile);
66+
</_ManagedUpdateAndroidResgenInputs>
67+
</PropertyGroup>
68+
<PropertyGroup>
69+
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidResourcePathsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidResourcePathsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
70+
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidLibraryImportsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidLibraryImportsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
71+
<_ManagedUpdateAndroidResgenInputs Condition="Exists ('$(_AndroidLibraryProjectImportsDesignTimeCache)')">$(_ManagedUpdateAndroidResgenInputs);$(_AndroidLibraryProjectImportsDesignTimeCache);</_ManagedUpdateAndroidResgenInputs>
72+
</PropertyGroup>
73+
</Target>
74+
75+
<!-- Managed DesignTime Resource Generation -->
76+
<Target Name="_ManagedUpdateAndroidResgen" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And '$(AndroidUseDesignerAssembly)' != 'True' "
77+
Inputs="$(_ManagedUpdateAndroidResgenInputs)"
78+
Outputs="$(_AndroidManagedResourceDesignerFile)"
79+
DependsOnTargets="_CreatePropertiesCache;_ExtractLibraryProjectImports;_ValidateAndroidPackageProperties;_GenerateResourceCaseMap;_BeforeManagedUpdateAndroidResgen">
80+
<MakeDir Directories="$(_AndroidIntermediateDesignTimeBuildDirectory)" />
81+
<!-- Parse primary R.java and create Resources.Designer.cs -->
82+
<GenerateResourceDesigner
83+
ContinueOnError="$(DesignTimeBuild)"
84+
NetResgenOutputFile="$(_AndroidManagedResourceDesignerFile)"
85+
JavaResgenInputFile="$(_GeneratedPrimaryJavaResgenFile)"
86+
RTxtFile="$(IntermediateOutputPath)R.txt"
87+
Namespace="$(AndroidResgenNamespace)"
88+
ProjectDir="$(ProjectDir)"
89+
Resources="@(AndroidResource);@(AndroidBoundLayout)"
90+
ResourceDirectory="$(MonoAndroidResourcePrefix)"
91+
AdditionalResourceDirectories="@(LibraryResourceDirectories)"
92+
IsApplication="$(AndroidApplication)"
93+
References="@(_MonoAndroidReferencePath)"
94+
UseManagedResourceGenerator="True"
95+
DesignTimeBuild="$(DesignTimeBuild)"
96+
JavaPlatformJarPath="$(JavaPlatformJarPath)"
97+
ResourceFlagFile="$(_AndroidResFlagFile)"
98+
CaseMapFile="$(_GenerateResourceCaseMapFile)"
99+
Condition="Exists ('$(MonoAndroidResourcePrefix)')"
100+
/>
101+
<Touch Condition="Exists ('$(_AndroidManagedResourceDesignerFile)')" Files="$(_AndroidManagedResourceDesignerFile)" />
102+
<ItemGroup>
103+
<CorrectCasedItem Include="%(Compile.Identity)" Condition="'%(Compile.Identity)' == '$(AndroidResgenFile)'"/>
104+
<CorrectCasedItem Include="%(Compile.Identity)" Condition="'%(Compile.Identity)' == 'Resources\Resource.designer.cs'"/>
105+
<Compile Remove="@(CorrectCasedItem)" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And '%(CorrectCasedItem.Identity)' != '' "/>
106+
<Compile Include="$(_AndroidManagedResourceDesignerFile)" Condition=" '$(ManagedDesignTimeBuild)' == 'True' And Exists ('$(_AndroidManagedResourceDesignerFile)')" />
107+
</ItemGroup>
108+
</Target>
109+
56110
</Project>

src/Xamarin.Android.Build.Tasks/Xamarin.Android.VisualBasic.targets

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ Copyright (C) 2012 Xamarin Inc. All rights reserved.
1717
<!--
1818
*******************************************
1919
Extensibility hook that allows VS to
20-
provide extra behavior without modifying
20+
provide extra behavior without modifying
2121
the core targets.
2222
*******************************************
2323
-->
24-
<Import Project="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).Before.targets"
24+
<Import Project="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).Before.targets"
2525
Condition="Exists('$(MSBuildThisFileDirectory)$(MSBuildThisFileName).Before.targets')"/>
2626
<PropertyGroup>
2727
<TargetFrameworkIdentifier>MonoAndroid</TargetFrameworkIdentifier>
@@ -31,16 +31,17 @@ Copyright (C) 2012 Xamarin Inc. All rights reserved.
3131
<NoStdLib>true</NoStdLib>
3232
<!-- Enable nuget package conflict resolution -->
3333
<ResolveAssemblyConflicts>true</ResolveAssemblyConflicts>
34+
<_AndroidResourceDesigner>Resource.designer.vb</_AndroidResourceDesigner>
3435
</PropertyGroup>
3536
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
3637
<Import Project="Xamarin.Android.Common.targets" />
3738
<!--
3839
*******************************************
3940
Extensibility hook that allows VS to
40-
provide extra behavior without modifying
41+
provide extra behavior without modifying
4142
the core targets.
4243
*******************************************
4344
-->
44-
<Import Project="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).After.targets"
45-
Condition="Exists('$(MSBuildThisFileDirectory)$(MSBuildThisFileName).After.targets')"/>
45+
<Import Project="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).After.targets"
46+
Condition="Exists('$(MSBuildThisFileDirectory)$(MSBuildThisFileName).After.targets')"/>
4647
</Project>

0 commit comments

Comments
 (0)