Bug 41187

Summary: rpmbuild меняет бинарники при сборке
Product: Branch p9 Reporter: Андрей Русев <raa>
Component: rpm-buildAssignee: Gleb F-Malinovskiy <glebfm>
Status: CLOSED FIXED QA Contact: qa-p9 <qa-p9>
Severity: major    
Priority: P5 CC: vt
Version: не указана   
Hardware: x86_64   
OS: Linux   

Description Андрей Русев 2021-10-21 17:35:53 MSK
При создании пакета rpmbuild автоматически изменяет бинарники прежде, чем положить их в итоговый rpm. Предположительно они стрипаются, в p8/p7/p6 помогало
%brp_strip_none *
в p9/p10 не помогает. По требованиям регулятора мы зашиваем в rpm контрольные суммы на бинарники, полученные при их сборке, так что любое изменение этих бинарников недопустимо. Расскажите, пожалуйста:
1. можно ли отключить этот препроцессинг и как
2. что происходит при этом препроцессинге и зачем (возможно, мы будем делать его сами при сборке, если это действительно критично для функционирования)
Comment 1 Gleb F-Malinovskiy 2021-10-25 18:41:27 MSK
Честно говоря, меня самого удивляет, что что-то могло в этой области измениться.

Используйте макрос %add_debuginfo_skiplist (его аргумент передаётся опции -path программы find, т.е. что-то типа %add_debuginfo_skiplist /opt/mysoft/*) для того, чтобы debuginfo не искалось в тех путях, в которых вы не хотите, чтобы не менялись ELF-ы.

В остальном я считаю, что само по себе изменения ELF-ов это не бага (а фича :).
Comment 2 Gleb F-Malinovskiy 2021-10-25 18:49:35 MSK
(Ответ для Андрей Русев на комментарий #0)
> 2. что происходит при этом препроцессинге и зачем (возможно, мы будем делать
> его сами при сборке, если это действительно критично для функционирования)

А, второй вопрос пропустил.  Скорее всего, debuginfo редактирует debugedit (см. https://sourceware.org/debugedit), для функционирования это не будет критично, если исходников и отделённого debuginfo всё равно не будет рядом.
Comment 3 Андрей Русев 2021-11-01 19:34:05 MSK
Спасибо! Помогло.