Conversation
|
RReichert
commented
May 13, 2025
| # WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. | ||
| # | ||
|
|
||
| option(ABSL_PROPAGATE_CXX_STD "Use CMake C++ standard meta features (e.g. cxx_std_14) that propagate to targets that link to Abseil" true) |
Contributor
Author
There was a problem hiding this comment.
protobuf now has abseil, hence the need for this. I believe in the very latest version they've removed abseil, but we aren't there yet.
RReichert
commented
May 13, 2025
Comment on lines
254
to
+257
| if (x_CXX_STANDARD) | ||
| list(APPEND language_standards_args CXX ${x_CXX_STANDARD}) | ||
| elseif (SWIFT_CXX_STANDARD) | ||
| list(APPEND language_standards_args CXX ${SWIFT_CXX_STANDARD}) |
Contributor
Author
There was a problem hiding this comment.
here if the caller specified the CXX_STANDARD it prioritizes that over the global variable SWIFT_CXX_STANDARD
RReichert
commented
May 13, 2025
| function(swift_add_test target) | ||
| set(argOption "INTEGRATION_TEST" "PARALLEL" "POST_BUILD" "UNIT_TEST" "VALGRIND_MEMCHECK") | ||
| set(argSingle "COMMENT" "WORKING_DIRECTORY") | ||
| set(argSingle "C_STANDARD" "CXX_STANDARD" "COMMENT" "WORKING_DIRECTORY") |
Contributor
Author
There was a problem hiding this comment.
we can not set the C++ standard used by the test code via the function call
jbangelo
approved these changes
May 14, 2025
This was referenced May 19, 2025
RReichert
pushed a commit
to swift-nav/albatross
that referenced
this pull request
May 19, 2025
Automated PR by Jenkins. If CI has passed successfully, merge away! **cmake** 8920f2a3 -> 361035b6 - 361035b6 : Update protobuf to v25.1 (swift-nav/cmake#183) - 5bf22f7d : Update CMake minimum required version to 3.13 (swift-nav/cmake#182) This pull request was created by https://jenkins.ci.swift-nav.com/job/CI%20Infra/job/submodule-update/20021/.
RReichert
added a commit
to swift-nav/libsbp
that referenced
this pull request
May 19, 2025
Automated PR by Jenkins. If CI has passed successfully, merge away! **cmake** 8920f2a3 -> 361035b6 - 361035b6 : Update protobuf to v25.1 (swift-nav/cmake#183) - 5bf22f7d : Update CMake minimum required version to 3.13 (swift-nav/cmake#182) This pull request was created by https://jenkins.ci.swift-nav.com/job/CI%20Infra/job/submodule-update/20021/. --------- Co-authored-by: Rodrigo Reichert <rodrigo.reichert@swift-nav.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.



Changes
Since we are upgrading the protobuf version, the location for the root CMakeLists.txt has changed, hence the update.
We also updated the swift targets (ex:
swift_add_libraryorswift_add_executable) so that we can now set a global default C++ version withSWIFT_CXX_STANDARD.Lastly tried to unify the interface between
swift_add_testand the rest of the other swift targets sinceswift_add_testwas developed separately to the rest, hence the difference in interface.These changes will allow us to set the C++ for our Swift targets independently from the third party libraries.