Skip to content

Commit

Permalink
Fix MonoCrossAOT.UnixFilePermissions for wasm (#54693)
Browse files Browse the repository at this point in the history
* Fix MonoCrossAOT.UnixFilePermissions for wasm

We introduced Microsoft.NETCore.App.MonoCrossAOT.UnixFilePermissions.xml in #54501 to make sure the right permissions are set when installing AOT compiler workload packs.  We hardcoded the list to include mono-aot-cross, llc, and opt.  However, in wasm's case they only have mono-aot-cross.

This change makes the xml file a template and only includes mono-aot-cross for browser and all three for the other configurations.

Fixes #54612

* Use property instead of item for the file nodes

* Ankit suggestion

Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
  • Loading branch information
steveisok and Steve Pfister authored Jun 24, 2021
1 parent 5306472 commit 20ff641
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 8 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<FileList>
${PermissionsProperties}
</FileList>
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,29 @@
</PropertyGroup>

<ItemGroup>
<NativeRuntimeAsset Include="$(MonoAotCrossDir)$(TargetCrossRid)\**" TargetPath="tools/" />
<_ToolFile Include="$(MonoAotCrossDir)$(TargetCrossRid)\**" />
<NativeRuntimeAsset Include="@(_ToolFile)" TargetPath="tools/" />
<NativeRuntimeAsset Include="$(MonoAotCrossDir)$(TargetCrossRid).Sdk.props" TargetPath="Sdk/Sdk.props" />
<NativeRuntimeAsset Condition="!$([MSBuild]::IsOsPlatform('Windows'))" Include="Microsoft.NETCore.App.MonoCrossAOT.UnixFilePermissions.xml" TargetPath="data/UnixFilePermissions.xml" />
<NativeRuntimeAsset Condition="!$([MSBuild]::IsOsPlatform('Windows'))" Include="$(MonoAotCrossDir)Microsoft.NETCore.App.MonoCrossAOT.UnixFilePermissions.xml" TargetPath="data/UnixFilePermissions.xml" />
</ItemGroup>

<Target Name="WriteAotSdkProps" BeforeTargets="ValidateProperties">
<Target Name="WriteTemplateFiles" BeforeTargets="ValidateProperties">
<ItemGroup>
<_SdkPropsProperties Condition="!$([MSBuild]::IsOsPlatform('Windows'))" Include="ExeSuffix" Value="" />
<_SdkPropsProperties Condition="$([MSBuild]::IsOsPlatform('Windows'))" Include="ExeSuffix" Value=".exe" />
<_SdkPropsProperties Include="TargetRid" Value="$(TargetCrossRid)" />
</ItemGroup>
<PropertyGroup>
<_PermissionsFiles>@(_ToolFile -> '&lt;File Path=&quot;tools/%(RecursiveDir)%(FileName)%(Extension)&quot; Permission=&quot;755&quot; /&gt;', ' ')</_PermissionsFiles>
</PropertyGroup>
<ItemGroup>
<_PermissionsProperties Include="PermissionsProperties" Value="$(_PermissionsFiles)" />
</ItemGroup>
<GenerateFileFromTemplate
Condition="!$([MSBuild]::IsOsPlatform('Windows'))"
TemplateFile="Microsoft.NETCore.App.MonoCrossAOT.UnixFilePermissions.xml.in"
Properties="@(_PermissionsProperties)"
OutputPath="$(MonoAotCrossDir)Microsoft.NETCore.App.MonoCrossAOT.UnixFilePermissions.xml" />
<GenerateFileFromTemplate
TemplateFile="Microsoft.NETCore.App.MonoCrossAOT.Sdk.props.in"
Properties="@(_SdkPropsProperties)"
Expand Down

0 comments on commit 20ff641

Please sign in to comment.