Bug 59533 - Используются бинарные компоненты при сборке из исходников
Summary: Используются бинарные компоненты при сборке из исходников
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: golang (show other bugs)
Version: unstable
Hardware: all Linux
: P5 normal
Assignee: Alexey Shabalin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-06-15 00:37 MSK by Alexey Shabalin
Modified: 2026-06-15 00:39 MSK (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Shabalin 2026-06-15 00:37:34 MSK
Выяснял почему не собирается новая минорная версия 1.25.9 под aarch64 на c10f2.
И выяснил что golang в исходниках носит с собой бинарные объекты с именами *.syso.
1. src/runtime/race/README:
runtime/race package contains the data race detector runtime library
файлы src/runtime/race/race_linux_arm64.syso src/runtime/race/internal/amd64v1/race_linux.syso были обновлены в минорной версии 1.25.9, теперь они собраны более новым toolchain, поэтому под c10f2 сборка больше не проходит.
2. встроенный предкомпилированный boringssl. 
src/crypto/internal/boring/syso/goboringcrypto_linux_amd64.syso
src/crypto/internal/boring/syso/goboringcrypto_linux_arm64.syso
включается при сборке GOEXPERIMENT=boringcrypto, у нас не включен и не используется.
3. данные для тестоы Win PE формата.
src/cmd/link/testdata/pe-binutils
src/cmd/link/testdata/pe-llvm

Для нас критичен только первый пункт.
По хорошему надо race_linux_*.syso собирать самим из исходников.
Есть инструмент golang.org/x/build/cmd/racebuild, или делать самим.
Это compiler-rt/lib/tsan/go (в https://github.com/llvm/llvm-project), конкретный коммит, плюс патч src/runtime/race/*.patch, потом компиляция типа
$CC gotsan.cpp -c -o race_linux_arm64.syso $FLAGS

Сейчас я отключил запуск тестов для race(линковка с этими файлами была в тестах), добавил условие для сборки с race в отдельный подпакет(с %def_disable race). Тестовое задание успешно собралось в c10f2.