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
24 changes: 24 additions & 0 deletions .github/workflows/aarch64-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: Bazel Build (Aarch64-Linux)
permissions:
contents: read
actions: write
on:
pull_request:
types: [opened, reopened, synchronize]
Expand Down Expand Up @@ -42,3 +45,24 @@ jobs:
- name: Guardrail (no legacy features)
run: |
bazel test --config=aarch64-linux -- //:guardrail_tests
generic-aarch64-linux-gcc15:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./tests
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Setup Bazel
uses: bazel-contrib/setup-bazel@0.18.0
with:
bazelisk-cache: true
disk-cache: ${{ github.job }}
repository-cache: true
cache-save: ${{ github.event_name == 'push' }}
- name: Bazel Build (basic)
run: |
bazel build --config=aarch64-linux-gcc15 -- //:language_and_standards_tests //:feature_verification_tests
- name: Guardrail (no legacy features)
run: |
bazel test --config=aarch64-linux-gcc15 -- //:guardrail_tests
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
3 changes: 3 additions & 0 deletions .github/workflows/autosd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: Bazel Build (AutoSD 10)
permissions:
contents: read
actions: write
on:
pull_request:
types: [opened, reopened, synchronize]
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: S-CORE CI Checks
permissions:
contents: read
actions: write
on:
pull_request:
push:
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/ebclfsa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: Bazel Build (Aarch64-Linux)(ebclfsa)
permissions:
contents: read
actions: write
on:
pull_request:
types: [opened, reopened, synchronize]
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/qnx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: Bazel Build (QNX)
permissions:
contents: read
actions: write
on:
pull_request:
types: [opened, reopened, synchronize]
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/x86_64-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************
name: Bazel Build (x86_64-Linux)
permissions:
contents: read
actions: write
on:
pull_request:
types: [opened, reopened, synchronize]
Expand Down Expand Up @@ -48,3 +51,30 @@ jobs:
- name: Bazel Test (force_pic)
run: |
bazel test --lockfile_mode=error --config=x86_64-linux --force_pic -- //feature_verification/opt_in_features:force_pic_flags_test
generic-x86_64-linux-gcc15:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./tests
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Setup Bazel
uses: bazel-contrib/setup-bazel@0.18.0
with:
bazelisk-cache: true
disk-cache: ${{ github.job }}
repository-cache: true
cache-save: ${{ github.event_name == 'push' }}
- name: Bazel Build (basic)
run: |
bazel build --lockfile_mode=error --config=x86_64-linux-gcc15 -- //:language_and_standards_tests //:feature_verification_tests
- name: Guardrail (no legacy features)
run: |
bazel test --lockfile_mode=error --config=x86_64-linux-gcc15 -- //:guardrail_tests
- name: Bazel Test
run: |
bazel test --lockfile_mode=error --config=x86_64-linux-gcc15 -- //:language_and_standards_tests //:feature_verification_tests
- name: Bazel Test (force_pic)
run: |
bazel test --lockfile_mode=error --config=x86_64-linux-gcc15 --force_pic -- //feature_verification/opt_in_features:force_pic_flags_test
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
2 changes: 1 addition & 1 deletion MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ bazel_dep(name = "bazel_skylib", version = "1.8.2")
# Constraint values for specifying platforms and toolchains
# *******************************************************************************
bazel_dep(name = "platforms", version = "1.1.0")
bazel_dep(name = "score_bazel_platforms", version = "0.1.2")
bazel_dep(name = "score_bazel_platforms", version = "1.0.0")

# *******************************************************************************
# C++ Rules for Bazel
Expand Down
4 changes: 2 additions & 2 deletions MODULE.bazel.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 8 additions & 2 deletions docs/extension_api.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,8 @@ Required attributes:
Common package selection attributes:

- `use_default_package`: resolve package metadata from `packages/version_matrix.bzl`
- `version`: GCC version string for Linux toolchains
- `version`: GCC version string for Linux toolchains (e.g. `12.2.0` or `15.3.0` —
see `packages/version_matrix.bzl` for all versions currently packaged)
- `sdp_version`: QNX SDP version string
- `sdk_version`: alternative SDK identifier used in matrix resolution
- `sdp_to_link`: override the package repository name that the toolchain uses
Expand Down Expand Up @@ -121,8 +122,13 @@ configuration such as:
--extra_toolchains=@score_gcc_toolchain//:x86_64-linux-gcc_12.2.0
```

A newer GCC 15.3.0 toolchain is packaged as well; activate it the same way by
referencing its generated label (e.g.
`--extra_toolchains=@score_gcc_toolchain_15//:x86_64-linux-gcc_15.3.0`).

The test workspace under `tests/` provides complete `.bazelrc`
configurations for this activation step.
configurations for this activation step, including a `x86_64-linux-gcc15` /
`aarch64-linux-gcc15` config pair for the GCC 15.3.0 toolchain.

## Migrating Downstream Workspaces

Expand Down
3 changes: 3 additions & 0 deletions docs/migration_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,9 @@ gcc.toolchain(
use_repo(gcc, "score_gcc_toolchain")
```

> GCC 15.3.0 is available too — set `version = "15.3.0"` instead. See
> [Extension API](extension_api.md#gcctoolchain-attributes) for details.

These flow through the `extra_compile_flags`, `extra_c_compile_flags`,
`extra_cxx_compile_flags`, and `extra_link_flags` hooks documented in
[Extension API](extension_api.md) and [Toolchain features](features.md). Use them
Expand Down
16 changes: 16 additions & 0 deletions packages/linux/aarch64/gcc/15.3.0/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

exports_files([
"gcc.BUILD",
])
56 changes: 56 additions & 0 deletions packages/linux/aarch64/gcc/15.3.0/gcc.BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

"""Build file for GCC external package"""

package(default_visibility = ["//visibility:public"])

filegroup(
name = "all_files",
srcs = glob(["*/**/*"]),
)

filegroup(
name = "bin",
srcs = ["bin"],
)

filegroup(
name = "ar",
srcs = ["bin/aarch64-unknown-linux-gnu-ar"],
)

filegroup(
name = "cc",
srcs = ["bin/aarch64-unknown-linux-gnu-gcc"],
)

filegroup(
name = "gcov",
srcs = ["bin/aarch64-unknown-linux-gnu-gcov"],
)

filegroup(
name = "cxx",
srcs = ["bin/aarch64-unknown-linux-gnu-g++"],
)

filegroup(
name = "strip",
srcs = ["bin/aarch64-unknown-linux-gnu-strip"],
)

filegroup(
name = "sysroot_dir",
srcs = ["aarch64-unknown-linux-gnu/sysroot"],
)
16 changes: 16 additions & 0 deletions packages/linux/x86_64/gcc/15.3.0/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

exports_files([
"gcc.BUILD",
])
56 changes: 56 additions & 0 deletions packages/linux/x86_64/gcc/15.3.0/gcc.BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# *******************************************************************************
# Copyright (c) 2025 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This program and the accompanying materials are made available under the
# terms of the Apache License Version 2.0 which is available at
# https://www.apache.org/licenses/LICENSE-2.0
#
# SPDX-License-Identifier: Apache-2.0
# *******************************************************************************

"""Build file for GCC external package"""

package(default_visibility = ["//visibility:public"])

filegroup(
name = "all_files",
srcs = glob(["*/**/*"]),
)

filegroup(
name = "bin",
srcs = ["bin"],
)

filegroup(
name = "ar",
srcs = ["bin/x86_64-unknown-linux-gnu-ar"],
)

filegroup(
name = "cc",
srcs = ["bin/x86_64-unknown-linux-gnu-gcc"],
)

filegroup(
name = "gcov",
srcs = ["bin/x86_64-unknown-linux-gnu-gcov"],
)

filegroup(
name = "cxx",
srcs = ["bin/x86_64-unknown-linux-gnu-g++"],
)

filegroup(
name = "strip",
srcs = ["bin/x86_64-unknown-linux-gnu-strip"],
)

filegroup(
name = "sysroot_dir",
srcs = ["x86_64-unknown-linux-gnu/sysroot"],
)
12 changes: 12 additions & 0 deletions packages/version_matrix.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,12 @@ VERSION_MATRIX = {
"strip_prefix": "aarch64-unknown-linux-gnu",
"url": "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.4/aarch64-unknown-linux-gnu_gcc12.tar.gz",
},
"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 on lines +24 to +29
"aarch64-linux-autosd10": {
"build_file": "@score_bazel_cpp_toolchains//packages/linux/aarch64/autosd/10.0:autosd.BUILD",
"extra_c_compile_flags": [
Expand Down Expand Up @@ -86,6 +92,12 @@ VERSION_MATRIX = {
"strip_prefix": "x86_64-unknown-linux-gnu",
"url": "https://github.com/eclipse-score/toolchains_gcc_packages/releases/download/v0.0.4/x86_64-unknown-linux-gnu_gcc12.tar.gz",
},
"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",
},
Comment on lines +95 to +100
"x86_64-linux-autosd10": {
"build_file": "@score_bazel_cpp_toolchains//packages/linux/x86_64/autosd/10.0:autosd.BUILD",
"extra_c_compile_flags": [
Expand Down
15 changes: 15 additions & 0 deletions tests/.bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,14 @@ build:x86_64-linux --host_platform=@score_bazel_platforms//:x86_64-linux-gcc_12.
build:x86_64-linux --extra_toolchains=@score_gcc_toolchain//:x86_64-linux-gcc_12.2.0
build:x86_64-linux --host_features=use_pthread

# -------------------------------------------------------------------------------
# Different toolchain configuration for x86_64-linux-gcc15 (host)
# -------------------------------------------------------------------------------
build:x86_64-linux-gcc15 --config=shared
build:x86_64-linux-gcc15 --host_platform=@score_bazel_platforms//:x86_64-linux-gcc_15.3.0-posix
build:x86_64-linux-gcc15 --extra_toolchains=@score_gcc_toolchain_15//:x86_64-linux-gcc_15.3.0
build:x86_64-linux-gcc15 --host_features=use_pthread

# -------------------------------------------------------------------------------
# Different toolchain configuration for x86_64-linux (host)
# -------------------------------------------------------------------------------
Expand Down Expand Up @@ -76,6 +84,13 @@ build:aarch64-linux --config=x86_64-linux
build:aarch64-linux --platforms=@score_bazel_platforms//:aarch64-linux-gcc_12.2.0-posix
build:aarch64-linux --extra_toolchains=@score_aarch64_gcc_toolchain//:aarch64-linux-gcc_12.2.0

# -------------------------------------------------------------------------------
# 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 +87 to +93
# -------------------------------------------------------------------------------
# Toolchain configuration for x86_64-linux-autosd10 (target)
# -------------------------------------------------------------------------------
Expand Down
Loading
Loading