[devel] python.spec, %___build_pre

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Ср Мар 14 15:43:47 MSK 2007


python.spec:
   625  %define __python %_builddir/Python-%version/python.sh
   626  %define _python_lib_path %(RPM_BUILD_ROOT=%buildroot LD_LIBRARY_PATH=%buildroot%_libdir %buildroot%_bindir/python -c "import sys,os; 
path=os.path.normpath(os.environ['RPM_BUILD_ROOT']) ; print ' '.join([ x[len(path):] for x in [ os.path.normpath(x) for x in sys.path] if x[0
:len(path)]==path])")

Так делать некрасиво.  При раскрытии %_python_lib_path в %___build_pre (см.
/usr/lib/rpm/i586-alt-linux/*) $RPM_BUILD_ROOT ещё не заполнен.

$ gear --rpm -- rpm -bp
sh: /tmp/.private/at/python-buildroot/usr/bin/python: No such file or directory
Executing(%prep): /bin/sh -e /tmp/.private/at/rpm-tmp.95410
...

Правда, этот макрос правильно раскорется ко времени find-requiers и
find-provides, т.к. билдрут уже будет заполнен.  Как сделать красиво,
я не знаю.

Кстати, я хотел бы вынести все питоновские (а также перлове) макросы
в соответствующие /etc/rpm/macros.d/ файлы.  В связи с чем возникает
вопрос: как из этих файлов вклиниться в %__build_pre?  Т.е. как из
/usr/lib/rpm/*/macros перенести строчку

        %{?_python_lib_path:export %RPM_PYTHON_LIB_PATH=\"%_python_lib_path\"}\

в /etc/rpm/macros.d/python ?
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20070314/148524f2/attachment-0001.bin>


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