eclipse-score / eclipse-score/bazel_cpp_toolchains

Missing sysroot flags for assembler actions in 1.0.3 for autosd10 build

クローズ
#141 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Starlark
スター
2
フォーク
11
平均マージ
1日 16時間
マージ済み PR(30日)
14

説明

### Description

In version 1.0.3, the sysroot configuration seems to be missing for assembler actions. This causes the compiler to fall back to the host system paths (e.g., /usr/include) when compiling .S assembly files, breaking build hermeticity and throwing absolute path inclusion(s) found in rule errors in Bazel.

Note that the same build worked in 0.5.4

### Analysis results

_No response_

### Solution

_No response_

### Error Occurrence Rate

None

### How to reproduce

- Use score_bazel_cpp_toolchains version 1.0.3.
- use autosd toolchain:

> gcc = use_extension("@score_bazel_cpp_toolchains//extensions:gcc.bzl", "gcc")
> gcc.toolchain(
> name = "score_cc_autosd10_x86_64",
> runtime_ecosystem = "autosd10",
> target_cpu = "x86_64",
> target_os = "linux",
> use_default_package = True,
> )

- Try to compile a project that includes pure assembly files with a C preprocessor (e.g., BoringSSL with its .S files).
- The build will fail during the assembly step with an error like:

`Compiling crypto/hrss/asm/poly_rq_mul.S failed: absolute path inclusion(s) found in rule '@@boringssl+//:crypto':
the source file 'crypto/hrss/asm/poly_rq_mul.S' includes the following non-builtin files with absolute paths:
'/usr/include/stdc-predef.h'
`

### Supporting Information

_No response_

### Classification

Major

### First Affected Release

1.0

### Last Affected Release

1.0

### Expected Fixed Release

before release (main)

### Category

- [ ] Safety Relevant
- [ ] Security Relevant

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start with the gcc extension at @score_bazel_cpp_toolchains//extensions:gcc.bzl and reproduce the autosd10 configuration from the issue using a project with BoringSSL .S files. Check the assembler action's sysroot handling; done means the assembly step no longer falls back to /usr/include or reports absolute path inclusions.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
build-system
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
58/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。