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/package id cmake checks #6659
Feature/package id cmake checks #6659
Conversation
Probably this change makes no difference as we are unsing only CMAKE_MATCH_1
, but at least it matches the comment and the previous block of code... although MATCH
will probably run faster.
Wow, sorry, I was looking to one commit of the changeset (not my best day).
I don't see how this change fixes the issue, the regex continues to be the same, does the CMAKE_MATCH_1
stores the last match when using MATCHALL
?
Ok, according to CMake docs: https://cmake.org/cmake/help/v3.17/variable/CMAKE_MATCH_n.html
CMAKE_MATCH_:
Capture group <n> matched by the last regular expression
Changed, so instead of using MATCHALL, looks first for |
If we are going to match the full_settings, why not using a regex that will match only that block like \[full_settings((?!\[full_).)*
?
And really important now, how does CMake's regex engine work with new lines? With this approach the .*
pattern needs to match also new lines (usually it needs to activate a flag s
), but I see that tests are passing so it should be the default. Do we trust CMake about this?
Yes, that is the problem. Trying to write such a regex is pretty ugly, like needing |
Feature/package id cmake checks (conan-io#6659)
Changelog: Bugfix: Use the real settings value to check the compiler and compiler version in the
cmake
generator local flow when thepackage_id()
method changes values.Docs: Omit
Fix: #6658