msbuild: Add VcpkgManifestInstalledBaseDir to set installed dir in multi arch solution (#52643)

Co-authored-by: Leander Schulten <Leander.Schulten@tetys.de>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
This commit is contained in:
autoantwort 2026-07-03 02:18:00 +02:00 committed by GitHub
parent 6327b9fdae
commit cf4d7aef16
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 7 additions and 3 deletions

View File

@ -15,6 +15,7 @@
<_ZVcpkgRoot>$(VcpkgRoot)</_ZVcpkgRoot>
<_ZVcpkgManifestRoot>$(VcpkgManifestRoot)</_ZVcpkgManifestRoot>
<_ZVcpkgInstalledDir>$(VcpkgInstalledDir)</_ZVcpkgInstalledDir>
<_ZVcpkgManifestInstalledBaseDir>$(VcpkgManifestInstalledBaseDir)</_ZVcpkgManifestInstalledBaseDir>
</PropertyGroup>
<!-- Add trailing slashes to inputs that must have them to conform with msbuild conventions. -->
@ -22,6 +23,7 @@
<_ZVcpkgRoot Condition="!$(_ZVcpkgRoot.EndsWith('\'))">$(_ZVcpkgRoot)\</_ZVcpkgRoot>
<_ZVcpkgManifestRoot Condition="'$(_ZVcpkgManifestRoot)' != '' and !$(_ZVcpkgManifestRoot.EndsWith('\'))">$(_ZVcpkgManifestRoot)\</_ZVcpkgManifestRoot>
<_ZVcpkgInstalledDir Condition="'$(_ZVcpkgInstalledDir)' != '' and !$(_ZVcpkgInstalledDir.EndsWith('\'))">$(_ZVcpkgInstalledDir)\</_ZVcpkgInstalledDir>
<_ZVcpkgManifestInstalledBaseDir Condition="'$(_ZVcpkgManifestInstalledBaseDir)' != '' and !$(_ZVcpkgManifestInstalledBaseDir.EndsWith('\'))">$(_ZVcpkgManifestInstalledBaseDir)\</_ZVcpkgManifestInstalledBaseDir>
</PropertyGroup>
<PropertyGroup>
@ -71,12 +73,14 @@
<ProjectStateLine>VcpkgTriplet=$(VcpkgTriplet):$(ProjectStateLine)</ProjectStateLine>
</PropertyGroup>
<!-- Determine the locations trees we want to consume. _ZVcpkgInstalledDir is special in that it doesn't have a default
value in the .props because we normally derive it, but users may override the value. -->
<!-- Determine the locations trees we want to consume. _ZVcpkgManifestInstalledBaseDir and _ZVcpkgInstalledDir are
special in that it doesn't have a default value in the .props because we normally derive it, but users may override
the value. -->
<Choose>
<When Condition="'$(VcpkgEnableManifest)' == 'true'">
<PropertyGroup>
<_ZVcpkgInstalledDir Condition="'$(_ZVcpkgInstalledDir)' == ''">$(_ZVcpkgManifestRoot)vcpkg_installed\$(VcpkgTriplet)\</_ZVcpkgInstalledDir>
<_ZVcpkgManifestInstalledBaseDir Condition="'$(_ZVcpkgManifestInstalledBaseDir)' == ''">$(_ZVcpkgManifestRoot)vcpkg_installed\</_ZVcpkgManifestInstalledBaseDir>
<_ZVcpkgInstalledDir Condition="'$(_ZVcpkgInstalledDir)' == ''">$(_ZVcpkgManifestInstalledBaseDir)$(VcpkgTriplet)\</_ZVcpkgInstalledDir>
</PropertyGroup>
</When>
<Otherwise>