Draft
Conversation
I had to delete some JSON tests because: - they use tmpnam - tmpnam causes the linker to emit a warning, since it's unsafe - Bazel linking rules treat warnings as errors I tried adding the linkopt -Wl,--no-fatal-warnings but it had no effect.
Contributor
|
I guess this goes hand in hand with #15 |
Contributor
Yes, probably. The devcontainer could supply these dependencies for "development host builds", of course. |
Author
|
By the way, my system GCC is version 13. I've been trying to build with 14 and 15 too, and they pick up a lot of new errors with baselibs, such missing #includes. So this PR will only build with GCC 13 and lower. |
tmewett
commented
Aug 28, 2025
| common --//score/json:base_library=nlohmann | ||
| common --extra_toolchains=@gcc_toolchain//:host_gcc_12 | ||
| build --incompatible_strict_action_env | ||
| build --cxxopt=-std=c++17 --cxxopt=-Wno-error=deprecated-declarations --cxxopt=-Wno-error=self-move --cxxopt=-Wno-error=pessimizing-move |
Author
There was a problem hiding this comment.
This isn't a good solution for compiler flags, since this .bazelrc is not applied when building this project as a dependenciy via another Bazel project.
A better approach would be to define a toolchain in Bazel which just wraps the system compiler and exposes flags as features.
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.
This is a showcase of baselibs building with all system dependencies for all libraries and tools, for demonstration and discussion.
The S-CORE infrastructure team has been discussing how S-CORE can be integrated into a wider system. It is usually requirements for integrators that:
Currently, S-CORE components do not meet either of these requirements, because:
This PR modifies baselibs to address these points. All dependencies now must be installed in the system in order to build. For me on Ubuntu, that means installing these packages:
g++ libacl1-dev libcap-dev libseccomp-dev valgrind libboost-container1.83-dev nlohmann-json3-dev