15.02.2013 12:53, Paul Wolneykien пишет: > 15.02.2013 06:37, Dmitry V. Levin пишет: >> On Fri, Feb 15, 2013 at 06:12:13AM +0400, Aleksey Avdeev wrote: >>> ... >>>> Здесь ничего сказать не могу: ещё не лазил на столько глубоко в эту >>>> кухню (если полезу -- гарантированно сорву заданные сроки). >> На мой взгляд, не отведав этой кухни, в пасть питону лучше не лезть. > > Лёша, что именно за кухня? Работа prov и req парсеров в RPM? Что-то > специфичное для Питона? Если перовое, то на altlinux.org или около него > должна быть какая-то документация, рекомендации по сборке пакетов. А > если второе, то лучше спрашивай напрямую у питоноводов. У того же peet@ > к примеру, -- полагаю, что он лазал питону не только в пасть... Работа prov и req парсеров в RPM применительно к python*. Проблема ещё в том, что я не знаю как запретить rpm`у удалять временные файлы/каталоги, созданные при сборке пакета (что упростит анализ работы парсеров). Беглый забег по скриптам rpm-build-python{,3} что: 1. python.{prov,req}.files спокойно пропускает через себя модули и бинарники относящиеся к python3 (=> они обрабатываются через /usr/bin/python). Фильтр отстреливает только скрипты с _явным_ указанием что это python3 (признаком "#! /usr/bin/python3"), но только в том случаи, если в системе установлен file >= 4.26-alt8 (file < 4.26-alt8 выделять скрипты python3 не умеет). 2. В python3.{prov,req}.files ситуация аналогична: он тоже пропускает файлы в расположенные в */python2.* (т. е. заведомо не относящиеся к python3 => обрабатывает их через /usr/bin/python3). 3. В python3.req жёстко прошито использование /usr/bin/python3 установленного в сборочной системе. => свежесобранный python3 для поиска зависимостей не используется. (В отличии от python.req, где использованный python можно задать через $RPM_PYTHON Суммируя: * Из-за пп. 1 и 2 ситуация когда при поиске зависимостей скрипт обрабатывается не тем python`ом (/usr/bin/python обрабатывает содержимое */python3.*, а /usr/bin/python3 -- содержимое */python2.*) у нас штатная. И мне непонятно почему она каждый раз не взрывается (возможно нас защищает порядок вызова парсеров). * П. 3 ситуацию тоже похоже портит, вынуждая смотреть в сторону bootstrap`а. 2peet@: Прошу помощи. PS: Попробую ужесточить python{,3}.{prov,req}.files и посмотреть результат. -- С уважением. Алексей.