-
Notifications
You must be signed in to change notification settings - Fork 6.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature that adds vcpkg item to project settings in visual studio breaks builds that set VcpkgTriplet in .vcxproj, introduces other odd behaviors #12062
Comments
VcpkgTriplet
.vcxproj, introduces other odd behaviors
VcpkgTriplet
.vcxproj, introduces other odd behaviors
Sorry for the noise as I figured out git markdown and fixed typos. It should be stable now. Let me know if you want any files to repro or more details. I imagine this will break any project that prefers to link statically to vcpkg dependencies, so reverting may be prudent. @Neumann-A @cbezault @BillyONeal @ras0219-msft Also, once this new feature is in and stable, the documentation should probably updated to explain both the new functionality and its relation to setting VcpkgTriplet directly in the .vcxproj. |
Co-authored-by: Curtis J Bezault <[email protected]> Co-authored-by: Billy Robert O'Neal III <[email protected]> Co-authored-by: Robert Schumacher <[email protected]>
This is because we accidentally overwrite |
|
That makes sense, thanks for pointing out where it is happening. I'm not sure how the wonky behavior in 2015 is happening (where the VcpkgTriplet is sometimes honored but the corresponding directory is wrong)... might be worth considering just disabling 2015 support if necessary. |
Just as a heads up, the issue filed at #12086 is mentioned in this issue as an "odd behavior", and caused by the same commit. |
Just checking in on this issue as it seems pretty critical. Any ETA? Is the current plan to rollback the problematic commit or to remedy it? |
I'm looking into this now. |
This PR also renames the VcpkgUserTriplet MSBuild variable to VcpkgTriplet to minimize user confusion compared to previous practice and documentation.
This PR also renames the VcpkgUserTriplet MSBuild variable to VcpkgTriplet to minimize user confusion compared to previous practice and documentation. Co-authored-by: Robert Schumacher <[email protected]>
Commit 1451450 seems really problematic. While being able to edit these properties in the VS GUI is awesome, the issues it is causing are serious to enough to justify reverting until they are addressed.
If I have an existing project with
VcpkgTriplet
set in the.vcxproj
as the documentation suggests, then before the commit,vcpkg
respects that triplet. After, it does not. Additionally, there are other bits of wonky behavior I'm seeing, depending on machine and VS version.Environment
Reproduced as follows. Imagine happens on VS2017 as well.
To Reproduce
Steps to reproduce:
.vcxproj
project file to have the line:<VcpkgTriplet>x86-windows-static</VcpkgTriplet>
at the bottom of the
<PropertyGroup Label="Globals">
section. Reload the project when visual studio prompts. Then add
#include "minhook.h"
immediately before the main() function.
Go back to powershell in vcpkg_before and run the following commands:
x86-windows
even though the project file specifiesx86-windows-static
.<VcpkgTriplet>x86-windows-static</VcpkgTriplet>
line in the vcxproj to the "Configuration" PropertyGroup for Debug|Win32, it will then use "x86-windows-static", which is correct, but from the wrong location "C:\vckpg_after\installed\x86-windows", and still fail.
vcpkg_after
outputs"Using triplet "-windows" from "F:\vcpkg\installed\-windows\"
Expected behavior
Updating to the latest vcpkg should not break existing working projects
The text was updated successfully, but these errors were encountered: