Skip to content

Add config for GCC 15.3.0 - #117

Merged
AlexanderLanin merged 3 commits into
mainfrom
nira_add_gcc15
Aug 13, 2026
Merged

Add config for GCC 15.3.0#117
AlexanderLanin merged 3 commits into
mainfrom
nira_add_gcc15

Conversation

@nradakovic

Copy link
Copy Markdown
Member

The new configuration for gcc 15.3.0 is added to be available for developer testing.

resolves: #100

@nradakovic nradakovic self-assigned this Aug 11, 2026
Copilot AI lite review requested due to automatic review settings August 11, 2026 15:56
@nradakovic nradakovic added toolchain pkg Add or update toolchain package p4 Negligible impact - improvements and/or cosmetic features. labels Aug 11, 2026
@nradakovic nradakovic added module dependency update Add or update MODULE.bazel file with new dependency version deprecated cleanup Remove deprecated targets labels Aug 11, 2026
@nradakovic nradakovic moved this from Backlog to In Progress in S-CORE Roadmap Aug 11, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Bazel module/toolchain configuration so GCC 15.3.0 packages can be fetched via the repo’s version matrix and used in the test workspace, alongside existing GCC 12.2.0 configurations.

Changes:

  • Register GCC 15.3.0 tarball packages in packages/version_matrix.bzl (and generate corresponding external gcc.BUILD package descriptors).
  • Add new test-workspace toolchain definitions and .bazelrc configs for selecting GCC 15.3.0.
  • Bump score_bazel_platforms (and related lockfiles) to 1.0.0, and bump score_rules_imagefs in the test module.

Reviewed changes

Copilot reviewed 8 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tests/MODULE.bazel.lock Updates Bazel module lock, including new GCC 15.3 package/toolchain repos.
tests/MODULE.bazel Adds GCC 15.3 toolchain(s) to the test module and updates module deps.
tests/.bazelrc Adds Bazel configs to select GCC 15.3 toolchains in tests.
packages/version_matrix.bzl Registers GCC 15.3.0 in the central package/version matrix.
packages/linux/x86_64/gcc/15.3.0/gcc.BUILD New external package BUILD for x86_64 GCC 15.3.0 tarball layout.
packages/linux/x86_64/gcc/15.3.0/BUILD Exposes gcc.BUILD for x86_64 GCC 15.3.0 package.
packages/linux/aarch64/gcc/15.3.0/gcc.BUILD New external package BUILD for aarch64 GCC 15.3.0 tarball layout.
packages/linux/aarch64/gcc/15.3.0/BUILD Exposes gcc.BUILD for aarch64 GCC 15.3.0 package.
MODULE.bazel.lock Updates root module lockfile for score_bazel_platforms bump.
MODULE.bazel Bumps score_bazel_platforms to 1.0.0.
Suppressed comments (1)

tests/MODULE.bazel:199

  • If aarch64 GCC 15.3.0 remains out of scope (per issue #100), it should not be registered in use_repo for the test module.
    "my_toolchain",
    "score_aarch64_gcc_toolchain",
    "score_aarch64_gcc_toolchain_15",
    "score_autosd_10_toolchain",

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +24 to +29
"aarch64-linux-gcc_15.3.0": {
"build_file": "@score_bazel_cpp_toolchains//packages/linux/aarch64/gcc/15.3.0:gcc.BUILD",
"sha256": "ff9fe6caed22f15a1dd87a93bff5cfa1536b5dddcff3364827f97ebc01a494a1",
"strip_prefix": "aarch64-unknown-linux-gnu",
"url": "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.5/aarch64-unknown-linux-gnu_gcc15.tar.gz",
},
Comment thread tests/MODULE.bazel
Comment on lines +118 to +127
# *******************************************************************************
# Setting default GCC (CPU:aarch64|OS:Linux|V:15.3.0|ES:posix)
# *******************************************************************************
gcc.toolchain(
name = "score_aarch64_gcc_toolchain_15",
target_cpu = "aarch64",
target_os = "linux",
use_default_package = True,
version = "15.3.0",
)
Comment thread tests/.bazelrc
Comment on lines +87 to +93
# -------------------------------------------------------------------------------
# Toolchain configuration for aarch64-linux (target)
# -------------------------------------------------------------------------------
build:aarch64-linux-gcc15 --config=x86_64-linux
build:aarch64-linux-gcc15 --platforms=@score_bazel_platforms//:aarch64-linux-gcc_15.3.0-posix
build:aarch64-linux-gcc15 --extra_toolchains=@score_aarch64_gcc_toolchain_15//:aarch64-linux-gcc_15.3.0

Comment on lines +95 to +100
"x86_64-linux-gcc_15.3.0": {
"build_file": "@score_bazel_cpp_toolchains//packages/linux/x86_64/gcc/15.3.0:gcc.BUILD",
"sha256": "c65e21725d4d9993bab0b4ef2aed7065a4bf1b0f232a068d778eb670f80daa60",
"strip_prefix": "x86_64-unknown-linux-gnu",
"url": "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.5/x86_64-unknown-linux-gnu_gcc15.tar.gz",
},
@nradakovic
nradakovic marked this pull request as draft August 11, 2026 16:01
The new configuration for gcc 15.3.0 is added to be available
for developer testing.

resolves: #100
Comment thread .github/workflows/aarch64-linux.yml Fixed
Comment thread .github/workflows/x86_64-linux.yml Fixed
Add permissions for workflows.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 14 out of 16 changed files in this pull request and generated no new comments.

Suppressed comments (4)

.github/workflows/qnx.yml:16

  • The workflow-level permissions now grants actions: write, but the qnx-build job has an explicit permissions: block that omits actions. Job-level permissions override workflow-level permissions, so qnx-build will not actually get actions: write (which may break cache uploads when cache-save is enabled on push).
permissions:
  contents: read
  actions: write

.github/workflows/aarch64-linux.yml:65

  • The new aarch64 GCC15 build step doesn’t enforce lockfile immutability. Other Linux workflows run with --lockfile_mode=error to ensure CI doesn’t silently update lockfiles.
      - name: Bazel Build (basic)
        run: |
          bazel build --config=aarch64-linux-gcc15 -- //:language_and_standards_tests //:feature_verification_tests

.github/workflows/aarch64-linux.yml:68

  • The new aarch64 GCC15 guardrail test step should also use --lockfile_mode=error for consistency with other CI jobs and to prevent lockfile drift.
      - name: Guardrail (no legacy features)
        run: |
          bazel test --config=aarch64-linux-gcc15 -- //:guardrail_tests

packages/version_matrix.bzl:28

  • The PR description says it "resolves: #100", but issue #100’s acceptance criteria includes documentation updates and ensuring the new toolchain is exercised by the existing feature/language test suites. This PR adds the version matrix entries and CI wiring, but does not update any documentation; either add the required docs updates or avoid marking the issue as resolved yet.
    "aarch64-linux-gcc_15.3.0": {
        "build_file": "@score_bazel_cpp_toolchains//packages/linux/aarch64/gcc/15.3.0:gcc.BUILD",
        "sha256": "ff9fe6caed22f15a1dd87a93bff5cfa1536b5dddcff3364827f97ebc01a494a1",
        "strip_prefix": "aarch64-unknown-linux-gnu",
        "url": "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.5/aarch64-unknown-linux-gnu_gcc15.tar.gz",

Add in documentation info for gcc15.
@AlexanderLanin
AlexanderLanin marked this pull request as ready for review August 13, 2026 13:30
@AlexanderLanin
AlexanderLanin merged commit 837bed3 into main Aug 13, 2026
18 of 24 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in INF - Infrastructure Community Aug 13, 2026
@github-project-automation github-project-automation Bot moved this from In Progress to Done in S-CORE Roadmap Aug 13, 2026
@AlexanderLanin
AlexanderLanin deleted the nira_add_gcc15 branch August 13, 2026 13:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

deprecated cleanup Remove deprecated targets module dependency update Add or update MODULE.bazel file with new dependency version p4 Negligible impact - improvements and/or cosmetic features. toolchain pkg Add or update toolchain package

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Add GCC 15.3 toolchain

4 participants