-
Notifications
You must be signed in to change notification settings - Fork 414
Expand file tree
/
Copy pathUnitsNet.Modular.LocalPackages.targets
More file actions
98 lines (89 loc) · 7.16 KB
/
Copy pathUnitsNet.Modular.LocalPackages.targets
File metadata and controls
98 lines (89 loc) · 7.16 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
<Project>
<PropertyGroup>
<!--
Repository-only sample settings. These are custom UnitsNet.Modular properties, not built-in
MSBuild properties. Package-facing samples always restore from the repository-local feed.
-->
<RepositoryLocalNuGetFeed
Condition="'$(RepositoryLocalNuGetFeed)' == ''">$(MSBuildThisFileDirectory)..\..\Artifacts\Nugets</RepositoryLocalNuGetFeed>
<UnitsNetModularSampleLocalFeed
Condition="'$(UnitsNetModularSampleLocalFeed)' == ''">$(RepositoryLocalNuGetFeed)</UnitsNetModularSampleLocalFeed>
<UnitsNetModularSampleLocalVersion
Condition="'$(UnitsNetModularSampleLocalVersion)' == ''">6.0.0-local.dev.*</UnitsNetModularSampleLocalVersion>
<!-- Retain the original singular switch as a compatibility alias for existing commands. -->
<UnitsNetModularSampleUpdateLocalPackagesOnBuild
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == '' and '$(UnitsNetModularSampleUpdateLocalPackageOnBuild)' != ''">$(UnitsNetModularSampleUpdateLocalPackageOnBuild)</UnitsNetModularSampleUpdateLocalPackagesOnBuild>
<UnitsNetModularSampleUpdateLocalPackagesOnBuild
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == ''">true</UnitsNetModularSampleUpdateLocalPackagesOnBuild>
<!-- Leading underscores follow the MSBuild convention for implementation-private properties. -->
<_UnitsNetModularSourceRoot>$(MSBuildThisFileDirectory)..\</_UnitsNetModularSourceRoot>
<_UnitsNetModularSourceProject>$(_UnitsNetModularSourceRoot)UnitsNet.Modular\UnitsNet.Modular.csproj</_UnitsNetModularSourceProject>
<_UnitsNetModularSampleLocalPackStamp>$(UnitsNetModularSampleLocalFeed)\.UnitsNet.Modular.local-pack.stamp</_UnitsNetModularSampleLocalPackStamp>
<_UnitsNetModularSampleAdditionalLocalPackStamp>$(UnitsNetModularSampleLocalFeed)\.$(MSBuildProjectName).additional-local-pack.stamp</_UnitsNetModularSampleAdditionalLocalPackStamp>
<!-- MinVer cannot distinguish uncommitted edits, so local packages use a unique override. -->
<_UnitsNetModularSampleLocalPackageVersion>6.0.0-local.dev.$([System.DateTime]::UtcNow.ToString('yyyyMMddHHmmssfff'))</_UnitsNetModularSampleLocalPackageVersion>
</PropertyGroup>
<ItemGroup>
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)UnitsNet.Modular\**\*"
Exclude="$(_UnitsNetModularSourceRoot)UnitsNet.Modular\bin\**;$(_UnitsNetModularSourceRoot)UnitsNet.Modular\obj\**" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)UnitsNet.Modular.Generator\**\*"
Exclude="$(_UnitsNetModularSourceRoot)UnitsNet.Modular.Generator\bin\**;$(_UnitsNetModularSourceRoot)UnitsNet.Modular.Generator\obj\**" />
<_UnitsNetModularLocalPackageInput Include="$(MSBuildThisFileFullPath)" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)ARCHITECTURE.md" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)README.md" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)THIRD-PARTY-NOTICES.md" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)Directory.Build.props" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)Directory.Build.targets" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)Directory.Packages.props" />
<_UnitsNetModularLocalPackageInput Include="$(_UnitsNetModularSourceRoot)..\Docs\Images\logo-32.png" />
</ItemGroup>
<Target Name="_PackLocalUnitsNetModularPackage"
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == 'true'"
Inputs="@(_UnitsNetModularLocalPackageInput)"
Outputs="$(_UnitsNetModularSampleLocalPackStamp)">
<Message Importance="high" Text="Packing the latest local UnitsNet.Modular package..." />
<Exec Command="dotnet pack "$(_UnitsNetModularSourceProject)" --configuration Release --output "$(UnitsNetModularSampleLocalFeed)" -p:Platform=ProjectReferences -p:MinVerVersionOverride=$(_UnitsNetModularSampleLocalPackageVersion)" />
<PropertyGroup>
<_UnitsNetModularSamplePackagesUpdated>true</_UnitsNetModularSamplePackagesUpdated>
</PropertyGroup>
<Touch Files="$(_UnitsNetModularSampleLocalPackStamp)" AlwaysCreate="true" />
</Target>
<Target Name="_PackAdditionalLocalUnitsNetModularPackages"
DependsOnTargets="_PackLocalUnitsNetModularPackage"
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == 'true' and '@(UnitsNetModularSampleAdditionalLocalPackageProject)' != ''"
Inputs="@(UnitsNetModularSampleAdditionalLocalPackageInput)"
Outputs="$(_UnitsNetModularSampleAdditionalLocalPackStamp)">
<Message
Importance="high"
Text="Packing local definition package %(UnitsNetModularSampleAdditionalLocalPackageProject.Identity)..." />
<Exec Command="dotnet pack "%(UnitsNetModularSampleAdditionalLocalPackageProject.Identity)" --configuration Release --output "$(UnitsNetModularSampleLocalFeed)" -p:Platform=ProjectReferences -p:MinVerVersionOverride=$(_UnitsNetModularSampleLocalPackageVersion) -p:PackageVersion=$(_UnitsNetModularSampleLocalPackageVersion)" />
<PropertyGroup>
<_UnitsNetModularSamplePackagesUpdated>true</_UnitsNetModularSamplePackagesUpdated>
</PropertyGroup>
<Touch Files="$(_UnitsNetModularSampleAdditionalLocalPackStamp)" AlwaysCreate="true" />
</Target>
<Target Name="_PackLocalUnitsNetModularPackages"
DependsOnTargets="_PackLocalUnitsNetModularPackage;_PackAdditionalLocalUnitsNetModularPackages"
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == 'true'">
</Target>
<!-- Bootstrap the feed before NuGet tries to resolve a floating PackageReference. -->
<Target Name="_PackLocalUnitsNetModularPackagesBeforeRestore"
BeforeTargets="Restore;_GenerateRestoreGraphProjectEntry"
DependsOnTargets="_PackLocalUnitsNetModularPackages"
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == 'true'" />
<!-- Rider can build without a separate restore, so refresh assets before references are resolved. -->
<Target Name="UpdateLocalUnitsNetModularPackages"
BeforeTargets="PrepareForBuild"
DependsOnTargets="_PackLocalUnitsNetModularPackages"
Condition="'$(UnitsNetModularSampleUpdateLocalPackagesOnBuild)' == 'true' and '$(_UnitsNetModularSamplePackagesUpdated)' == 'true' and '$(DesignTimeBuild)' != 'true' and '$(GITHUB_ACTIONS)' != 'true'">
<Message Importance="high" Text="Resolving the latest local UnitsNet.Modular packages..." />
<MSBuild Projects="$(MSBuildProjectFullPath)"
Targets="Restore"
BuildInParallel="false"
Properties="UnitsNetModularSampleUpdateLocalPackagesOnBuild=false;RestoreForceEvaluate=true"
RemoveProperties="TargetFramework;RuntimeIdentifier;SelfContained" />
</Target>
<!-- Compatibility alias for the original sample target name. -->
<Target Name="UpdateLocalUnitsNetModularPackage"
DependsOnTargets="UpdateLocalUnitsNetModularPackages" />
</Project>