Foundational C++ libraries providing common functionality for S-CORE modules, from QM to ASIL-B integrity levels.
- Base Libraries Feature Documentation: High-level feature overview.
- Base Libraries Module Documentation: Detailed module documentation, including architecture and component requirements.
- Detailed Design: Each library includes a
README.mdwith usage examples and API details in its respectivescore/subdirectory.
To depend on score_baselibs in your Bazel module, add the following to your MODULE.bazel file:
bazel_dep(name="score_baselibs", version="x.x.x")Replace x.x.x with a version from the S-CORE Bazel Registry, where all available releases are listed.
To depend on an unreleased version (e.g., for testing or development), you can use a non-registry override in your MODULE.bazel file, for example git_override:
git_override(
module_name = "score_baselibs",
commit = "de5bb275ee9957433b3587582ac07d3eeb98dd6a",
remote = "https://github.com/eclipse-score/baselibs.git",
)Replace the commit value with the specific git hash you want to use. This override allows you to depend on any commit from the repository, bypassing the registry resolution.
To set up your development environment, follow the official S-CORE Development Environment Guide. Key requirements include:
- Operating System: Linux host or a DevContainer setup (see below).
- Build System: Bazel 8+ (managed via Bazelisk).
- QNX 8.0 SDP: For QNX builds, follow the setup instructions in Bazel toolchains for QNX.
This repository offers a DevContainer.
For setup instructions and enabling code completion, see eclipse-score/devcontainer/README.md#inside-the-container.
Note
If you are using Docker on Windows without WSL2 in between, you have to select the alternative container eclipse-s-core-docker-on-windows.
First, clone the repository:
git clone [email protected]:eclipse-score/baselibs.git
cd baselibs# Build all targets
bazel build --config=bl-x86_64-linux //...
# Run all tests
bazel test --config=bl-x86_64-linux //...# Build all targets
bazel build --credential_helper="*.qnx.com=$(pwd)/.git/tools/qnx_credential_helper.py" --config=bl-x86_64-qnx //...- GitHub Issues: Report bugs or request features.
- GitHub Discussions: Ask questions and share ideas.
- Communication and Coordination: See the pinned discussion for details on communication channels and project coordination.