Fix ParseFlags so -stdlib goes in CXXFLAGS #4521
Merged
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.
(from #4520 @ryandesign)
gpsd 3.25 failed to build with recent clang if -stdlib=libc++ was passed by the user in CXXFLAGS because gpsd used MergeFlags (which uses ParseFlags) to move the flags where SCons thinks they belong, and because SCons did not know where -stdlib goes it put it in CCFLAGS, which was then passed to the C compiler during a test, and clang emitted a warning that the -stdlib flag was unknown, and the test had requested that warnings be turned into errors with -Werror, which caused the test to get the wrong result which caused compilation to fail later.
See: https://gitlab.com/gpsd/gpsd/-/issues/279
It was easier to make a new PR with the additional files to update. This obsoletes PR #4520
Contributor Checklist:
CHANGES.txt
(and read theREADME.rst
)