Skip to content

Commit 40d83e3

Browse files
authored
Rework packaging (#142)
1 parent b30de9d commit 40d83e3

File tree

73 files changed

+138
-79
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+138
-79
lines changed

MetadataProcessor.Core/MetadataProcessor.Core.csproj

Lines changed: 1 addition & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -52,75 +52,10 @@
5252
<Reference Include="System.Xml" />
5353
</ItemGroup>
5454
<ItemGroup>
55-
<Compile Include="DumpGenerator\ExceptionHandler.cs" />
56-
<Compile Include="DumpGenerator\AttributeCustom.cs" />
57-
<Compile Include="DumpGenerator\AttFixedArgs.cs" />
58-
<Compile Include="DumpGenerator\GenericParam.cs" />
59-
<Compile Include="DumpGenerator\UserString.cs" />
60-
<Compile Include="DumpGenerator\ILCode.cs" />
61-
<Compile Include="DumpGenerator\LocalDef.cs" />
62-
<Compile Include="DumpGenerator\MethodDef.cs" />
63-
<Compile Include="DumpGenerator\FieldDef.cs" />
64-
<Compile Include="DumpGenerator\MemberRef.cs" />
65-
<Compile Include="DumpGenerator\InterfaceDef.cs" />
66-
<Compile Include="DumpGenerator\TypeDef.cs" />
67-
<Compile Include="DumpGenerator\TypeRef.cs" />
68-
<Compile Include="DumpGenerator\AssemblyRef.cs" />
69-
<Compile Include="DumpGenerator\DumpAllTable.cs" />
70-
<Compile Include="DumpGenerator\DumpTemplates.cs" />
71-
<Compile Include="Endianness\nanoBinaryWriter.cs" />
72-
<Compile Include="Extensions\ParameterDefintionExtensions.cs" />
73-
<Compile Include="Extensions\ByteArrayExtensions.cs" />
74-
<Compile Include="Extensions\MethodDefinitionExtensions.cs" />
75-
<Compile Include="Extensions\TypeReferenceExtensions.cs" />
76-
<Compile Include="Extensions\TypeDefinitionExtensions.cs" />
77-
<Compile Include="InanoTable.cs" />
78-
<Compile Include="Mono.Cecil\CodeWriter.cs" />
79-
<Compile Include="nanoAssemblyBuilder.cs" />
80-
<Compile Include="nanoAssemblyDefinition.cs" />
81-
<Compile Include="nanoDependencyGenerator.cs" />
82-
<Compile Include="nanoDumperGenerator.cs" />
83-
<Compile Include="nanoSkeletonGenerator.cs" />
84-
<Compile Include="SkeletonGenerator\AssemblyClass.cs" />
85-
<Compile Include="SkeletonGenerator\AssemblyClassStubs.cs" />
86-
<Compile Include="SkeletonGenerator\AssemblyClassTable.cs" />
87-
<Compile Include="SkeletonGenerator\AssemblyLookupTable.cs" />
88-
<Compile Include="Tables\ICustomStringSorter.cs" />
89-
<Compile Include="Tables\nanoAssemblyReferenceTable.cs" />
90-
<Compile Include="Tables\nanoAttributesTable.cs" />
91-
<Compile Include="Tables\nanoByteCodeTable.cs" />
92-
<Compile Include="Tables\nanoEmptyTable.cs" />
93-
<Compile Include="Tables\nanoFieldDefinitionTable.cs" />
94-
<Compile Include="Tables\nanoFieldReferenceTable.cs" />
95-
<Compile Include="Tables\nanoMethodDefinitionTable.cs" />
96-
<Compile Include="Tables\nanoGenericParamTable.cs" />
97-
<Compile Include="Tables\nanoMethodReferenceTable.cs" />
98-
<Compile Include="Tables\nanoReferenceTableBase.cs" />
99-
<Compile Include="Tables\nanoResourceDataTable.cs" />
100-
<Compile Include="Tables\nanoResourceFileTable.cs" />
101-
<Compile Include="Tables\nanoResourcesTable.cs" />
102-
<Compile Include="Tables\nanoSignaturesTable.cs" />
103-
<Compile Include="Tables\nanoStringTable.cs" />
104-
<Compile Include="Tables\nanoTablesContext.cs" />
105-
<Compile Include="Tables\nanoTypeDefinitionTable.cs" />
106-
<Compile Include="Tables\nanoTypeReferenceTable.cs" />
107-
<Compile Include="Tables\nanoTypeSpecificationsTable.cs" />
108-
<Compile Include="Utility\Crc32.cs" />
10955
<Compile Include="Properties\AssemblyInfo.cs" />
110-
<Compile Include="Utility\LoadHintsAssemblyResolver.cs" />
111-
<Compile Include="Utility\nanoBitmapProcessor.cs" />
112-
<Compile Include="Utility\nanoCLR_DataType.cs" />
113-
<Compile Include="Utility\nanoFontProcessor.cs" />
114-
<Compile Include="Utility\nanoDependencyGeneratorWriter.cs" />
115-
<Compile Include="Utility\nanoPdbxFileWriter.cs" />
116-
<Compile Include="Utility\nanoTypeDefinitionFlags.cs" />
117-
<Compile Include="Utility\nanoSerializationType.cs" />
118-
<Compile Include="Utility\nanoStringsConstants.cs" />
119-
<Compile Include="Utility\NativeMethodsCrc.cs" />
12056
</ItemGroup>
12157
<ItemGroup>
12258
<None Include="key.snk" />
123-
<Compile Include="SkeletonGenerator\SkeletonTemplates.cs" />
12459
<None Include="packages.lock.json" />
12560
</ItemGroup>
12661
<ItemGroup>
@@ -141,5 +76,6 @@
14176
<PrivateAssets>all</PrivateAssets>
14277
</PackageReference>
14378
</ItemGroup>
79+
<Import Project="..\MetadataProcessor.Shared\MetadataProcessor.Shared.projitems" Label="Shared" />
14480
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
14581
</Project>

MetadataProcessor.MsBuildTask/MetadataProcessor.MsBuildTask.csproj

Lines changed: 31 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
<PropertyGroup>
44
<OutputType>Library</OutputType>
55

6-
<MicrosoftBuildFrameworkVersion>15.4.8</MicrosoftBuildFrameworkVersion>
7-
86
<TargetFrameworks>net6.0;net472</TargetFrameworks>
97
<PackageId>nanoFramework.Tools.MetadataProcessor.MsBuildTask</PackageId>
108
<AssemblyName>nanoFramework.Tools.MetadataProcessor.MsBuildTask</AssemblyName>
@@ -30,10 +28,17 @@
3028
<EnableDefaultItems>false</EnableDefaultItems>
3129
<GenerateDependencyFile>false</GenerateDependencyFile>
3230
<IncludeBuildOutput>true</IncludeBuildOutput>
31+
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
32+
33+
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
3334

3435
<NoPackageAnalysis>true</NoPackageAnalysis>
3536
<!-- MSBuild Task DLLs need to be versioned with every build -->
36-
<AutoGenerateAssemblyVersion>true</AutoGenerateAssemblyVersion>
37+
<AutoGenerateAssemblyVersion>true</AutoGenerateAssemblyVersion>
38+
<SignAssembly>True</SignAssembly>
39+
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
40+
<DelaySign>True</DelaySign>
41+
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
3742
</PropertyGroup>
3843

3944
<ItemGroup>
@@ -55,21 +60,34 @@
5560
<Compile Include="*.cs" />
5661
<Compile Include="Utilities/*.cs" />
5762
</ItemGroup>
58-
63+
5964
<ItemGroup>
6065
<PackageReference Include="Nerdbank.GitVersioning" Version="3.4.255">
6166
<PrivateAssets>all</PrivateAssets>
6267
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
6368
</PackageReference>
64-
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
65-
<PackageReference Include="Microsoft.Build.Framework" Version="$(MicrosoftBuildFrameworkVersion)" />
66-
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="$(MicrosoftBuildFrameworkVersion)" />
67-
<PackageReference Include="Mono.Cecil" Version="0.11.4" />
68-
<PackageReference Include="mustache-sharp" Version="1.0.0" />
69-
</ItemGroup>
70-
71-
<ItemGroup>
72-
<ProjectReference Include="..\MetadataProcessor.Core\MetadataProcessor.Core.csproj" />
69+
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All" />
70+
<PackageReference Include="Microsoft.Build.Framework" Version="15.1.0-*" PrivateAssets="All" />
71+
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="15.1.0-*" PrivateAssets="All" />
72+
<PackageReference Include="Mono.Cecil" Version="0.11.4" PrivateAssets="All" />
73+
<PackageReference Include="mustache-sharp" Version="1.0.0" PrivateAssets="All" />
74+
<PackageReference Include="System.Drawing.Common" Version="6.0.0" PrivateAssets="All" />
7375
</ItemGroup>
76+
77+
<Target Name="PackTaskDependencies" BeforeTargets="GenerateNuspec">
78+
<!--
79+
The include needs to happen after output has been copied to build output folder
80+
but before NuGet generates a nuspec. See https://github.com/NuGet/Home/issues/4704.
81+
-->
82+
<ItemGroup>
83+
<_PackageFiles Include="bin\$(Configuration)\*\Mono.Cecil.*.dll;bin\$(Configuration)\*\mustache-sharp.dll;bin\$(Configuration)\*\System.Drawing.Common.dll">
84+
<PackagePath>lib\%(RecursiveDir)</PackagePath>
85+
<Visible>false</Visible>
86+
<BuildAction>Content</BuildAction>
87+
</_PackageFiles>
88+
</ItemGroup>
89+
</Target>
90+
91+
<Import Project="..\MetadataProcessor.Shared\MetadataProcessor.Shared.projitems" Label="Shared" />
7492

7593
</Project>

MetadataProcessor.MsBuildTask/key.snk

596 Bytes
Binary file not shown.

MetadataProcessor.MsBuildTask/nanoFramework.Tools.MetadataProcessor.MsBuildTask.targets

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,12 @@
3636
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
3737
<IncludeInVSIX>true</IncludeInVSIX>
3838
</Content>
39-
</ItemGroup>
39+
<Content Include="$(OutDir)System.Drawing.Common.dll">
40+
<InstallRoot>MSBuild</InstallRoot>
41+
<VSIXSubPath>nanoFramework\v1.0\</VSIXSubPath>
42+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
43+
<IncludeInVSIX>true</IncludeInVSIX>
44+
</Content>
45+
46+
</ItemGroup>
4047
</Project>

0 commit comments

Comments
 (0)