vs2010backend: fix incompatibility with custom manifests #12472
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Given this relatively simple setup
The code attempts to create a file named
zß水🍌
with standard C++ APIs (which use the ANSI variants of Win32 APIs), then checks whether it succeeded by using the Wide variant of a Win32 API. There is sufficient variation in the filename to not be covered by a single codepage, so unless the ANSI variants operate in the UTF-8 codepage, the check will fail. In more recent versions of Windows 10, this can be requested in the application manifest, which this setup also attempts, and, using the VS backend and current release versions of Meson, fails to do.embed-manifest-test.cpp
embed-manifest-test.rc
meson.build
winutf8.xml
and the following setup and compile commands
the linking step fails with the following errors:
due to the reason explained in the commit message:
This has been tested with fairly vanilla installs of VS2017 and VS2022; results may vary depending on toolset, I'm not entirely sure, but I don't think the default for this setting would change. Again, as per the commit message:
So this PR disables it.