build: adopt baselibs-style toolchain settings - #5
Conversation
Aligns .bazelrc and MODULE.bazel with the toolchain configuration used in eclipse-score/baselibs so that code compiles with the correct S-CORE certified toolchains. MODULE.bazel changes: - Add score_bazel_cpp_toolchains GCC extension: declares score_gcc_x86_64_toolchain (x86_64/Linux, GCC 12.2.0) and score_gcc_aarch64_toolchain - Add score_toolchains_rust 0.8.0 (Ferrocene Rust toolchain) - Add platforms + score_bazel_platforms dependencies - Upgrade score_docs_as_code to 2.0.3 (compat level 2, required by transitive score_process dependency) - Align rules_python, rules_rust, rules_cc, googletest, score_tooling, aspect_rules_lint, buildifier_prebuilt to the versions actually resolved by the dependency graph .bazelrc changes: - Add HTTP retry/timeout settings matching baselibs - Register GCC x86_64 + Ferrocene as common extra toolchains for host - Add _bl_stub config (baselibs flags: nlohmann JSON backend, use_typedshmd=False, warning features) - Add _bl_toolchain_common config (incompatible_strict_action_env, host_platform=x86_64-linux) - Add bl-x86_64-linux named config targeting score_bazel_platforms x86_64-linux-gcc_12.2.0-posix Build command: bazel build --config=bl-x86_64-linux //score/... Verified: 19 targets, 77 actions, Build completed successfully.
License Check Results🚀 The license check job ran with the Bazel command: bazel run //:license-checkStatus: Click to expand output |
|
The created documentation from the pull request is available at: docu-html |
- add pre-commit configuration and shared tools/run_tool.sh wrapper - import missing local link-check action from docs-as-code - fix gitlint workflow/action metadata for actionlint compatibility - refresh MODULE/MODULE.lock after tidy and extension resolution - apply auto-fixes produced by repository hooks (copyright/eof)
|
Pushed follow-up commit to make the branch pre-commit clean. What was added/fixed:
|
|
Pushed follow-up commit c909c5f to make this branch pre-commit clean. |
Add a minimal GitHub Actions workflow aligned with baselibs that builds the repository with --config=bl-x86_64-linux on PRs, main pushes, and merge groups.
|
Added a basic Linux build workflow in this PR:
It is aligned with baselibs style and now compiles the project in CI using:
Triggers:
I also ran actionlint locally for this workflow and it passes. |
Include //score/... only when score/ contains Bazel packages, so CI works both before and after migration to baselibs-like source layout.
| # FIXME: To be removed after https://github.com/eclipse-score/baselibs/issues/266 is resolved | ||
| single_version_override( | ||
| module_name = "grpc-java", | ||
| version = "1.70.0", | ||
| ) |
There was a problem hiding this comment.
do we really need that in the inc_diagnostics repo?
There was a problem hiding this comment.
Yes because this is still a problem coming from baselibs that it expect this in that version
|
@FScholPer the repository is based on this template https://github.com/eclipse-score/module_template Does it make sense to sync so we do not diverge too much? @RolandJentschETAS what is your opinion on re-syncing. |
I can add the automatic synching via bot or we do it manually. Whats your opinion? |
Updated the daily maintenance workflow to streamline permissions and job structure. Signed-off-by: Frank Scholter Peres(MBTI) <145544737+FScholPer@users.noreply.github.com>
We might need both:
The bot was introduced after the repository was created and maybe we need the manual sync first |
We can directly use https://github.com/eclipse-score/cicd-workflows/blob/main/.github/workflows/template-sync.yml if we want. But many of the repos do not sync at all or rely on the template. There are other proposals in discussion like: -> https://chatgpt.com/share/6a399423-a560-83ed-ae15-435f68b5b3ca |
How about having an initial sync (by whatever mean) and postpone the question about continuously keeping it in sync in the future. |
Signed-off-by: Frank Scholter Peres(MBTI) <145544737+FScholPer@users.noreply.github.com>
|
@nradakovic @stmuench @lh-sag @MonikaKumari26 @antonkri please check again if it fits now |
|
@FScholPer I request @nradakovic to have a look once more |
Signed-off-by: Frank Scholter Peres(MBTI) <145544737+FScholPer@users.noreply.github.com>
Summary
Aligns
.bazelrcandMODULE.bazelwith the build configuration used in eclipse-score/baselibs so that code compiles with the correct S-CORE certified toolchains (GCC 12.2.0 / Ferrocene Rust).Changes
MODULE.bazelscore_bazel_cpp_toolchainsGCC extension — declaresscore_gcc_x86_64_toolchain(x86_64/Linux, GCC 12.2.0) andscore_gcc_aarch64_toolchainscore_toolchains_rust 0.8.0(Ferrocene Rust toolchain)platforms+score_bazel_platformsdependenciesscore_docs_as_codeto 2.0.3 (compatibility level 2, required by transitivescore_processdependency — fixesERROR: score_process@1.3.2 depends on score_docs_as_code@2.0.3 with compatibility level 2)rules_python,rules_rust,rules_cc,googletest,score_tooling,aspect_rules_lint,buildifier_prebuiltto versions actually resolved by the dependency graph (removes all--check_direct_dependencieswarnings).bazelrchttp_connector_attempts,http_timeout_scaling)_bl_stubconfig: baselibs required flags (nlohmannJSON backend,use_typedshmd=False, warning features)_bl_toolchain_commonconfig:incompatible_strict_action_env,host_platform=@score_bazel_platforms//:x86_64-linuxbl-x86_64-linuxnamed build config targetingx86_64-linux-gcc_12.2.0-posixVerified
Related
Frank Scholter Peres frank.scholter_peres@mercedes-benz.com, Mercedes-Benz Tech Innovation GmbH
Provider Information