LINUX.ORG.RU

Построение rpm тихо в уголочке


0

0

Директива %file в RPMе, насколько я понимаю, указывает на расположение файлов как у пользователей, так и на build системе. Мне [предположим] хочется, чтобы во время строительства пакета файлы лежали где-нибудь еще. Скажем, файл /usr/bin/programma мне удобно брать из каталога ~vasya/build_area/bin. Каким способом проще всего достичь желаемого? Предоставляет ли RPM стандартное решение для этой задачи?

anonymous

после %install проинсталлировать из ~vasya/build_area/bin в %{destdir}/usr/bin

дисклеймер: имена макросов по памяти и приблизительные

anonymous
()

rpmbuild --buildroot /path/to/root устанавливает макрос %{buildroot}. %files понимает, что все абсолютные пути -- относительно %{buildroot}, а все относительные -- относительно %{srcdir}. Значение %{buildroot} доступно в скриптах %prep, %build, %install и %clean в переменной $RPM_BUILD_ROOT. В %install обычно говоришь:

%{__make} install DESTDIR=$RPM_BUILD_ROOT

и вся недолга.

iliyap ★★★★★
()
Ответ на: комментарий от iliyap

> %files понимает, что все абсолютные пути -- относительно %{buildroot}

Ага. %files понимает, а вот я этого долго не понимал ;(.

Кстати, самый толковый из изученных мною текстов про RPMостроительство это Mandrake RPM HOWTO http://www.rpm.org/hintskinks/buildtree/mdk-rpm/#LICENSES-LIST Классический Maximum RPM и RPM Guide от Redhat http://fedora.redhat.com/docs/drafts/rpm-guide-en/index.html мне понравились гораздо меньше.

Есть ли какие-нибудь другие источники информации по этой тему?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.