-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
[vcpkg_configure_make] Automatically convert paths in all options that contain Windows format on Windows #19734
Conversation
…t contain Windows format on Windows
execute_process( | ||
COMMAND ${cygpath} "${matched_path}" | ||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR} | ||
OUTPUT_VARIABLE OUT_VARS | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can separate this part into a new vcpkg function in a new cmake file so that portfile.cmake can be called if needed.
I don't think the situation is so clear. I see two major issues:
|
@dg0yt Yeah, if the path is only passed to the tool, yes. And we can't judge the function of the parameter inside |
I would appreciate a single function (or a set of functions) for msys path conversion instead of proliferating path conversion code over multiple consuming scripts. But when you want to use I don't like so much the idea of adding a warning message when it is unlikely to indicate an actual issue. AFAIK there is no actual issue besides icu ATM. Msys path conversion seems to do the right thing most of the time. |
And of course you need the matching |
So we prefer to use #19726 instead of this. |
Since
vcpkg_*_make
is used in Windows to use the minGW cross-compilation environment, the path included in all options must be in unix format at this time.Add automatic conversion code to prevent parameters in the wrong format from being passed in.
Here are some reasons why it was modified here:
string(REGEX)
.portfile.cmake
.Related: #19726
Fixes #18086.