[devel] ALT_2.24 (was: [#175881] p8 FAILED copy=SDL)
Alexey Tourbin
alexey.tourbin на gmail.com
Вс Янв 8 14:48:04 MSK 2017
On Sat, Jan 7, 2017 at 10:22 PM, Girar Builder awaiter robot
<girar-builder на altlinux.org> wrote:
> http://git.altlinux.org/tasks/175881/logs/events.1.1.log
>
> 2017-Jan-07 19:20:28 :: test-only task #175881 for p8 started by mike:
> #100 copy SDL from sisyphus
> 2017-Jan-07 19:20:30 :: copy from `sisyphus': SDL-1.2.14-alt7.src.rpm
> 2017-Jan-07 19:20:36 :: build check OK
> 2017-Jan-07 19:20:36 :: noarch check OK
> 2017-Jan-07 19:20:38 :: plan: src +1 -1 =17510, i586 +3 -3 =33884, x86_64 +3 -3 =33833
> 2017-Jan-07 19:20:38 :: version check OK
> 2017-Jan-07 19:21:54 :: generated apt indices
> 2017-Jan-07 19:21:54 :: created next repo
> i586: NEW unmet dependencies detected:
> libSDL#1.2.14-alt7 libc.so.6(ALT_2.24)
> x86_64: NEW unmet dependencies detected:
> libSDL#1.2.14-alt7 libc.so.6(ALT_2.24)(64bit)
Мужчины, это всё не очень хорошо. Своего интерфейса ALT_2.24 быть не должно.
В свое время генеральный конструктор озвучивал тезис: нас интересует
только запускаются ли программы из других дистрибутивов у нас;
запускаются ли наши программы в чужих дистрибутивах, нас не
интересует. Ну слушайте, эта асимметрия абсурдна по крайней мере в
этической плоскости. Это примерно как сказать, что если сдохла корова
у нас - то это нас интересует; а если у американцев - то слава богу,
не интересует!
$ readelf --wide --dyn-sym /lib64/libc.so.6 |grep ALT
155: 00000000000f64e0 25 FUNC GLOBAL DEFAULT 13
__strlcpy_chk@@ALT_2.24
352: 00000000000f6500 25 FUNC GLOBAL DEFAULT 13
__strlcat_chk@@ALT_2.24
1671: 0000000000000000 0 OBJECT GLOBAL DEFAULT ABS ALT_2.24
С другой стороны, когда это всё висело на GLIBC_2.2, то это тоже было
не очень хорошо. Потому что это было обман.
У вас зависимость на интерфейс ALT_2.24 получат не отдельные редкие
пакеты, а массово все X-овые пакеты, потому что они кагбе BSD-шные и
там этот strlcpy везде пустил метастазы.
Когда я обдумывал эту тему где-то в 2011 году, я пришел к выводу, что
наименьшим из зол будет подключение strlcpy по линии -lc со стороны
статической библиотеки, кажется она называлась libc_nonshared.a.
По-моему, именно так тогда было сделано в дистрибутиве Owl. Возможен
также более или мене полный или частичный отказ от strlcpy в glibc
(можно, например, попытаться сделать символы недефолтными, чтобы они
все еще предоставлялись, но чтобы с ними уже нельзя было
слинковаться).
Подробная информация о списке рассылки Devel