Set some more metadata on BizHawk assemblies

The documentation for these is lacking, as I've come to expect, but I'm
angry all the same.
For EmuHawk and DiscoHawk, I've pushed `$(Description)` (normally only
seen when publishing to NuGet) into `$(AssemblyTitle)`, which Windows
labels as "File description", and then explicitly set `$(Product)`.
Also `$(NeutralLanguage)` doesn't set a culture, it points any lookups
for `en-US` localisations to embedded resources, which I believe is the
default. This just makes it explicit.
This commit is contained in:
YoshiRulz 2024-09-27 08:10:36 +10:00
parent 5504deb73f
commit 509bd1504a
No known key found for this signature in database
GPG Key ID: C4DE31C245353FB7
4 changed files with 7 additions and 1 deletions

View File

@ -5,6 +5,7 @@
<Import Project="../MainSlnExecutable.props" />
<PropertyGroup>
<ApplicationIcon>discohawk.ico</ApplicationIcon>
<Description>Disc image format converter</Description>
<Nullable>disable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>

View File

@ -7,6 +7,7 @@
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<ApplicationIcon>images/logo.ico</ApplicationIcon>
<ApplicationManifest>app.manifest</ApplicationManifest>
<Description>Multi-system emulator frontend</Description>
<Nullable>disable</Nullable>
<ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
<UseWindowsForms>true</UseWindowsForms>

View File

@ -8,7 +8,9 @@
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<DebugType>embedded</DebugType>
<DefineConstants>$(DefineConstants);AVI_SUPPORT</DefineConstants>
<NeutralLanguage>en-US</NeutralLanguage>
<NoWarn>$(NoWarn);CS1573;NU1702</NoWarn>
<Product>BizHawk</Product>
<ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' And '$(SolutionDir)' != '' ">

View File

@ -1,14 +1,16 @@
<Project>
<Import Project="MainSlnCommon.props" />
<PropertyGroup>
<AssemblyTitle>$(Description)</AssemblyTitle>
<!-- Output path will contain the executable along with all its dependencies. We copy the executable up one directory up later on.
This allows us to have the executable dependencies automagically copied over to our dll folder while still keeping the executable in the output folder. -->
<OutputPath>$(MSBuildProjectDirectory)/../../output/dll/</OutputPath>
<Product>$(MSBuildProjectName.Substring($([MSBuild]::Add($(MSBuildProjectName.LastIndexOf('.')), 1))))</Product>
<ExecFilesDest>$(MSBuildProjectDirectory)/../../output/</ExecFilesDest>
<!-- Setting TargetFileName does not change the AssemblyName (as setting TargetName would), but also does not change the output file name
for the executable on build (as one would expect). So we still need to rename the executable file below. Using this method has the advantage
of IDEs respecting the TargetFileName and expecting it. -->
<TargetFileName>$(MSBuildProjectName.Substring($([MSBuild]::Add($(MSBuildProjectName.LastIndexOf('.')), 1)))).exe</TargetFileName>
<TargetFileName>$(Product).exe</TargetFileName>
<!-- This also doesn't actually change where the executable is output, rather it's just a hint to the IDE to know where the executable is (since we move it). -->
<TargetPath>$(ExecFilesDest)$(TargetFileName)</TargetPath>
</PropertyGroup>