SpecTips/doc: различия между версиями

Материал из ALT Linux Wiki
м (a bit more cleanup + link + cat)
Строка 3: Строка 3:
== Использование %doc ==
== Использование %doc ==


В спек-файле нельзя использовать конструкции
В спек-файле нельзя одновременно использовать конструкции
  %doc <абсолютный-путь-в-%_docdir>
  %doc <абсолютный-путь-в-%_docdir>
и
и
  %doc <относительный-путь>
  %doc <относительный-путь>
одновременно.


Это является особенностью (или ошибкой) реализации RPM: когда выполняется <tt>%doc</tt> второго вида, то каталог <tt>%_docdir</tt> сначала удаляется, потом заново создаётся, и в него копируются файлы, указанные в виде относительных путей.
Это является особенностью (или ошибкой) реализации RPM: когда выполняется <tt>%doc</tt> второго вида, то каталог <tt>%_docdir</tt> сначала удаляется, потом заново создаётся, и в него копируются файлы, указанные в виде относительных путей. При повторном указании %doc второго вида каталог <tt>%_docdir</tt> не удаляется.


Таким образом, при обработке
В этом примере в %doc попадут только Changes и AUTHORS, без README:
<pre>
<pre>
%build
%build
Строка 20: Строка 19:
%doc %_docdir/%name-%version
%doc %_docdir/%name-%version
%doc Changes
%doc Changes
%doc AUTHORS
</pre>
</pre>


Когда <tt>%doc Changes</tt> будет исполнен, то он ''затрёт'' README.


=== Ссылки ===
=== Ссылки ===
* http://lists.altlinux.org/pipermail/devel/2008-October/080670.html
* http://lists.altlinux.org/pipermail/devel/2008-October/080670.html

Версия от 14:43, 19 октября 2008


Использование %doc

В спек-файле нельзя одновременно использовать конструкции

%doc <абсолютный-путь-в-%_docdir>

и

%doc <относительный-путь>

Это является особенностью (или ошибкой) реализации RPM: когда выполняется %doc второго вида, то каталог %_docdir сначала удаляется, потом заново создаётся, и в него копируются файлы, указанные в виде относительных путей. При повторном указании %doc второго вида каталог %_docdir не удаляется.

В этом примере в %doc попадут только Changes и AUTHORS, без README:

%build
touch Changes
%install
install -pD -m644 /dev/null %buildroot%_docdir/%name-%version/README
%files
%doc %_docdir/%name-%version
%doc Changes
%doc AUTHORS


Ссылки