[devel] I: новый rpm-build-python и питоновские модули на x86_64

Fr. Br. George george на altlinux.ru
Сб Дек 9 16:45:20 MSK 2006


Всем привет.

Приехавший в Сизиф rpm-build-python-0.29-alt3 обладает двумя новыми свойствами:
- он собирается на x86_64 так же, как и на i586 (раньше лез в
  /usr/lib64, несмотря на noarch)
- это происходит потому, что исползуется новый макрос, появившийся в rpm:
  %_target_libdir

%_target_libdir -- это такой %_libdir, значение которого зависит от того,
был ли %_target_cpu == noarch (то есть пакет был noarch) или чему-нибудь
другому. В первом случае %_target_libdir раскрывается в значение
ещё одного нового макроса, %_target_libdir_noarch,
то есть в /usr/lib без вариантов.

Что это нам даёт:

rpm-build-python-tools также попадают в правильное место при сборке на *64

макросы /etc/rpm/macros.d/python, использовавшие _libdir и приводившие к
галлюциногенной сборке модулей на *64, теперь используют _target_libdir.

предположительно сборка многих noarch модулей Питона под *64 выпрямится,
если они:
(а) Не использовали явного _libdir вместо штатного python_libdir
(б) Не являлись x86_64 по сути, таская с собою .so

Что можно сделать:

Посмотреть спеки своих питоновских модулей на предмет наличия в них
_libdir и поменять на _target_libdir (а ещё лучше -- на штатные макросы
из /etc/rpm/macros.d/python). Хуже от этого никому стать не должно, за
исключением (б).

Если от этого возникнут какие-то баги, и вы считаете, что они -- не
ваши, смело вешайте на rpm-build-python.

-- 
			George V. Kouryachy (aka Fr. Br. George)
			mailto:george at altlinux_ru


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