Skip to content

Commit 4930260

Browse files
authored
Merge pull request #220 from unoplatform/dev/ds/packaging-cleanup
Fixing NuGet generation as Development Dependency
2 parents f47b65f + ee48548 commit 4930260

14 files changed

+93
-122
lines changed

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ jobs:
7878
- name: Validate sample app
7979
run: |
8080
$msbuild = vswhere -latest -requires Microsoft.Component.MSBuild -find MSBuild\**\Bin\MSBuild.exe
81-
& $msbuild /r /bl:.\logs\samples.binlog samples\NewTemplate\Resizetizer.Extensions.Sample.sln /p:AotAssemblies=false /p:WasmShellILLinkerEnabled=false
81+
& $msbuild /r /bl:.\logs\samples.binlog samples\NewTemplate\build.slnf /p:AotAssemblies=false /p:WasmShellILLinkerEnabled=false
8282
8383
- name: Upload Artifacts
8484
uses: actions/upload-artifact@v2

samples/Directory.Build.targets

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<Project>
2+
<PropertyGroup>
3+
<_ResizetizerTargetsDirectory>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', '..', 'src', '.nuspec'))</_ResizetizerTargetsDirectory>
4+
<AfterMicrosoftNETSdkTargets>$(AfterMicrosoftNETSdkTargets);$(_ResizetizerTargetsDirectory)\Uno.Resizetizer.targets</AfterMicrosoftNETSdkTargets>
5+
</PropertyGroup>
6+
</Project>

samples/Legacy/Directory.build.targets

-3
This file was deleted.

samples/Legacy/Uno.Resizetizer.Sample/Uno.Resizetizer.Sample.Shared/Uno.Resizetizer.Sample.Shared.projitems

-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<PropertyGroup>
4-
<AfterMicrosoftNETSdkTargets>$(AfterMicrosoftNETSdkTargets);$(MSBuildThisFileDirectory)..\..\..\..\src\.nuspec\Uno.Resizetizer.targets</AfterMicrosoftNETSdkTargets>
5-
</PropertyGroup>
63
<PropertyGroup>
74
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
85
<HasSharedItems>true</HasSharedItems>

samples/NewTemplate/Directory.Build.props

-4
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,4 @@
5757
</PropertyGroup>
5858
</When>
5959
</Choose>
60-
61-
<PropertyGroup>
62-
<AfterMicrosoftNETSdkTargets>$(AfterMicrosoftNETSdkTargets);$(MSBuildThisFileDirectory)..\..\src\.nuspec\Uno.Resizetizer.targets</AfterMicrosoftNETSdkTargets>
63-
</PropertyGroup>
6460
</Project>

samples/NewTemplate/Directory.Build.targets

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<Project>
2+
<Import Project="..\Directory.Build.targets" />
23
<ItemGroup>
34
<!-- Removes native usings to avoid Ambiguous reference -->
45
<Using Remove="@(Using->HasMetadata('Platform'))" />

samples/NewTemplate/build.slnf

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"solution": {
3+
"path": "Resizetizer.Extensions.Sample.sln",
4+
"projects": [
5+
"Resizetizer.Extensions.Sample.Mobile\\Resizetizer.Extensions.Sample.Mobile.csproj",
6+
"Resizetizer.Extensions.Sample.Skia.Gtk\\Resizetizer.Extensions.Sample.Skia.Gtk.csproj",
7+
"Resizetizer.Extensions.Sample.Skia.Linux.FrameBuffer\\Resizetizer.Extensions.Sample.Skia.Linux.FrameBuffer.csproj",
8+
"Resizetizer.Extensions.Sample.Skia.WPF\\Resizetizer.Extensions.Sample.Skia.WPF.csproj",
9+
"Resizetizer.Extensions.Sample.Wasm\\Resizetizer.Extensions.Sample.Wasm.csproj",
10+
"Resizetizer.Extensions.Sample.Windows\\Resizetizer.Extensions.Sample.Windows.csproj",
11+
"Resizetizer.Extensions.Sample\\Resizetizer.Extensions.Sample.csproj"
12+
]
13+
}
14+
}

src/.nuspec/Uno.Resizetizer.targets

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33

44
<ItemGroup>
5-
<AvailableItemName Include="UnoAsset"/>
6-
<AvailableItemName Include="UnoImage"/>
7-
<AvailableItemName Include="UnoIcon"/>
8-
<AvailableItemName Include="UnoSplashScreen"/>
5+
<AvailableItemName Include="UnoAsset" Exclude="@(AvailableItemName)" />
6+
<AvailableItemName Include="UnoImage" Exclude="@(AvailableItemName)"/>
7+
<AvailableItemName Include="UnoIcon" Exclude="@(AvailableItemName)"/>
8+
<AvailableItemName Include="UnoSplashScreen" Exclude="@(AvailableItemName)"/>
99
</ItemGroup>
1010

1111
<PropertyGroup>
12-
<_UnoResizetizerTaskAssemblyName>$(MSBuildThisFileDirectory)Uno.Resizetizer_v0.dll</_UnoResizetizerTaskAssemblyName>
12+
<_UnoResizetizerTaskAssemblyName>$(MSBuildThisFileDirectory)netstandard2.0\Uno.Resizetizer_v0.dll</_UnoResizetizerTaskAssemblyName>
1313
</PropertyGroup>
1414

1515
<UsingTask

src/.nuspec/Uno.Resizetizer.wasm.targets

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Name="GenerateUnoSplashWasm"
44
AfterTargets="GenerateUnoSplashScreens"
55
DependsOnTargets="GenerateUnoSplashScreens"
6-
Condition="'$(DesignTimeBuild)' != 'true'">
6+
Condition="'$(DesignTimeBuild)' != 'true' AND $(OutputType) == 'Exe'">
77

88
<!--Wasm-->
99
<GenerateWasmSplashAssets_v0

src/.nuspec/_._

Whitespace-only changes.

src/.nuspec/logo.png

-51.8 KB
Binary file not shown.

src/Resizetizer/src/Resizetizer.csproj

+63-29
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,21 @@
33
<PropertyGroup>
44
<TargetFramework>netstandard2.0</TargetFramework>
55
<RootNamespace>Uno.Resizetizer</RootNamespace>
6-
<IsTool>true</IsTool>
6+
<DevelopmentDependency>true</DevelopmentDependency>
77
<LangVersion>latest</LangVersion>
88
<Configurations>Debug;Release;DEBUG_RESIZETIZER</Configurations>
9+
<BuildOutputTargetFolder>build</BuildOutputTargetFolder>
10+
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
11+
<SuppressDependenciesWhenPacking>true</SuppressDependenciesWhenPacking>
912

1013
<!-- Version management is now done through NuGet, this avoids issues related version mismatch -->
1114
<Version>255.255.255.255</Version>
12-
13-
<_SkiaPackagePath>build\</_SkiaPackagePath>
14-
<UnoNuSpecDirectory>$(MSBuildThisFileDirectory)..\..\.nuspec\</UnoNuSpecDirectory>
15+
<UnoNuspecDirectory>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', '..', '..', '.nuspec'))</UnoNuspecDirectory>
1516
<DefaultLanguage>en-US</DefaultLanguage>
16-
17-
<IsTool>true</IsTool>
1817
</PropertyGroup>
1918

2019
<PropertyGroup>
2120
<AssemblyName>Uno.Resizetizer_v0</AssemblyName>
22-
<PackageProjectUrl>https://github.com/unoplatform/uno.resizetizer</PackageProjectUrl>
2321
<RepositoryCommit>$(GITVERSION_SHA)</RepositoryCommit>
2422
<PackageId>Uno.Resizetizer</PackageId>
2523
<Description>Uno Platform package support for images.</Description>
@@ -34,37 +32,73 @@
3432
<EmbeddedResource Include="Resources\UnoSplash.storyboard" LogicalName="UnoSplash.storyboard" />
3533
</ItemGroup>
3634

37-
<Import Project="ResizetizerPackages.projitems" />
38-
3935
<ItemGroup>
40-
<None Include="$(MSBuildThisFileDirectory)../../.nuspec/logo.png" Pack="true" Visible="false" PackagePath="\"/>
41-
42-
<!-- Make the package reference-able, but without any reference-able assembly -->
43-
<None Include="../../.nuspec/_._" Pack="true" PackagePath="lib/$(TargetFramework)" />
36+
<PackageReference Include="HarfBuzzSharp" Version="$(_HarfBuzzSharpVersion)" />
37+
<PackageReference Include="HarfBuzzSharp.NativeAssets.Linux" Version="$(_HarfBuzzSharpVersion)" />
38+
<PackageReference Include="HarfBuzzSharp.NativeAssets.Win32" Version="$(_HarfBuzzSharpVersion)" />
39+
<PackageReference Include="HarfBuzzSharp.NativeAssets.macOS" Version="$(_HarfBuzzSharpVersion)" />
40+
<PackageReference Include="Microsoft.Build.Framework" Version="16.7.0" />
41+
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="16.7.0" />
42+
<PackageReference Include="SkiaSharp" Version="$(_SkiaSharpVersion)" />
43+
<PackageReference Include="SkiaSharp.NativeAssets.Win32" Version="$(_SkiaSharpVersion)" />
44+
<PackageReference Include="SkiaSharp.NativeAssets.macOS" Version="$(_SkiaSharpVersion)" />
45+
<PackageReference Include="SkiaSharp.NativeAssets.Linux.NoDependencies" Version="$(_SkiaSharpVersion)" />
46+
<PackageReference Include="SkiaSharp.HarfBuzz" Version="$(_SkiaSharpVersion)" />
47+
<PackageReference Include="ExCSS" Version="4.2.3" />
48+
<PackageReference Include="Svg.Skia" Version="$(SvgSkiaPackageVersion)" />
49+
<PackageReference Include="Svg.Custom" Version="$(SvgSkiaPackageVersion)" />
50+
<PackageReference Include="Svg.Model" Version="$(SvgSkiaPackageVersion)" />
51+
<PackageReference Include="ShimSkiaSharp" Version="$(SvgSkiaPackageVersion)" />
52+
<PackageReference Include="Fizzler" Version="$(FizzlerPackageVersion)" />
53+
<PackageReference Include="System.Memory" Version="4.5.5" />
54+
<PackageReference Include="System.Buffers" Version="4.5.1" />
55+
<PackageReference Include="System.Text.Json" Version="7.0.3" />
56+
<PackageReference Include="System.Text.Encodings.Web" Version="7.0.0" />
57+
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="7.0.0" />
58+
<PackageReference Include="System.IO.UnmanagedMemoryStream" Version="4.3.0" />
59+
<PackageReference Include="System.Numerics.Vectors" Version="4.5.0" />
60+
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
61+
<PackageReference Include="System.ObjectModel" Version="4.3.0" />
62+
<PackageReference Include="Mono.ApiTools.MSBuildTasks" Version="0.1.0" />
63+
</ItemGroup>
4464

65+
<ItemGroup>
4566
<None Include="../../../README.md" Pack="true" PackagePath="/" />
4667

47-
<None Include="@(_ResizetizerFiles)" Visible="false" Pack="true" PackagePath="build/%(Arch)" CopyToOutputDirectory="PreserveNewest" />
48-
<None Include="$(OutputPath)$(AssemblyName).dll" Visible="false" Pack="true" PackagePath="build" />
49-
<None Include="$(OutputPath)$(AssemblyName).pdb" Visible="false" Pack="true" PackagePath="build" />
50-
<None Include="../../.nuspec/Uno.Resizetizer.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).targets" CopyToOutputDirectory="PreserveNewest" />
51-
<None Include="../../.nuspec/Uno.Resizetizer.android.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).android.targets" CopyToOutputDirectory="PreserveNewest" />
52-
<None Include="../../.nuspec/Uno.Resizetizer.apple.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).apple.targets" CopyToOutputDirectory="PreserveNewest" />
53-
<None Include="../../.nuspec/Uno.Resizetizer.wasm.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).wasm.targets" CopyToOutputDirectory="PreserveNewest" />
54-
<None Include="../../.nuspec/Uno.Resizetizer.windows.skia.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).windows.skia.targets" CopyToOutputDirectory="PreserveNewest" />
68+
<None Include="$(UnoNuspecDirectory)Uno.Resizetizer.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).targets" CopyToOutputDirectory="PreserveNewest" />
69+
<None Include="$(UnoNuspecDirectory)Uno.Resizetizer.android.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).android.targets" CopyToOutputDirectory="PreserveNewest" />
70+
<None Include="$(UnoNuspecDirectory)Uno.Resizetizer.apple.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).apple.targets" CopyToOutputDirectory="PreserveNewest" />
71+
<None Include="$(UnoNuspecDirectory)Uno.Resizetizer.wasm.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).wasm.targets" CopyToOutputDirectory="PreserveNewest" />
72+
<None Include="$(UnoNuspecDirectory)Uno.Resizetizer.windows.skia.targets" Visible="false" Pack="true" PackagePath="build/$(PackageId).windows.skia.targets" CopyToOutputDirectory="PreserveNewest" />
5573
</ItemGroup>
5674

57-
<Target Name="_CopyToNuspecDir" AfterTargets="Build">
75+
<Import Project="../Directory.UnoMetadata.targets" />
76+
77+
<Target Name="PackNuGetLockFiles"
78+
BeforeTargets="DownloadAndSetPackageIcon;Pack;GenerateNuspec">
5879
<ItemGroup>
59-
<_CopyItems Include="$(TargetDir)**\*.dll" Exclude="$(TargetDir)System.*.dll" />
60-
<_CopyItems Include="$(TargetDir)**\*.so" />
61-
<_CopyItems Include="$(TargetDir)**\*.pdb" />
62-
<_CopyItems Include="$(TargetDir)**\*.dylib" />
63-
<_CopyItems Include="$(TargetDir)**\*.pdb" />
80+
<None Include="@(ReferenceCopyLocalPaths)" Pack="true" PackagePath="$(BuildOutputTargetFolder)/$(TargetFramework)" />
81+
<None Include="@(RuntimeTargetsCopyLocalItems)" Pack="true" PackagePath="$(BuildOutputTargetFolder)/$(TargetFramework)/%(RuntimeTargetsCopyLocalItems.RuntimeIdentifier)" />
6482
</ItemGroup>
65-
<Copy SourceFiles="@(_CopyItems)" DestinationFolder="$(UnoNuSpecDirectory)%(RecursiveDir)" ContinueOnError="true" Retries="0" />
6683
</Target>
6784

68-
<Import Project="../Directory.UnoMetadata.targets" />
85+
<Target Name="CopyAssetsForSampleProject"
86+
AfterTargets="Build">
87+
<ItemGroup>
88+
<_OutputFile Include="$(OutDir)\**\*.*" Exclude="$(OutDir)\**\*.targets"/>
89+
<_RuntimeLibrary Include="@(RuntimeTargetsCopyLocalItems)"
90+
OutputDirectory="$([MSBuild]::NormalizeDirectory('$(UnoNuspecDirectory)', '$(TargetFramework)\%(RuntimeTargetsCopyLocalItems.RuntimeIdentifier)'))" />
91+
</ItemGroup>
92+
93+
<Copy SourceFiles="@(_OutputFile)"
94+
DestinationFiles="@(_OutputFile->'$(UnoNuspecDirectory)$(TargetFramework)\%(Filename)%(Extension)')"
95+
SkipUnchangedFiles="true"
96+
OverwriteReadOnlyFiles="true" />
97+
98+
<Copy SourceFiles="@(_RuntimeLibrary)"
99+
DestinationFiles="@(_RuntimeLibrary->'%(OutputDirectory)\%(Filename)%(Extension)')"
100+
SkipUnchangedFiles="true"
101+
OverwriteReadOnlyFiles="true" />
102+
</Target>
69103

70104
</Project>

0 commit comments

Comments
 (0)