-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDirectory.Build.targets
More file actions
119 lines (109 loc) · 6.05 KB
/
Copy pathDirectory.Build.targets
File metadata and controls
119 lines (109 loc) · 6.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?xml version="1.0" encoding="utf-8"?>
<Project>
<PropertyGroup>
<PackMauiItems Condition="'$(PackMauiItems)' == ''">true</PackMauiItems>
<!-- Defaults to '$(PackageId).targets' if no path was specified -->
<PackMauiItemsTargetsFileName Condition="'$(PackMauiItemsTargetsFileName)' == ''"></PackMauiItemsTargetsFileName>
<PackMauiItemsExcludes>**\.DS_Store</PackMauiItemsExcludes>
</PropertyGroup>
<!-- Collect all .NET MAUI items -->
<ItemGroup Condition="'$(TargetFramework)' == '' and '$(PackMauiItems)' == 'true'">
<_SafeMauiImage Include="@(MauiImage)" Exclude="$(PackMauiItemsExcludes)" />
<_SafeMauiIcon Include="@(MauiIcon)" Exclude="$(PackMauiItemsExcludes)" />
<_SafeMauiSplashScreen Include="@(MauiSplashScreen)" Exclude="$(PackMauiItemsExcludes)" />
<_SafeMauiAsset Include="@(MauiAsset)" Exclude="$(PackMauiItemsExcludes)" />
<_SafeMauiFont Include="@(MauiFont)" Exclude="$(PackMauiItemsExcludes)" />
<!-- MauiImage -->
<_PackageFiles Include="@(_SafeMauiImage)" Pack="True" PackagePath="buildTransitive\_MauiItems\Images\%(Filename)%(Extension)" />
<_MauiImageForegroundProxy Include="@(_SafeMauiImage->HasMetadata('ForegroundFile'))" BackgroundFile="%(Filename)%(Extension)" />
<_PackageFiles Include="@(_MauiImageForegroundProxy->'%(ForegroundFile)')" Pack="True" PackagePath="buildTransitive\_MauiItems\Images\Foreground\%(BackgroundFile)" />
<!-- MauiIcon -->
<_PackageFiles Include="@(_SafeMauiIcon)" Pack="True" PackagePath="buildTransitive\_MauiItems\AppIcon\%(Filename)%(Extension)" />
<_MauiIconForegroundProxy Include="@(_SafeMauiIcon->HasMetadata('ForegroundFile'))" BackgroundFile="%(Filename)%(Extension)" />
<_PackageFiles Include="@(_MauiIconForegroundProxy->'%(ForegroundFile)')" Pack="True" PackagePath="buildTransitive\_MauiItems\AppIcon\Foreground\%(BackgroundFile)" />
<!-- MauiSplashScreen -->
<_PackageFiles Include="@(_SafeMauiSplashScreen)" Pack="True" PackagePath="buildTransitive\_MauiItems\Splash\%(Filename)%(Extension)" />
<!-- MauiFont -->
<_PackageFiles Include="@(_SafeMauiFont)" Pack="True" PackagePath="buildTransitive\_MauiItems\Fonts\%(Filename)%(Extension)" />
<!-- MauiAsset -->
<_PackageFiles Include="@(_SafeMauiAsset)" Pack="True" PackagePath="buildTransitive\_MauiItems\Raw\%(RecursiveDir)%(Filename)%(Extension)" />
</ItemGroup>
<Target Name="GenerateIncludeMauiItemsTargets" BeforeTargets="GenerateNuspec" Condition="'$(PackMauiItems)' == 'true'">
<PropertyGroup>
<_IncludeMauiItemsTargetsBoilerplate>
<![CDATA[
<Project>
<ItemGroup>
{{MauiItems}}
</ItemGroup>
</Project>
]]>
</_IncludeMauiItemsTargetsBoilerplate>
</PropertyGroup>
<!-- Add all items to the generated targets file -->
<ItemGroup>
<!-- MauiImage -->
<_IncludeMauiItems Include="@(_SafeMauiImage->'<MauiImage
Include="%24(MSBuildThisFileDirectory)_MauiItems\Images\%(Filename)%(Extension)"
Link="%(Link)"
BaseSize="%(BaseSize)"
Resize="%(Resize)"
TintColor="%(TintColor)"
Color="%(Color)"
Visible="False"
/>')" />
<!-- MauiIcon -->
<_IncludeMauiItems Include="@(_SafeMauiIcon->'<MauiIcon
Include="%24(MSBuildThisFileDirectory)_MauiItems\AppIcon\%(Filename)%(Extension)"
ForegroundFile="%24(MSBuildThisFileDirectory)_MauiItems\AppIcon\Foreground\%(Filename)%(Extension)"
Link="%(Link)"
BaseSize="%(BaseSize)"
Resize="%(Resize)"
TintColor="%(TintColor)"
Color="%(Color)"
ForegroundScale="%(ForegroundScale)"
Visible="False"
/>')" />
<!-- MauiSplashScreen -->
<_IncludeMauiItems Include="@(_SafeMauiSplashScreen->'<MauiSplashScreen
Include="%24(MSBuildThisFileDirectory)_MauiItems\Splash\%(Filename)%(Extension)"
Link="%(Link)"
BaseSize="%(BaseSize)"
Resize="%(Resize)"
TintColor="%(TintColor)"
Color="%(Color)"
Visible="False"
/>')" />
<!-- MauiFont -->
<_IncludeMauiItems Include="@(_SafeMauiFont->'<MauiFont
Include="%24(MSBuildThisFileDirectory)_MauiItems\Fonts\%(Filename)%(Extension)"
Link="%(Link)"
Visible="False"
/>')" />
<!-- MauiAsset -->
<_IncludeMauiItems Include="@(_SafeMauiAsset->'<MauiAsset
Include="%24(MSBuildThisFileDirectory)_MauiItems\Raw\%(RecursiveDir)%(Filename)%(Extension)"
Link="%(Link)"
LogicalName="%(LogicalName)"
Visible="False"
/>')" />
</ItemGroup>
<!-- Generate the targets file -->
<PropertyGroup>
<_IncludeMauiItem>@(_IncludeMauiItems, '%0A ')</_IncludeMauiItem>
<_IncludeMauiItemsTargetsBoilerplate>$(_IncludeMauiItemsTargetsBoilerplate.Replace('{{MauiItems}}', '$(_IncludeMauiItem)'))</_IncludeMauiItemsTargetsBoilerplate>
<_FinalPackMauiItemsTargetsFileName>$(PackageId).targets</_FinalPackMauiItemsTargetsFileName>
</PropertyGroup>
<ItemGroup>
<_IncludeMauiItemsTargetsLines Include="$(_IncludeMauiItemsTargetsBoilerplate)" />
</ItemGroup>
<WriteLinesToFile File="$(IntermediateOutputPath)_IncludeMauiAssets.g.targets"
Lines="@(_IncludeMauiItemsTargetsLines)"
Overwrite="true"
WriteOnlyWhenDifferent="true" />
<ItemGroup>
<FileWrites Include="$(IntermediateOutputPath)_IncludeMauiAssets.g.targets" />
<_PackageFiles Include="$(IntermediateOutputPath)_IncludeMauiAssets.g.targets" Pack="True" PackagePath="buildTransitive\$(_FinalPackMauiItemsTargetsFileName)" />
</ItemGroup>
</Target>
</Project>