18.03.2013 13:06, Dmitry V. Levin пишет: > On Mon, Mar 18, 2013 at 12:40:22PM +0400, Aleksey Avdeev wrote: ... >> >> Видно, что: >> >> 1.1. Одинаковая зависимость /usr/lib/python2.7/site-packages >> присутствует о обоих подпакетов: python-module-weave, где она >> %python_sitelibdir_noarch и python-module-scipy, где она >> %python_sitelibdir. И понятно, что на x86_64 такого совпадения не будет >> (подпакет python-module-scipy содержит архитектурно зависимые файлы => >> на x86_64 у него будет /usr/lib64/python2.7/site-packages). >> >> 1.2. У python-module-weave-0.12.0-alt2.git20121009.1 отсутствует >> зависимость на python-module-scipy = 0.12.0-alt2.git20121009.1. >> >> Смотрим, что в >> python-module-weave-0.12.0-alt2.git20121009.1.noarch.rpm >> () >> по факту: >> >> $ rpm -qpR i586/python3-module-weave-0.12.0-alt2.git20121009.1.noarch.rpm >> python3-module-scipy = 0.12.0-alt2.git20121009.1 >> rpmlib(PayloadIsLzma) >> >> Т. е. в noarch пакете добавлена жёсткая зависимость на >> архитектурнозависимый python3-module-scipy = 0.12.0-alt2.git20121009.1 и >> удалены: >> >> 2.1. Все неявные зависимости на содержимое python3-module-scipy. >> >> 2.2. Все зависимости, совпадающие с присутствующими в python3-module-scipy. >> >> Вот п. 2.2 всю малину нам и портит (из-за п. 1.1): т. к. присутствует >> совпадение которое есть на i586 (где %python_sitelibdir_noarch = >> %python_sitelibdir), но которого нет на x86_64 (где >> %python_sitelibdir_noarch != %python_sitelibdir) => для x86_64 >> оптимизатор оставляет ту зависимость, которую удаляет на i586. > > В таком случае рабочим объездом будет наличие зависимости на > %python_sitelibdir_noarch именно в python3-module-scipy. Да, это работает (см. ). Но не нравиться мне этот хак (грязный, т. к. для вправления мозгов оптимизатору, мы ставим подпакету зависимость -- ненужную ему самому). Ручка, позваляющая защитить ручную зависимость от удаления, была бы более красивым решением. -- С уважением. Алексей.