Skip to content

Commit fc16485

Browse files
committed
add project for building a private assembly to bundle with the package
1 parent 8907e34 commit fc16485

File tree

6 files changed

+93
-29
lines changed

6 files changed

+93
-29
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<!--
2+
SPDX-FileCopyrightText: 2020 smdn <smdn@smdn.jp>
3+
SPDX-License-Identifier: MIT
4+
-->
5+
<Project>
6+
<PropertyGroup>
7+
<RootNamespace>Smdn.Reflection.ReverseGenerating.ListApi.Core</RootNamespace>
8+
<VersionPrefix>1.2.0</VersionPrefix>
9+
<VersionSuffix></VersionSuffix>
10+
<Nullable>enable</Nullable>
11+
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
12+
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
13+
</PropertyGroup>
14+
15+
<Import Project="$(MSBuildThisFileDirectory)..\Sdk.net7.0.props" />
16+
17+
<PropertyGroup Condition=" '$(Configuration)' == 'Release' " Label="Required properties to generate API list">
18+
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
19+
</PropertyGroup>
20+
21+
<PropertyGroup Label="assembly attributes">
22+
<Description>A common library for the tools of reverse generating API lists.</Description>
23+
<CopyrightYear>2021</CopyrightYear>
24+
</PropertyGroup>
25+
26+
<PropertyGroup Label="package properties">
27+
<PackageTags>reflection;reverse-generating;reverse-generation;generator;api-list</PackageTags>
28+
</PropertyGroup>
29+
30+
<ItemGroup>
31+
<Compile Include="$(MSBuildThisFileDirectory)Smdn.Reflection.ReverseGenerating.ListApi\*.cs" />
32+
<Compile Include="$(MSBuildThisFileDirectory)..\Common\System.Runtime.CompilerServices\IsExternalInit.cs" />
33+
</ItemGroup>
34+
35+
<ItemGroup>
36+
<PackageReference Include="System.Reflection.MetadataLoadContext" Version="6.0.0" Condition="$(TargetFramework.StartsWith('net6.')) Or $(TargetFramework.StartsWith('netcoreapp'))" />
37+
<PackageReference Include="System.Reflection.MetadataLoadContext" Version="7.0.0" Condition="$(TargetFramework.StartsWith('net7.'))" />
38+
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="6.0.0" Condition="$(TargetFramework.StartsWith('net6.')) Or $(TargetFramework.StartsWith('netcoreapp'))" />
39+
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="7.0.0" Condition="$(TargetFramework.StartsWith('net7.'))" />
40+
<PackageReference Include="Microsoft.Extensions.Logging" Version="6.0.0" />
41+
</ItemGroup>
42+
</Project>

src/Smdn.Reflection.ReverseGenerating.ListApi.Core/Smdn.Reflection.ReverseGenerating.ListApi.Core.csproj

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -5,40 +5,15 @@ SPDX-License-Identifier: MIT
55
<Project Sdk="Microsoft.NET.Sdk">
66
<PropertyGroup>
77
<TargetFrameworks>net6.0;netcoreapp3.1</TargetFrameworks>
8-
<RootNamespace>Smdn.Reflection.ReverseGenerating.ListApi.Core</RootNamespace>
9-
<VersionPrefix>1.2.0</VersionPrefix>
10-
<VersionSuffix></VersionSuffix>
11-
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
12-
<Nullable>enable</Nullable>
13-
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
14-
</PropertyGroup>
15-
16-
<Import Project="..\Sdk.net7.0.props" />
17-
18-
<PropertyGroup Condition=" '$(Configuration)' == 'Release' " Label="Required properties to generate API list">
19-
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
208
</PropertyGroup>
219

22-
<PropertyGroup Label="assembly attributes">
23-
<Description>A common library for the tools of reverse generating API lists.</Description>
24-
<CopyrightYear>2021</CopyrightYear>
25-
</PropertyGroup>
10+
<Import Project="Smdn.Reflection.ReverseGenerating.ListApi.Core.Common.props" />
2611

27-
<PropertyGroup Label="package properties">
28-
<PackageTags>reflection;reverse-generating;reverse-generation;generator;api-list</PackageTags>
12+
<PropertyGroup>
13+
<PackageValidationBaselineVersion>1.0.0</PackageValidationBaselineVersion>
2914
</PropertyGroup>
3015

3116
<ItemGroup>
32-
<PackageReference Include="System.Reflection.MetadataLoadContext" Version="6.0.0" Condition="$(TargetFramework.StartsWith('net6.')) Or $(TargetFramework.StartsWith('netcoreapp'))" />
33-
<PackageReference Include="System.Reflection.MetadataLoadContext" Version="7.0.0" Condition="$(TargetFramework.StartsWith('net7.'))" />
34-
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="6.0.0" Condition="$(TargetFramework.StartsWith('net6.')) Or $(TargetFramework.StartsWith('netcoreapp'))" />
35-
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="7.0.0" Condition="$(TargetFramework.StartsWith('net7.'))" />
36-
<PackageReference Include="Microsoft.Extensions.Logging" Version="6.0.0" />
37-
3817
<ProjectOrPackageReference ReferencePackageVersion="[1.1.1,2.0.0)" Include="..\Smdn.Reflection.ReverseGenerating\Smdn.Reflection.ReverseGenerating.csproj" />
3918
</ItemGroup>
40-
41-
<ItemGroup>
42-
<Compile Include="..\Common\System.Runtime.CompilerServices\IsExternalInit.cs" />
43-
</ItemGroup>
4419
</Project>

src/Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks/Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks.csproj

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,16 @@ SPDX-License-Identifier: MIT
4343

4444
<ItemGroup>
4545
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="17.0.0" PrivateAssets="All" />
46-
<ProjectReference Include="..\Smdn.Reflection.ReverseGenerating.ListApi.Core\Smdn.Reflection.ReverseGenerating.ListApi.Core.csproj" PrivateAssets="All" />
46+
<ProjectReference Include="private\Smdn.Reflection.ReverseGenerating.ListApi.Core.csproj" PrivateAssets="All" />
4747

4848
<!-- remove this package itself from PackageReference to avoid duplicate references during the running of 'Pack' target -->
4949
<PackageReference Remove="$(PackageId)" />
5050
</ItemGroup>
5151

52+
<ItemGroup>
53+
<Compile Remove="private\**\*.cs" />
54+
</ItemGroup>
55+
5256
<ItemGroup Label="exporting tasks">
5357
<ExportTaskNames Include="GenerateApiList">
5458
<Namespace>Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks</Namespace>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<!--
2+
SPDX-FileCopyrightText: 2023 smdn <smdn@smdn.jp>
3+
SPDX-License-Identifier: MIT
4+
-->
5+
<Project>
6+
<Import Project="$(MSBuildThisFileDirectory)..\..\Directory.Build.props" />
7+
</Project>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<!--
2+
SPDX-FileCopyrightText: 2023 smdn <smdn@smdn.jp>
3+
SPDX-License-Identifier: MIT
4+
-->
5+
<Project>
6+
<Import Project="$(MSBuildThisFileDirectory)..\..\Directory.Build.targets" />
7+
</Project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<!--
2+
SPDX-FileCopyrightText: 2023 smdn <smdn@smdn.jp>
3+
SPDX-License-Identifier: MIT
4+
-->
5+
<Project Sdk="Microsoft.NET.Sdk">
6+
<PropertyGroup>
7+
<TargetFrameworks>net6.0;netcoreapp3.1</TargetFrameworks>
8+
</PropertyGroup>
9+
10+
<Import Project="..\..\Smdn.Reflection.ReverseGenerating.ListApi.Core\Smdn.Reflection.ReverseGenerating.ListApi.Core.Common.props" />
11+
12+
<PropertyGroup>
13+
<IsPackable>false</IsPackable>
14+
<VersionSuffix>private</VersionSuffix>
15+
<!--
16+
Later than version 1.4.5 of Smdn.MSBuild.ProjectAssets.Library, this will be set according to
17+
the value of IsPackable, so this can be removed in the future.
18+
-->
19+
<APIListEnableGenerating>false</APIListEnableGenerating>
20+
</PropertyGroup>
21+
22+
<!--
23+
Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks bundles the private build assembly with the package.
24+
So in case when Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks builds this project, use ProjectReference.
25+
-->
26+
<ItemGroup>
27+
<ProjectReference Include="..\..\Smdn.Reflection.ReverseGenerating\Smdn.Reflection.ReverseGenerating.csproj" />
28+
</ItemGroup>
29+
</Project>

0 commit comments

Comments
 (0)