[devel] I: alternative soname implementations considered harmful

Dmitry V. Levin ldv на altlinux.org
Ср Июн 19 10:25:13 MSK 2019


On Wed, Jun 19, 2019 at 09:33:56AM +0300, Vitaly Lipatov wrote:
> Dmitry V. Levin писал 19.6.19 0:30:
> > On Mon, Jun 17, 2019 at 05:51:55PM +0300, Dmitry V. Levin wrote:
> >> On Sun, Jun 16, 2019 at 12:20:50AM +0300, Dmitry V. Levin wrote:
> >> > Я всё-таки склоняюсь к мысли, что альтернативные реализации одного soname
> >> > в рамках репозитория следует запретить.  Сейчас в Сизифе 18 таких soname.
> 
> Так а аргументы будут?
> Точнее, каковы будут механизмы запрета и механизмы исключения из 
> запрета.

Делать разные soname.

> ...
> >> gcc5-5.3.1-alt6.src.rpm	gcc5-gdb-plugin	libcc1.so.0
> >> gcc6-6.3.1-alt4.src.rpm	gcc6-gdb-plugin	libcc1.so.0
> >> gcc7-7.3.1-alt9.src.rpm	gcc7-gdb-plugin	libcc1.so.0
> >> gcc8-8.3.1-alt3.src.rpm	gcc8-gdb-plugin	libcc1.so.0
> Надеюсь, цифры уберём и у нас будет один gcc :)

Здесь всё ещё проще: поскольку gdb использует libcc1.so с помощью dlopen,
libcc1.so.0 вообще не нужен.

> >> wine-4.10.1-alt1.src.rpm	libwine	libwine.so.1
> >> wine-vanilla-4.10-alt1.src.rpm	libwine-vanilla	libwine.so.1
> Что мне кажется, что тут коса на камень.

Так они же ещё и разные:

$ rpmsodiff libwine-vanilla-4.10-alt1.x86_64.rpm libwine-4.10.1-alt1.x86_64.rpm
	common sonames:
libwine.so.1	/usr/lib64/libwine.so.1.0	/usr/lib64/libwine.so.1.0

--- libwine-vanilla-4.10-alt1/libwine.so.1	2019-06-10 23:56:15.000000000 +0300
+++ libwine-4.10.1-alt1/libwine.so.1	2019-06-11 20:12:18.000000000 +0300
@@ -65,2 +65,3 @@
 wine_dbgstr_wn	T
+wine_dladdr	T
 wine_dlclose	T
@@ -80,2 +81,4 @@
 wine_get_data_dir	T
+wine_get_libs	T
+wine_get_patches	T
 wine_get_server_dir	T

	3 symbols added
T wine_dladdr
T wine_get_libs
T wine_get_patches

$ apt-cache showpkg 'libwine.so.1()(64bit)'
Package: libwine.so.1()(64bit)
Versions: 

Reverse Depends: 
  wine-grdwine,libwine.so.1()(64bit) set:kikzKTTOo11
  dssi-vst,libwine.so.1()(64bit) set:kikzKTTOo11
Dependencies: 
Provides: 
Reverse Provides: 
libwine-vanilla 4.10-alt1 на 1560199706
libwine 1:4.10.1-alt1 на 1560272474

Каким образом клиенты libwine.so.1 будут выбирать нужную реализацию?


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 801 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20190619/2d6685fc/attachment.bin>


Подробная информация о списке рассылки Devel