-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
BUILD(cmake): Use external module for compiler flags #5960
Merged
Krzmbrzl
merged 13 commits into
mumble-voip:master
from
Krzmbrzl:streamline-packetdatastream-impl
Jan 7, 2024
Merged
BUILD(cmake): Use external module for compiler flags #5960
Krzmbrzl
merged 13 commits into
mumble-voip:master
from
Krzmbrzl:streamline-packetdatastream-impl
Jan 7, 2024
Conversation
This file contains 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
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
2 times, most recently
from
November 13, 2022 18:02
6e48d18
to
78f62c1
Compare
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
7 times, most recently
from
December 31, 2022 17:32
f6d07ca
to
48ffafc
Compare
The macOS build failure is due to protocolbuffers/protobuf#9181, which should be resolved in protobuf v3.20 (or later). However, our 1.5 build env currently uses Protobuf v3.19 and therefore the build on macOS currently fails. |
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
from
February 3, 2023 11:58
8b59640
to
f1bc07e
Compare
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
3 times, most recently
from
January 4, 2024 08:55
ab48148
to
792558a
Compare
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
7 times, most recently
from
January 4, 2024 16:40
ece24d9
to
b14d0a9
Compare
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
from
January 6, 2024 09:45
fa39834
to
71790e7
Compare
We use our own fork in order to be able to mark included files as system files to avoid warnings from them.
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
from
January 7, 2024 16:03
71790e7
to
bb11cd9
Compare
Using a separate module instead of encoding the different flags for different compilers into our own cmake source code should clean things up a bit and make the intention more clear (as the flags sometimes have rather cryptic names). This commit also contains a functional change in that it removes the "fast-math" compile option (from optimized builds) as this is incompatible with at least Opus.
This eradicates some platform differences Fixes mumble-voip#3845
The way this union was accessed is not covered by the C++ standard and was therefore undefined behavior. Therefore, the code was rewritten to stick to standard C++.
The migration path was implemented in 0e17c53 but the QUuid object created for the GKey keyboard shortcuts had an error in the constructor arguments (wrong pairing of bytes) which would lead to some bytes being discarded and thus to a different (invalid) QUuid. This has been fixed.
In various places we relied on compiler extensions such as variable-length arrays on the stack or using non-standard escape sequences. In order to make our code as portable as possible, these parts of the code have been refactored to only use standard C++. Furthermore, the new warning settings triggered a bunch of new warnings all over the place that have been addressed by this commit.
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
from
January 7, 2024 16:10
bb11cd9
to
b5a67c0
Compare
Instead of relying on explicitly having to use the "Release" target, we now enable LTO for everything but the special "Debug" target. That is, we assume that every configuration other than "Debug" is likely meant as some sort of release build (potentially with external flags) and thus we want to make use of LTO.
Krzmbrzl
force-pushed
the
streamline-packetdatastream-impl
branch
from
January 7, 2024 16:41
7c5a709
to
6b4b50f
Compare
Krzmbrzl
added a commit
to Krzmbrzl/mumble-docker
that referenced
this pull request
Jan 7, 2024
Now that mumble-voip/mumble#5960 has been merged, building on ARM should no longer suffer from failing test cases and thus the corresponding images can now be enabled here. See also mumble-voip#3
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.
This PR also introduces new flags to ensure that the
char
type is always signed (Fixes #3845)Furthermore, this also increases the default warning levels, which is why it also includes several commits to fix the new warnings.
Checks