From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS autolearn=no autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1755239749; x=1755844549; darn=lists.altlinux.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:to:from:date:sender:from :to:cc:subject:date:message-id:reply-to; bh=QZrLotntb7lPwNN4mQ2v5UwlJK6unSoW7egOZiA0Scc=; b=bnogISKWKqs2aZmzpgPml/ebkoldc7Zi4kjPdLvYi5UnFN/IxdPTsUVY2pU8X0ap5M 4epCiU/tCNYfqasK84tZRivIxR4xkwpWbXzFmvDUIzqXOzAt38W6WbTUV226mT79nRTj iSD6YG/xGLBIvSdVOm0Xh405nVvjHX1Q7IF5m3vmb/S8bfZNJWLOoSbNSCVNSA0ECxeu OJY3bsn2agKkpxoJmhoQC3RTWnCYTodmQcv3FXAyf5DimwV2T66dX+aPrKDE89NmvjgT hR34kNoLr5UpFOwhLRCO4iEKPeMeTNCwmfIOARNa1FtKtsMxkWWuo0F/1FZe3pFgTakx pC6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755239749; x=1755844549; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=QZrLotntb7lPwNN4mQ2v5UwlJK6unSoW7egOZiA0Scc=; b=C56jA4vShAgpjbovPHnGtZcg0RkY+h9hKjfbjpUKrVc2D65rGOdj7cuO1wGMfI4vVR p2ga4w1zjyjPtWxa+9kxnETFDVFPpmesLeLSUncjpoB24E66Y11w3ahuhDfbKYMidvLQ 46if29vxN1Y6bJDDUH7SJAFEanRyUCgJlf4irBG8v96vVOR3HBBuWHMwZElTHt4cBYbN odJFM9lOfJwpZsk/oDxaXMFxwc/4kxRIPM2opJTZWEe7iW7KUJBMTxqZUtqr9fLYz7mB ecXtdppIrPZ2s6cbkpVp2ggkdW17rN+Vn5oWzIG13caDZN/ZVzzY1tPoPQUEasAuEjM0 mZiQ== X-Gm-Message-State: AOJu0Yx6EdbcC+hteTTwmMNA/DQ4sq7QpIMMrkaOJ+bUtFJcgNyZBfC2 OpxVfvStxgn1C0JFfU04BDJ+I+0Py6DtzxwqmOcnJ2rvPJq3YD6a8E7fxT1oRd1U X-Gm-Gg: ASbGncvQS219hvmIHm9dKRuItvHrVgSDRueO1LR77o4iH5VWMJAnTORnDVOICKHD3f+ z6jkp8nyT/Dl4Qv4cFlnWatSmh3QgBrEsKOwiisGjBNAOdbXN7hE8oq/1oM9uyb6cnu1ynHyesR Y6TOYUMg4UM5N06tPLObYKy9rm10c7qscUOU/GpD2Sxp8plAAcvmws036oM3hqoH/TN9Rn9VzXw fLx0H92AgJ9k9VoUuLM8cd7dVtgzG/5l40mud0lm5irO7FzwjvPdZS463rZRYXxDIXXPFWt2NXJ 0b3zUwKttlfbPv975vHG4T1vVNlNhVT4cRocb8P0wY+/bKNEJUWVmeix/MWfIuBan/MS/rYuU+V lw2X2fYLq521Asahpg0tKneuYANxpNVB+4K5B X-Google-Smtp-Source: AGHT+IGjnp8yBLmdME8+UYxGJLQkIlujIozh584UcIbrnVjs6tlDlG2ebNLiB7li33DPI7VfQuXq2w== X-Received: by 2002:a05:690c:7403:b0:71a:251e:36ee with SMTP id 00721157ae682-71e6df4c137mr12328527b3.39.1755239749332; Thu, 14 Aug 2025 23:35:49 -0700 (PDT) Sender: "Ivan A. Melnikov" Date: Fri, 15 Aug 2025 10:35:45 +0400 From: "Ivan A. Melnikov" To: ALT Linux Team development discussions Message-ID: <4wyzpufia54i4ug27ncdfz6shm@iv-work> References: <6f69d759-c000-4cd3-a66d-94fcd2245fb3@basealt.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Subject: Re: [devel] =?utf-8?b?0L/QtdGA0LXRgNCw0LHQvtGC0LDQvdC90YvQuSDQtNC+?= =?utf-8?b?0LrRg9C80LXQvdGCIFNoYXJlZExpYnNQb2xpY3kgKHVwZGF0ZSAxKQ==?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Aug 2025 06:35:53 -0000 Archived-At: List-Archive: List-Post: On Fri, Aug 15, 2025 at 09:21:04AM +0300, Vitaly Chikunov wrote: > 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. Как правило, об этом изменении лучше всего > знает только апстрим. Это понятно, но не все апстримы одинаково квалифицированны. Собственно, всё моё письмо ставит вопрос -- а что делать, если soname нет? -- wbr, iv m.