24.1.3.6 Поля зависимостей

Поля зависимостей предоставляют наиболее существенный функционал системы, обеспечивающий автоматическую проверку зависимостей пакетов друг от друга.

Константа

Значение

Тип

Обязательна ли для использования

RPMTAG_PROVIDENAME

1047

STRING_ARRAY

Да

RPMTAG_REQUIREFLAGS

1048

INT32

Да

RPMTAG_REQUIRENAME

1049

STRING_ARRAY

Да

RPMTAG_REQUIREVERSION

1050

STRING_ARRAY

Да

RPMTAG_CONFLICTFLAGS

1053

INT32

Опционально

RPMTAG_CONFLICTNAME

1054

STRING_ARRAY

Опционально

RPMTAG_CONFLICTVERSION

1055

STRING_ARRAY

Опционально

RPMTAG_OBSOLETENAME

1090

STRING_ARRAY

Опционально

RPMTAG_PROVIDEFLAGS

1112

INT32

Да

RPMTAG_PROVIDEVERSION

1113

STRING_ARRAY

Да

RPMTAG_OBSOLETEFLAGS

1114

INT32

Опционально

RPMTAG_OBSOLETEVERSION

1115

INT32

Опционально

Каждое из этих полей существует в рамках триплетов, которые форматируются сходным образом. RPMTAG_REQUIRENAME содержит массив необходимых зависимостей. RPMTAG_REQUIREVERSION содержит массив версий необходимых зависимостей. RPMTAG_REQUIREFLAGS сводит информацию из двух предыдущих полей вместе, указывая битовые флаги, означающие, имеет ли указанный номер версии более младшую версию, равную версию, более старшую версию, чем зависимость.

Флаги показаны в таблице ниже.

Флаг

Значение

RPMSENSE_LESS

0x02

RPMSENSE_GREATER

0x04

RPMSENSE_EQUAL

0x08

RPMSENSE_PREREQ

0x40

RPMSENSE_INTERP

0x100

RPMSENSE_SCRIPT_PRE

0x200

RPMSENSE_SCRIPT_POST

0x400

RPMSENSE_SCRIPT_PREUN

0x800

RPMSENSE_SCRIPT_POSTUN

0x1000

RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION и RPMTAG_PROVIDEFLAGS относятся к предоставляемым пакетом возможностям.
RPMTAG_CONFLICTNAME, RPMTAG_CONFLICTVERSION и RPMTAG_CONFLICTFLAGS определяют конфликты.
RPMTAG_OBSOLETENAME, RPMTAG_OBSOLETEVERSION и RPMTAG_OBSOLETEFLAGS определяют возможности, отменяемые данным пакетом.
Кроме того, в пакете могут быть определены некоторые специальные требования в полях RPMTAG_REQUIRENAME и RPMTAG_REQUIREVERSION.

Эти случаи показаны в таблице ниже.

Имя

Версия

Определяет особенность

Lsb

1.3

Этот пакет следует формату Linux Standards Base для пакетов RPM.

rpmlib(VersionedDependencies)

3.0.3-1

Пакет содержит зависимости или предварительные требования, которые имеют версии, ассоциированные с данным пакетом.

rpmlib(PayloadFilesHavePrefix)

4.0-1

Имена файлов содержат префикс “.” , предшествующий именам.

rpmlib(CompressedFileNames)

3.0.4-1

Пакет использует RPMTAG_DIRINDEXES,
RPMTAG_DIRNAME и RPMTAG_BASENAMES для определения имен файлов.

/bin/sh

NA

Определяет командный интерпретатор для запуска инсталляционных скриптов.

Далее - Нагрузка
Назад - Поля информации о файлах
Содержание