From: Alexey Tourbin <at@altlinux.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: [devel] private provides
Date: Tue, 27 Nov 2007 12:49:13 +0300
Message-ID: <20071127094913.GC361@solemn.turbinal> (raw)
In-Reply-To: <b966c1e40711270112r68e990c7jef3547a2f5c9be9b@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2230 bytes --]
On Tue, Nov 27, 2007 at 12:12:46PM +0300, Alexey Shabalin wrote:
> Тогда уточняю проблему. Взаимного уничтожения не происходит. Requires
> выставляются, а Provides не ищутся. надо специально выставлять
> skip_requires?
Взаимного уничтожения между подпакетами действительно не происходит.
Взаимное уничтожение пока реализовано только в пределах одного
подпакета.
> В PROVIDES у beagle
> /usr/lib/beagle/libbeagleglue.so.0
> pkgconfig(beagle-0.0)
> pkgconfig(beagle-daemon)
> pkgconfig(beagle-ui-0.0)
> beagle
>
> В PROVIDES у beagle-gui
> /usr/lib/beagle/libbeagleuiglue.so.0
> beagle-gui
>
> НО !!!
> Вот REQUIRENAME для beagle:
> -- skip --
> mono(ICSharpCode.SharpZipLib) = 2.84.0.0
> mono(Images) = 0.0.0.0 - это в beagle-gui
> ^^^^^^^^^^^^^^^^^^^^^^^
Requires обнаруживается в другом подпакете. :( Советую Вам пока ничего
не делать (или же пока заняться перераспилом *-sharp пакетов, если Вы к
этому причастны).
На самом деле это общая проблема -- т.н. private provides, которую мы
недавно обсуждали в частной переписке с avm и ldv. В двух словах,
в ряде случаев нежелательно предоставлять некоторые provides в
репозитарии, но нужно каким-то образом разрешать requires на эти
зависимости в пределах подпакетов.
avm предложил ввести дополнительный [prviate] флаг который можно
приписывать к зависимостям в find-provides и find-requires, и хакнуть
librpm, чтобы он воспринимал этот "флаг" специальным образом. Это
решение не понравилось мне по разным причинам, прежде всего потому, что
это работает только в пределах одного подпакета, но даже не для всех
подпакетов, собранных из одного исходного пакета (в чём и состоит
проблема в данном случае).
Я в свою очередь предложил сводить зависимости на приватные библиотеки
к зависимостям на файлы. В некоторых случаях это работает совершенно
прозрачно и не дает неприятных побочных эффектов.
Я подумаю, можно ли это как-то сделать в rpm-build-mono. У меня сейчас
не совсем готово решение по сведению приватных зависимостей к
зависимостям на файлы, о котором я пишу, и я ещё немного сомневаюсь,
всё ли там "чисто" получается. Не знаю, можно ли будет захачить
rpm-build-mono без новой сборки rpm-build. Посмотрю.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-11-27 9:49 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-26 15:27 [devel] rpm-build-mono find provides Alexey Shabalin
2007-11-27 5:48 ` Ildar Mulyukov
2007-11-27 6:25 ` Alexey Tourbin
2007-11-27 9:12 ` Alexey Shabalin
2007-11-27 9:49 ` Alexey Tourbin [this message]
2007-11-27 11:44 ` [devel] private provides Alexey Tourbin
2007-11-27 9:52 ` [devel] rpm-build-mono find provides Alexey Tourbin
2007-11-27 16:50 ` Alexey Shabalin
2007-11-27 17:31 ` [devel] private provides (was: rpm-build-mono find provides) Alexey Tourbin
2007-11-27 17:47 ` Alexey Shabalin
2007-11-27 17:50 ` [devel] rpm-build-mono find provides Andrey Rahmatullin
2007-11-28 4:22 ` Ildar Mulyukov
2007-11-28 10:56 ` Alexey Shabalin
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=20071127094913.GC361@solemn.turbinal \
--to=at@altlinux.ru \
--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