internal/rosa: strace artifact
All checks were successful
Test / Create distribution (push) Successful in 1m2s
Test / Sandbox (push) Successful in 3m1s
Test / ShareFS (push) Successful in 4m49s
Test / Hakurei (push) Successful in 5m37s
Test / Sandbox (race detector) (push) Successful in 5m35s
Test / Hakurei (race detector) (push) Successful in 8m36s
Test / Flake checks (push) Successful in 1m21s

This is not part of the system, but a useful development tool. The test suite is quite broken but that is considered acceptable for now.

Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
2026-03-17 20:40:17 +09:00
parent 20ebddd9bf
commit 7c932cbceb
2 changed files with 52 additions and 0 deletions

View File

@@ -123,6 +123,7 @@ const (
Sed
Setuptools
SquashfsTools
Strace
TamaGo
Tar
Texinfo

51
internal/rosa/strace.go Normal file
View File

@@ -0,0 +1,51 @@
package rosa
import "hakurei.app/internal/pkg"
func (t Toolchain) newStrace() (pkg.Artifact, string) {
const (
version = "6.19"
checksum = "XJFJJ9XLh_1rHS3m_QNjLKzkkBAooE-QT9p9lJNNWowAmd54IJop_fI4-IFtjeeL"
)
return t.NewPackage("strace", version, pkg.NewHTTPGet(
nil, "https://strace.io/files/"+version+"/strace-"+version+".tar.xz",
mustDecode(checksum),
), &PackageAttr{
SourceKind: SourceKindTarXZ,
// patch not possible with nonzero SourceKind
ScriptEarly: `
sed -i 's/off64_t/off_t/g' \
tests/readahead.c \
tests/sync_file_range.c \
tests/sync_file_range2.c
sed -i 's/unsigned int msg_len;$/uint32_t msg_len;/g' \
tests/nlattr.c
`,
}, &MakeHelper{
Configure: [][2]string{
// tests broken on clang
{"disable-gcc-Werror"},
{"enable-mpers", "no"},
},
// does not compile on musl, hangs after patch
SkipCheck: true,
},
XZ,
KernelHeaders,
), version
}
func init() {
artifactsM[Strace] = Metadata{
f: Toolchain.newStrace,
Name: "strace",
Description: "a diagnostic, debugging and instructional userspace utility",
Website: "https://strace.io/",
ID: 4897,
}
}