Spec-файл - это текстовый файл, содержащий директивы RPM. Директивы задаются простым синтаксисом: имя поля, двоеточие, пробел, значение. Например:
Version: 1.15 |
Пример устанавливает версию пакета в значение 1.15. Имя поля регистронезависимо, поэтому version, Version и VERSION задают одну и ту же переменную.
Кроме задания различных значений можно определять макросы с использованием RPM-синтаксиса %define. Например:
%define major 2 |
Этот пример определяет макрос по имени major со значением 2. Однажды определив макрос, можно получать к нему доступ посредством инструкции %{имя_макроса} или, проще, %имя_макроса. Например:
source: %{name}-%{version}.tar.gz |
Остальные возможности макроопределений обсуждаются ниже.
Главные секции spec-файла также маркируются разделителем %.
9.2.1 Комментарии
Всё, что начинается с #, является комментарием и игнорируется RPM. Комментарии - полезная вещь. Они помогают разработчику и всем, кто читает spec-файл после создания rpm, понять выбор той или иной синтаксической конструкции, особенно, если конструкция отличается от стандартной в подобном случае. Например, если используются нестандартные опции компилятора, будет полезно обосновать необходимость этого в комментарии. Такой комментарий будет полезен при портировании rpm под другую архитектуру.
Комментарии отменяют действие единичного знака %. Например:
# Added new commands to %prep |
9.2.2 Сохранение spec-файла на диске
Созданный spec-файл должен быть сохранен в каталоге дерева разработки /usr/src/redhat/SPECS (с вариациями этого пути в не-Red Hat дистрибутивах).
Далее - Описание пакета
Назад - Чтение spec-файла
Содержание