Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 20 additions & 8 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,18 @@ common --registry=https://bcr.bazel.build

# Flags needed by score_baselibs and communication modules.
# Do not add more!
build --@score_baselibs//score/mw/log/flags:KRemote_Logging=False
build --@score_baselibs//score/json:base_library=nlohmann
build --@score_communication//score/mw/com/flags:tracing_library=stub
common --@score_baselibs//score/mw/log/flags:KRemote_Logging=False
common --@score_baselibs//score/json:base_library=nlohmann
common --@score_communication//score/mw/com/flags:tracing_library=stub
common --@score_baselibs//score/memory/shared/flags:use_typedshmd=False
common --@score_logging//score/datarouter/build_configuration_flags:persistent_logging=False
common --@score_logging//score/datarouter/build_configuration_flags:persistent_config_feature_enabled=False
common --@score_logging//score/datarouter/build_configuration_flags:enable_nonverbose_dlt=False
common --@score_logging//score/datarouter/build_configuration_flags:enable_dynamic_configuration_in_datarouter=False
common --@score_logging//score/datarouter/build_configuration_flags:dlt_file_transfer_feature=False
common --@score_logging//score/datarouter/build_configuration_flags:use_local_vlan=True
common --@score_logging//score/mw/log/detail/flags:KUse_Stub_Implementation_Only=False
common --@score_logging//score/mw/log/flags:KRemote_Logging=False

# stop legacy behavior of creating __init__.py files
build --incompatible_default_to_explicit_init_py
Expand All @@ -29,12 +38,15 @@ build --experimental_retain_test_configuration_across_testonly #https://github.c
test --test_tag_filters=-manual
test --test_output=errors

build:_bl_common --host_platform=@score_bazel_platforms//:x86_64-linux
build:shared --sandbox_writable_path=/var/tmp
build:shared --host_platform=@score_bazel_platforms//:x86_64-linux

# This config is for internal module usage ONLY.
build:bl-x86_64-linux --config=_bl_common
build:bl-x86_64-linux --platforms=@score_bazel_platforms//:x86_64-linux
build:bl-x86_64-linux --extra_toolchains=@gcc_toolchain//:host_gcc_12
build:x86_64-linux --config=shared
build:x86_64-linux --platforms=@score_bazel_platforms//:x86_64-linux-gcc_12.2.0-posix
build:x86_64-linux --features=-treat_warnings_as_errors # due to baselibs deprecations

# this is deprecated, use build:x86_64-linux instead
build:_bl_common --host_platform=@score_bazel_platforms//:x86_64-linux

# This config is for internal module usage ONLY.
build:bl-x86_64-qnx --config=_bl_common
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build_and_test_on_every_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ jobs:
- name: Bazel execute showcase examples
run: |
set -e
bazel build --config bl-x86_64-linux //feature_showcase:all_examples
bazel build --config x86_64-linux //feature_showcase:all_examples
while read -r target; do
bazel run --config bl-x86_64-linux "$target"
bazel run --config x86_64-linux "$target"
done < ci/showcase_targets_run.txt
- name: Feature Integration Tests
run: |
bazel test --config bl-x86_64-linux //feature_integration_tests/test_cases:fit
bazel test --config x86_64-linux //feature_integration_tests/test_cases:fit
2 changes: 1 addition & 1 deletion .github/workflows/release_verification.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
//:test_persistency_qemu \
- name: Bazel execute showcase examples
run: |
bazel build --config bl-x86_64-linux //feature_showcase:all_examples
bazel build --config x86_64-linux //feature_showcase:all_examples
release_verification:
runs-on: ubuntu-latest
needs: [test_target]
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/reusable_smoke-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ jobs:
fail-fast: false
matrix:
config:
- bl-x86_64-linux
- x86_64-linux
# Add more configs here as needed
# - bl-aarch64-linux
# - bl-x86_64-qnx
Expand Down
17 changes: 9 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,22 @@ bazel run //:docs_combo_experimental
```
## Working Builds ✅

The following modules build successfully with the `bl-x86_64-linux` configuration:
The following modules build successfully with the `x86_64-linux` configuration:

### Baselibs
```bash
bazel build --config bl-x86_64-linux @score_baselibs//score/... --verbose_failures
bazel build --config x86_64-linux @score_baselibs//score/... --verbose_failures
bazel build --config x86_64-linux @score_baselibs//score/... --verbose_failures
```

### Communication
```bash
bazel build --config bl-x86_64-linux @score_communication//score/mw/com:com --verbose_failures
bazel build --config x86_64-linux @score_communication//score/mw/com:com --verbose_failures
```

### Persistency
```bash
bazel build --config bl-x86_64-linux \
bazel build --config x86_64-linux \
@score_persistency//src/cpp/src/... \
@score_persistency//src/rust/... \
--verbose_failures
Expand All @@ -43,18 +44,18 @@ bazel build --config bl-x86_64-linux \
### Orchestration and `kyron` - async runtime for Rust

```bash
bazel build --config bl-x86_64-linux @score_orchestrator//src/...
bazel build --config x86_64-linux @score_orchestrator//src/...
```

## Feature showcase examples
The examples that are aiming to showcase features provided by S-CORE are located in `feature_showcase` folder.
You can run them currently for host platform using `--config bl-x86_64-linux`.
You can run them currently for host platform using `--config x86_64-linux`.

Execute `bazel query //feature_showcase/...` to obtain list of targets that You can run.


```bash
bazel build --config bl-x86_64-linux @score_orchestrator//src/... --verbose_failures
bazel build --config x86_64-linux @score_orchestrator//src/... --verbose_failures
```

## Operating system integrations
Expand Down Expand Up @@ -146,7 +147,7 @@ bazel build @feo//... --verbose_failures

### Persistency (Full Build)
```bash
bazel build --config bl-x86_64-linux @score_persistency//src/... --verbose_failures
bazel build --config x86_64-linux @score_persistency//src/... --verbose_failures
```

## System Dependencies
Expand Down
2 changes: 1 addition & 1 deletion build_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"build_targets": "-- @score_feo//... -@score_feo//:docs -@score_feo//:ide_support -@score_feo//:needs_json"
},
"score_logging": {
"build_targets": "@score_logging//score/... --@score_baselibs//score/memory/shared/flags:use_typedshmd=False --@score_baselibs//score/json:base_library=nlohmann --@score_logging//score/datarouter/build_configuration_flags:persistent_logging=False --@score_logging//score/datarouter/build_configuration_flags:persistent_config_feature_enabled=False --@score_logging//score/datarouter/build_configuration_flags:enable_nonverbose_dlt=False --@score_logging//score/datarouter/build_configuration_flags:enable_dynamic_configuration_in_datarouter=False --@score_logging//score/datarouter/build_configuration_flags:dlt_file_transfer_feature=False --@score_logging//score/datarouter/build_configuration_flags:use_local_vlan=True"
"build_targets": "@score_logging//score/mw/log"
}
}
}
20 changes: 10 additions & 10 deletions known_good.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@
"modules": {
"score_baselibs": {
"repo": "https://github.com/eclipse-score/baselibs.git",
"hash": "ccfe7dc563bedc77fe6e19bd7050104e80fdf7e1"
"hash": "fe74ff32f2cb8b2c99af019e7907ad9486e70b09"
},
"score_communication": {
"repo": "https://github.com/eclipse-score/communication.git",
"hash": "1d3e115e953de771cfb6c780cf677cf3fe5e8bee"
"hash": "73caa2d2b6f45f806bbd30bdf8675ab1ad551387"
},
"score_logging": {
"repo": "https://github.com/eclipse-score/logging.git",
"hash": "cddfb10832cf384ee5c3f8553fb898f56c1d1def"
"hash": "8d14d2beec9bb3ccd7a2e24926eacd13b0ffc7d1"
},
"score_persistency": {
"repo": "https://github.com/eclipse-score/persistency.git",
"hash": "652f78a822dac698dcb60f80adbc3aea488ebee5"
"hash": "69356def0bd731fda9aedc8c65336d8c2ca499da"
},
"score_orchestrator": {
"repo": "https://github.com/eclipse-score/orchestrator.git",
"hash": "dcf5518ac78d01cc06ed8a7ffe9e476c2fa43bd6"
"hash": "18e136c34750c5db707f27f917d52efc7541e087"
},
"score_kyron": {
"repo": "https://github.com/eclipse-score/kyron.git",
Expand All @@ -31,11 +31,11 @@
},
"score_tooling": {
"repo": "https://github.com/eclipse-score/tooling.git",
"hash": "092d229dbc671febe87ddce5c9763b1f62e2dbaf"
"hash": "8894fe5440436a8c6d9e214c97b18d619c7f7eac"
},
"score_platform": {
"repo": "https://github.com/eclipse-score/score.git",
"hash": "dafe356f60f725ff77941c220200e1df28965d2d"
"hash": "f4769c4b86bfe46b29b56b6c3e262c5b82db334b"
},
"score_bazel_platforms": {
"repo": "https://github.com/eclipse-score/bazel_platforms.git",
Expand All @@ -47,12 +47,12 @@
},
"score_docs_as_code": {
"repo": "https://github.com/eclipse-score/docs-as-code.git",
"hash": "d9f95fd2fdf2df494a8d499b5f061a84f320b53b"
"hash": "a9babc30a7ab1ac43c75415b9784b2bc81ed0f9d"
},
"score_process": {
"repo": "https://github.com/eclipse-score/process_description.git",
"hash": "86f77b5514e32694efed3541558041b653830380"
"hash": "496fb6dc347de414d9cbe7523204fdeb6b511197"
}
},
"timestamp": "2026-01-21T08:46:20+00:00Z"
"timestamp": "2026-01-26T11:01:36+00:00Z"
}
20 changes: 10 additions & 10 deletions score_modules.MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -11,42 +11,42 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

# Generated from known_good.json at 2026-01-21T08:46:20+00:00Z
# Generated from known_good.json at 2026-01-26T16:26:12+00:00Z
# Do not edit manually - use scripts/known_good/update_module_from_known_good.py

bazel_dep(name = "score_baselibs")
git_override(
module_name = "score_baselibs",
remote = "https://github.com/eclipse-score/baselibs.git",
commit = "ccfe7dc563bedc77fe6e19bd7050104e80fdf7e1",
commit = "efc061359d159244a9bd31a6f1dc74f9246c07b6",
)

bazel_dep(name = "score_communication")
git_override(
module_name = "score_communication",
remote = "https://github.com/eclipse-score/communication.git",
commit = "1d3e115e953de771cfb6c780cf677cf3fe5e8bee",
commit = "73caa2d2b6f45f806bbd30bdf8675ab1ad551387",
)

bazel_dep(name = "score_logging")
git_override(
module_name = "score_logging",
remote = "https://github.com/eclipse-score/logging.git",
commit = "cddfb10832cf384ee5c3f8553fb898f56c1d1def",
commit = "8d14d2beec9bb3ccd7a2e24926eacd13b0ffc7d1",
)

bazel_dep(name = "score_persistency")
git_override(
module_name = "score_persistency",
remote = "https://github.com/eclipse-score/persistency.git",
commit = "652f78a822dac698dcb60f80adbc3aea488ebee5",
commit = "0037034bf853e5f955f028fab54ed319fb0441c3",
)

bazel_dep(name = "score_orchestrator")
git_override(
module_name = "score_orchestrator",
remote = "https://github.com/eclipse-score/orchestrator.git",
commit = "dcf5518ac78d01cc06ed8a7ffe9e476c2fa43bd6",
commit = "18e136c34750c5db707f27f917d52efc7541e087",
)

bazel_dep(name = "score_kyron")
Expand All @@ -67,14 +67,14 @@ bazel_dep(name = "score_tooling")
git_override(
module_name = "score_tooling",
remote = "https://github.com/eclipse-score/tooling.git",
commit = "092d229dbc671febe87ddce5c9763b1f62e2dbaf",
commit = "8894fe5440436a8c6d9e214c97b18d619c7f7eac",
)

bazel_dep(name = "score_platform")
git_override(
module_name = "score_platform",
remote = "https://github.com/eclipse-score/score.git",
commit = "dafe356f60f725ff77941c220200e1df28965d2d",
commit = "a853a294f3fda8d40fde3ac76f60bd03fcdc6a4a",
)

bazel_dep(name = "score_bazel_platforms")
Expand All @@ -95,12 +95,12 @@ bazel_dep(name = "score_docs_as_code")
git_override(
module_name = "score_docs_as_code",
remote = "https://github.com/eclipse-score/docs-as-code.git",
commit = "d9f95fd2fdf2df494a8d499b5f061a84f320b53b",
commit = "f784d4370240cc0eafce779e5c317f6bf8988fb2",
)

bazel_dep(name = "score_process")
git_override(
module_name = "score_process",
remote = "https://github.com/eclipse-score/process_description.git",
commit = "86f77b5514e32694efed3541558041b653830380",
commit = "496fb6dc347de414d9cbe7523204fdeb6b511197",
)
56 changes: 22 additions & 34 deletions score_toolchains.MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -11,42 +11,30 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

# QNX toolchain
bazel_dep(name = "score_toolchains_qnx", version = "0.0.6")
toolchains_qnx = use_extension("@score_toolchains_qnx//:extensions.bzl", "toolchains_qnx")
toolchains_qnx.sdp(
sha256 = "f2e0cb21c6baddbcb65f6a70610ce498e7685de8ea2e0f1648f01b327f6bac63",
strip_prefix = "installation",
url = "https://www.qnx.com/download/download/79858/installation.tgz",
)
use_repo(toolchains_qnx, "toolchains_qnx_sdp")
use_repo(toolchains_qnx, "toolchains_qnx_qcc")
use_repo(toolchains_qnx, "toolchains_qnx_ifs")
register_toolchains(
"@toolchains_qnx_ifs//:ifs_x86_64",
"@toolchains_qnx_ifs//:ifs_aarch64",
dev_dependency = True,
)

#gcc toolchain for baselibs
bazel_dep(name = "score_toolchains_gcc", version = "0.5", dev_dependency = False)
gcc = use_extension("@score_toolchains_gcc//extentions:gcc.bzl", "gcc", dev_dependency = False)
# Align toolchain archive with persistency module (v0.0.3) so its labels (e.g. host_gcc_12) are present.
bazel_dep(name = "score_bazel_cpp_toolchains", version = "0.2.0")
gcc = use_extension("@score_bazel_cpp_toolchains//extensions:gcc.bzl", "gcc", dev_dependency = True)

# *******************************************************************************
# Setting default GCC (CPU:x86_64|OS:Linux|V:12.2.0|ES:posix)
# *******************************************************************************
gcc.toolchain(
url = "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.3/x86_64-unknown-linux-gnu_gcc12.tar.gz",
sha256 = "8fa85c2a93a6bef1cf866fa658495a2416dfeec692e4246063b791abf18da083",
strip_prefix = "x86_64-unknown-linux-gnu",
name = "score_gcc_toolchain",
target_cpu = "x86_64",
target_os = "linux",
version = "12.2.0",
use_default_package = True,
)
gcc.extra_features(
features = [
"minimal_warnings",
"treat_warnings_as_errors",
],

use_repo(
gcc,
"score_gcc_toolchain",
)
gcc.warning_flags(
minimal_warnings = ["-Wall", "-Wno-error=deprecated-declarations", "-Wno-error=narrowing"],
strict_warnings = ["-Wextra", "-Wpedantic"],
treat_warnings_as_errors = ["-Werror"],


rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
rust.toolchain(
edition = "2021",
versions = ["1.93.0"],
)
use_repo(gcc, "gcc_toolchain", "gcc_toolchain_gcc")
register_toolchains("@gcc_toolchain//:all")
use_repo(rust, "rust_toolchains")
4 changes: 2 additions & 2 deletions scripts/integration_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -265,8 +265,8 @@ def main():
)
parser.add_argument(
'--config',
default=os.environ.get('CONFIG', 'bl-x86_64-linux'),
help='Bazel config to use (default: bl-x86_64-linux, or from CONFIG env var)'
default=os.environ.get('CONFIG', 'x86_64-linux'),
help='Bazel config to use (default: x86_64-linux, or from CONFIG env var)'
)

args = parser.parse_args()
Expand Down
18 changes: 8 additions & 10 deletions scripts/known_good/update_module_latest.py
Original file line number Diff line number Diff line change
Expand Up @@ -133,24 +133,22 @@ def main(argv: list[str]) -> int:

for mod in known_good.modules.values():
try:
# Use module-specific branch if available, otherwise use command-line branch
branch = mod.branch if mod.branch else args.branch
if use_gh:
latest = fetch_latest_commit_gh(mod.owner_repo, branch)
else:
latest = fetch_latest_commit(mod.owner_repo, branch, token)
# Only reuse version if hash did not change
if latest != mod.hash:

old_hash = mod.hash
if latest != old_hash:
mod.hash = latest
mod.version = None # Clear version when hash changes

# Display format: if version exists, show "version -> hash", otherwise "hash -> hash"
if mod.version:
print(f"{mod.name}: {mod.version} -> {latest[:8]} (branch {branch})")
if mod.version:
print(f"{mod.name}: {mod.version} -> {latest[:8]} (branch {branch})")
else:
print(f"{mod.name}: {old_hash[:8]} -> {latest[:8]} (branch {branch})")
else:
old_hash = known_good.modules[mod.name].hash
print(f"{mod.name}: {old_hash[:8]} -> {latest[:8]} (branch {branch})")
print(f"{mod.name}: {old_hash[:8]} (no update)")
except Exception as e: # noqa: BLE001
failures += 1
print(f"ERROR {mod.name}: {e}", file=sys.stderr)
Expand Down
Loading
Loading