From: Vitaly Chikunov <vt@altlinux.org> To: ALT Linux Team development discussions <devel@lists.altlinux.org> Subject: Re: [devel] переработанный документ SharedLibsPolicy (update 1) Date: Fri, 15 Aug 2025 09:21:04 +0300 Message-ID: <rlcepim5xv33dkyz2a5iq3yauh@altlinux.org> (raw) In-Reply-To: <e3ankrlva4belragfmr44iarid@iv-work> On Thu, Aug 14, 2025 at 02:33:47PM +0400, Ivan A. Melnikov wrote: > On Thu, Aug 07, 2025 at 05:20:26PM +0300, Anton Farygin wrote: > [...] > > * Каждая несовместимая версия библиотеки должна быть в отдельном бинарном > > пакете. > > * Название пакета: `libfoo%abiversion` > > * Если имя библиотеки заканчивается на цифру, то используется подчёркивание: > > `libfoo_%abiversion` > > * В пакете не должно быть файлов с путями, не содержащими номер ABI. > > Странная формулировка. > > [...] > > == Как выбирать %abiversion == > > > > Если библиотека использует `soversion` — используем его как %abiversion. > > > > Если `soversion` отсутствует или нестабилен — используем: > > > > * возрастающее число: `libfoo0`, `libfoo1` > > * major-версию: `libqt3`, `libqt4` > > * major.minor: `libdb4.0`, `libdb4.1` > > * часть soname: `libcurl4`, `libflac8` > [...] > > * Если два пакета конфликтуют по путям, они не смогут сосуществовать — тогда > > старую версию нужно удалить, а все зависимости — пересобрать. > [...] > > > Здесь не очень понятно описано, что делать, если апстрим не задаёт > никакого soname для библиотеки. Ну то есть, очевидно, надо идти > в апстрим и заниматься просветительской работой, сопровождаемой > pull request'ами, но пока эта работа движется, библиотеку как-то > же можно запаковать. > > Чаще всего такие библиотеки окажутся установлеными во что-то > похожее на %_libdir/libfoo.so. Переименоввывать её странно, > да и динамический компоновщик кажется не найдёт такую > библиотеку по какому-то другому имени. Значит, в разных > сборках такой библиотеки будет один и тот же файл. > А это уже противоречит требованию предложенного policy. > > На мой взгляд, разумнее всего такие библиотеки паковать > в пакет с именем libfoo и надеятся на лучшее, так как > пакет libfooN, набирающий со временем кофликты > с libfoo0, libfoo1, ..., libfoo$((N-1)) технически > ничем не лучше. > > Можно конечно пытаться задать свой soname патчем. Это > решило бы многие проблемы, но есть опасность пересечься > со схемой формирования soname, которую рано или поздно > выберет апстрим. Soname необходимо и достаточно менять - если произошло обратно несовместимое изменение ABI. Как правило, об этом изменении лучше всего знает только апстрим. > > В общем, я не могу ничего рекомендовать для такой ситуации, > однако мне кажется SharedLibsPolicy должна явно описать > случай отсутствия soname. > > -- > wbr, > iv m. > _______________________________________________ > Devel mailing list > Devel@lists.altlinux.org > https://lists.altlinux.org/mailman/listinfo/devel
next prev parent reply other threads:[~2025-08-15 6:21 UTC|newest] Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2025-08-07 11:46 [devel] переработанный документ SharedLibsPolicy Anton Farygin 2025-08-07 12:57 ` Dmitry V. Levin 2025-08-07 13:09 ` Anton Farygin 2025-08-08 20:19 ` Vitaly Chikunov 2025-08-07 14:20 ` [devel] переработанный документ SharedLibsPolicy (update 1) Anton Farygin 2025-08-08 7:25 ` Anton Farygin 2025-08-14 10:33 ` Ivan A. Melnikov 2025-08-14 19:31 ` Vitaly Chikunov 2025-08-15 6:21 ` Vitaly Chikunov [this message] 2025-08-15 6:35 ` Ivan A. Melnikov 2025-08-15 6:37 ` Anton Midyukov 2025-08-15 7:40 ` Vitaly Chikunov 2025-08-15 8:27 ` Vitaly Chikunov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=rlcepim5xv33dkyz2a5iq3yauh@altlinux.org \ --to=vt@altlinux.org \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git