Вход:  Пароль:  
FreeSource: AltLinux/Sisyphus/devel/spectips/buildreq ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |
Эта страница была перенесена на altlinux.org. Текст на freesource.info заморожен.

При написании spec-файла возникает необходимость указывать сборочные зависимости в теге BuildRequires. Для упрощения этого процесса в ALT Linux используется специальный скрипт, который называется buildreq и находится в пакете rpm-utils.


Использовать его просто:



Скрипт производит почти такую же работу, как и при сборке пакета. В процессе сборки программы он отслеживает все используемые пакеты и в результате добавляет в спек тег BuildRequires с нужными сборочными зависимостями.


Надо сказать, что скрипт не самый совершенный и иногда бывает, что зависимости не очень правильные — они могут указывать на пакеты совсем не нужные при сборке. В таком случае, выявить и отсеять лишнее вам придется самостоятельно. Другими словами, buildreq производит лишь оценку сверху — перечисляет достаточные, но необязательно необходимые пакеты.


Также, если в спеке уже прописан тег BuildRequires, то после buildreq он будет удален. Чтобы этого не происходило вам следует использовать тег BuildPreReq. Эти два тега равносильны и единственное отличие состоит в том, что второй не «затирается» при использовании buildreq.


По умолчанию, отслеживаются лишь зависимости для стадий %prep и %build. Это можно изменить ключом -b, указывающим стадию, после которой надо остановиться. Так, -bi указывает, что отслеживать надо стадии %prep, %build и %install.


Date: Tue, 18 Oct 2005 01:10:33 +0400
From: Alexey Tourbin <at@>
To: ALT Devel discussion list <devel@>
Subject: [devel] Re: webalizer-2.01.10-alt6

On Mon, Oct 17, 2005 at 10:30:28PM +0300, Michael Shigorin wrote:
> On Mon, Oct 17, 2005 at 11:23:38PM +0400, Dmitry V. Levin wrote:
> > > И что с этим предлагается делать?
> > Просто добавить apache-devel в список сборочных зависимостей.
> М-да.  Даже мысли не допустил, что его там могло не быть...

Это известная засада: buildreq "не ловит" файлы в /etc/rpm/macros.d.
Workaround: где-нибудь в этих макросах делать stat за пределы
/etc/rpm/macros.d.  stat будет срабатывать только при раскрытии
макросов.  В alternatives вроде такое было.

> Интересно зачем для сборки нужен lint? Он там *действительно*
> используется? telnet в списке тоже несколько смущает...

Для более точного отслеживания нежелательных пакетов можно использовать
e.g. buildreq --trace-p=lclint --trace-p=telnet *.spec

Полное название опций
--trace-package=PKG
--trace-file=FILE

at@ in devel@


Страницы, ссылающиеся на данную: AltLinux/Sisyphus/devel/spectips


Вы не владеете cтраницей AltLinux/Sisyphus/devel/spectips/buildreq и поэтому не можете получить список наблюдающих за ней


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]