[devel] Наши опыты над питоном ( или новые пакеты в дедалусе )

Andrey Orlov =?iso-8859-1?q?cray_=CE=C1_neural=2Eru?=
Пн Апр 26 10:34:55 MSD 2004


Hi!

Алексей и я довели т.н. "новую схему сборки питоновских модулей" до того
состояния, когда этим можно попробовать воспольоваться. Я пересобрал 
почти все свои пакеты (включая Zope) и некоторое количество
чужих (так как иначе мои не ставятся), все это лежит в дедалусе:

python-2.3.3-alt7.5.d.src.rpm
python-module-bsddb3-4.2.4-alt5.d.src.rpm
python-module-egenix-mx-base-2.0.3-alt6.d.src.rpm
python-module-egenix-mx-experimental-0.8.0-alt4.d.src.rpm
python-module-MySQLdb-0.9.2-alt5.d.src.rpm
python-module-pexpect-0.999-alt3.d.src.rpm
python-module-psycopg-1.1.11-alt5.d.src.rpm
python-module-pyparsing-1.1.2-alt3.d.src.rpm
python-module-Reportlab-1.19-alt3.d.src.rpm
rpm-4.0.4-alt36.d8.src.rpm
rpm-build-python-0.8-alt2.src.rpm
Zope-2.6.4-alt3.src.rpm

Что сделано:

 1. Работают макросы Алексея, пример спека можно посмотреть в
    /usr/share/doc/rpm-build-python-0.8/python-module-SAMPLE.spec, кроме
    того в /etc/rpm/macros.d/python есть комментаии к макросам;

 2. Работает автоматическое определение зависимостей, подробнее об этом в

	/usr/share/doc/rpm-build-python-0.8/doc/ByteCompilator.txt,

    должен обратить внимание, по умолчанию определение зависимостей сейчас
    отключено, по этому в вашем спеке должен быть явно указано :
 
       AutoReqProv: all, python

 3. Работает улчшенный скрипт байт-компиляции, позволяющий выборочно
    компилировать файлы пакета, подробнее см. в

	/usr/share/doc/rpm-build-python-0.8/doc/ByteCompilator.txt

 4. Написана простенькая приблуда к distutils, позволяющая быстро создать
    спек нового пакета командой:

	python setup.py bdist_altrpm --daedalus --spec-only

    и последующим небольшим редактированием, подробнее см.

	/usr/share/doc/rpm-build-python-0.8/doc/DistUtils.txt

Что недоделано:

 1. Пакет python будет дорабоатыватся дальше - там pre / post скрипты
    срабатывают не там где надо и не так, как надо, и я еще не готов
    выложить распиленную версию;

 2. Я сейчас проверяю возможность отказатся от повторной байт компиляции при
    использовании для сборки distutils (т.е. setup.py), там есть необходимый
    код, осталось проверить насколько юзабелен.

Замечание:

    Для того, чбы реально воспользоватся автоматическим определением
    зависимостей, т.е. не ставит все подряд модули питона, а только реально
    необходимые, нужно поставить пакет python-slight (вместо python-strict). 
    Опять-таки, чбы получить стандартный набор пакетов python - нужно
    поставить python-strict.

PS: К сожалению, тот пакет rpm-build-python, который лежит в дедалусе
(0.8-alt1) не содержит док (сорри), на которые я ссылаюсь, но новый пакет (alt2) я уже залил. Там
обновленное FAQ и полиси, все еще в состоянии draft. Напоминаю, я
по-прежнему принимаю вопросы и советы по поводу полиси на адрес
python на neural.ru.


-- 
WthBstRgrds -- Андрей Орлов --  
 --- http: www.neural.ru, mail: cray на neural.ru, jid: cray на altlinux.org ---
----------------------------------------



Подробная информация о списке рассылки Devel