build: sign package assemblies in one invocation

This commit is contained in:
Meik
2026-07-01 17:12:03 +02:00
parent a72bd5a012
commit 31d2ff8e64
2 changed files with 8 additions and 1 deletions

View File

@@ -97,8 +97,12 @@
<Message Importance="High" <Message Importance="High"
Text="Signing Matrix42 package assemblies with $(M42SignTool)." /> Text="Signing Matrix42 package assemblies with $(M42SignTool)." />
<PropertyGroup>
<_M42AssembliesToSignArgs>@(_M42AssembliesToSign->'&quot;%(FullPath)&quot;', ' ')</_M42AssembliesToSignArgs>
</PropertyGroup>
<Exec Condition="'@(_M42AssembliesToSign)' != ''" <Exec Condition="'@(_M42AssembliesToSign)' != ''"
Command="&quot;$(M42SignTool)&quot; sign $(_M42SignCertificateArgs) /tr &quot;$(M42SignTimestampUrl)&quot; /td SHA256 /fd SHA256 /d &quot;$(M42SignDescription)&quot; &quot;%(_M42AssembliesToSign.FullPath)&quot;" /> Command="&quot;$(M42SignTool)&quot; sign $(_M42SignCertificateArgs) /tr &quot;$(M42SignTimestampUrl)&quot; /td SHA256 /fd SHA256 /d &quot;$(M42SignDescription)&quot; $(_M42AssembliesToSignArgs)" />
</Target> </Target>
<Target Name="M42_BuildPackage" <Target Name="M42_BuildPackage"

View File

@@ -77,6 +77,9 @@ Visual Studio:
- `Release`: Release ohne Signierung. - `Release`: Release ohne Signierung.
- `Release_signed`: Release mit Signierung. - `Release_signed`: Release mit Signierung.
Bei `Release_signed` werden alle Paket-DLLs in einem einzigen `signtool sign`-Aufruf signiert.
Das vermeidet eine separate Passwortabfrage pro DLL, wenn das Zertifikat interaktiv entsperrt werden muss.
Signierbare MSBuild-Properties: Signierbare MSBuild-Properties:
```powershell ```powershell