последнее обновление содержало измение API и сломало (на глаз) сборку десятка пакетов, напр. http://git.altlinux.org/beehive/logs/Sisyphus-x86_64/latest/error/dosbox-1:0.74.3-alt3 http://git.altlinux.org/beehive/logs/Sisyphus-x86_64/latest/error/evms-2.5.5-alt88 в предположении, что это не было целью -- ожидать ли возвращения API на место ?
В случае dosbox он лезет в dbg.win_reg->_begy Это поле структуры, начинается с нижнего подчеркивания, не говоря уже о том что есть метод getbegy(). На мой взгляд здесь именно что идет действие в обход API Вот черновой фикс, у меня локально все собралось ``` sed -i 's/dbg.win_reg->_begy/getbegy(dbg.win_reg)/' src/debug/debug_gui.cpp sed -i 's/dbg.win_out->_begy/getbegy(dbg.win_out)/' src/debug/debug_gui.cpp sed -i 's/dbg.win_code->_begy/getbegy(dbg.win_code)/' src/debug/debug_gui.cpp sed -i 's/dbg.win_var->_begy/getbegy(dbg.win_var)/' src/debug/debug_gui.cpp sed -i 's/dbg.win_data->_begy/getbegy(dbg.win_data)/' src/debug/debug_gui.cpp ``` Мельком глянув evms предполагаю, что clist->win->_parent так же не следовало трогать и что опять идет обход API для доступа к приватным полям. Готов посмотреть все пакеты, сделать красивые sed'ы или патчи. С вас ТЗ :D
предлагаю добавить в ваш -alt2: https://git.altlinux.org/people/sbolshakov/packages/ncurses.git?p=ncurses.git;a=commitdiff;h=9cabdb2d7fa823828fca879532d93e4f16121dc0
Список пострадавших: guile-ncurses-3.1-alt1 sbolshakov @everybody libgnt-2.14.0-alt1 arseny @everybody vdr-2.2.0-alt12 @nobody rogue-5.4.4-alt3 george @qa @everybody CUnit-2.1.3-alt1.svn20140424 @nobody dosbox-1:0.74.3-alt3 george grenka mvk @everybody evms-2.5.5-alt88 mcpain mike @everybody varmon-1.2.1-alt1.qa1 @nobody Иду смотреть апстримы
(Ответ для Sergey Bolshakov на комментарий #2) > предлагаю добавить в ваш -alt2: > https://git.altlinux.org/people/sbolshakov/packages/ncurses.git?p=ncurses. > git;a=commitdiff;h=9cabdb2d7fa823828fca879532d93e4f16121dc0 Спасибо. Посмотрю, нельзя ли обойтись каким-нибудь специальным .h файлом для этом во пакетов, которые в кишочки лезут. Так-то это вроде намеренно апстрим сделал. Если ABI не ломается, лучше будет пересобрать пострадавших c legacy инклюдником.
Всё ещё проще: https://git.altlinux.org/people/george/packages/?p=rogue.git&a=commitdiff&h=4f49814b35aaa674c9ddfb1a46c32967ffa31eae Поменялся способ использовать внутреннее API (он и раньше был отдельный, см. ссылку на патч) Предлагаю ncurses оставить как есть, а пострадавших пересобрать с -DNCURSES_INTERNALS Rogue и dosbox я пересобрал.
(Ответ для Ilya Sorochan на комментарий #3) > varmon-1.2.1-alt1.qa1 @nobody Добрый день. Я немного поправил и пересобрал пакет, свои изменения отправил в апстрим varmon, PR принят
Все сломанные пакеты были пофикшены или удалены из Сизифа.