eclipse-score / eclipse-score/score

Proposal: build clean with recent compilers for system-agnostic S-CORE

Open
#1,730 6 comments 0 reactions 1 assignee Claimed by @anmittag View on GitHub
committee:technical_lead_circle
Dominant language
Starlark
Stars
109
Forks
105
Avg merge
1d 9h
Merged PRs (30d)
24

Description

### Discussed in https://github.com/orgs/eclipse-score/discussions/1692

Originally posted by **AlexanderLanin** September 2, 2025
## Context
The current setup primarily relies on **qcc for QNX 8.0 = gcc 12**.
However, SCORE is expected to be integrated into **multiple target environments**.
Relying on a single compiler/version locks SCORE to one ecosystem and makes broader adoption difficult.

## Problems
- **Limited scope:** qcc/gcc 12 is tied to QNX 8.0. For future targets beyond QNX, this setup does not scale.
- **Missed diagnostics:** Newer and other compilers provide stronger checks “for free,” reducing the need for additional static-analysis tools.

## Proposal
Adopt a **“build clean with recent compilers”** philosophy to make SCORE as **system-agnostic as safety allows**:
- Define a **minimum set of supported compilers** (covering gcc and clang, old and modern).
- Require all SCORE modules to build cleanly with this set.
- Ensure compiler support covers both **safety-relevant targets** and **integration into arbitrary environments**.

## Benefits
- **System-agnostic:** SCORE can integrate into a wide range of environments, not just QNX.
- **Future-proof:** Easier adaptation to new platforms.
- **Higher quality:** Modern compilers catch issues that older ones miss.
- **Clear baseline:** Every module is validated against the same modern standards.

## Next Steps
- A **go-ahead from tech leads** to move forward.
- Infrastructure community defines the **exact compiler set and versions**.
- Update CI pipelines to enforce clean builds across the selected compilers.

---

❓ **Requested decision:** Should SCORE adopt a modern **system-agnostic compiler baseline** (build clean with recent compilers, not just qcc/gcc 12) to support integration into arbitrary environments as far as safety allows?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.