On Sun, Nov 04, 2007 at 11:50:52PM +0300, Alexey Tourbin wrote: > > 2. Provides генерируются следующими источниками: метаданные публичных > > сборок и их publisher policy. Если у сборки нет publisher policy, > > используется её версия, иначе - версия, на которую перенаправляет policy. > > Кроме того, надо учитывать publicKeyToken и вроде бы culture. > Я не силён в моновской терминологии. Что такое publisher policy? Это вот то policy.*.config, где написано, что наша foo.dll, 1.2.3.4 прикидывается foo.dll, 1.2.0.0. > > 3. Ссылки без publicKeyToken могут быть разрешены приватными сборками и > > поэтому не должны создавать Requires с версией. > Это я тоже не понимаю. Давай пример пакетов в сизифе. Ну это про приватные сборки. Если у нас ссылка на приватную сборку, то может быть загружена как приватная (любой версии), так и сборка из GAC. При этом версия при загрузке проверяться не будет. Надо ли в этом случае вообще Requires? Не знаю. > > 4. Ссылки с publicKeyToken должны генерировать Requires, содержащий имя, > > версию, publicKeyToken и culture сборки, при этом версия берётся из > > ссылки либо из .config, если он есть и содержит перенаправление. > Пример пакетов в сизифе. /usr/lib/mono/gac/Nemerle.CSharp/0.9.3.29994__5291d186334f6101/Nemerle.CSharp.dll Чтобы загрузить эту сборку, в программе должен быть блок .assembly extern Nemerle.CSharp { .ver 0:9:3:29994 .publickeytoken = (52 91 D1 86 33 4F 61 01 ) } Поэтому зависимость, по-хорошему, должна включать и имя, и версию, и хэш ключа. -- WBR, wRAR (ALT Linux Team) Powered by the ALT Linux fortune(8): > Скорее всего, достаточно будет одного взмаха напильником: убрать из > созданной buildreq'ом строки BuildRequires сам ImageMagick. Беда в том, что когда мне приходится заниматься чем-то типа пакета ImageMagick, после первого взмаха напильник уже трудно остановить. -- ldv in devel@