20.2.3 Изменение установок

Индекс

20.2.3 Изменение установок

Для изменения установок RPM можно редактировать системный или пользовательский rc файл. Формат rpmrc файлов исключительно прост, хотя есть несколько исключений. Базовый формат уже неоднократно обсуждался:

setting: value

В более сложных случаях, например, при указании системной архитектуры, синтаксис может быть таким:

setting: uname: value

В данном примере поле uname замещается значением, которое вернул системный вызов uname(2), например, i686.

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

20.2.3.1 Установка флагов оптимизации
Одно из исключений синтаксиса - установки флагов оптимизации, которые контролируют опции компилятора. Формат флагов:

setting: arch value

Двоеточие после архитектуры не используется. Например:

optflags: i686 -O2 -march=i686

optflags: alphaev5 -O2 -mieee -mcpu=ev5

В данном примере устанавливаются флаги -O2 -march=i686 для архитектуры i686 и -O2 -mieee -mcpu=ev5 для архитектуры alphaev5.

20.2.3.2 Установка архитектур
Установка значений поля arch_canon задает соответствие между названиями архитектур и внутренним представлением в виде числовых маркеров. Нижеследующий пример показывает, как установить соответствия между архитектурами Intel и SPARC и внутренним представлением:

arch_canon: athlon: athlon 1

arch_canon: i686: i686 1

arch_canon: i586: i586 1

arch_canon: i486: i486 1

arch_canon: i386: i386 1

arch_canon: sparc: sparc 3

arch_canon: sun4: sparc 3

arch_canon: sun4m: sparc 3

arch_canon: sun4c: sparc 3

arch_canon: sun4d: sparc 3

arch_canon: sparcv9: sparcv9 3

Поле arch_compat позволяет построить таблицу совместимых архитектур. Формат:

arch_compat: arch: compatible_with

Такая строка определяет данную архитектуру, как совместимую с другой архитектурой. Например:

arch_compat: athlon: i686

С помощью этого синтаксиса можно построить примерно такую таблицу совместимости архитектур:

arch_compat: i686: i586

arch_compat: i586: i486

arch_compat: i486: i386

arch_compat: i386: noarch

Установка os_canon определяет таблицу соответствия названий операционных систем и внутренних числовых идентификаторов. Базовый синтаксис:

os_canon: arch: name value

arch - это результат, возвращенный системным вызовом uname(2). name предоставляется через имя операционной системы, как оно определено в RPM, value - это внутренний числовой идентификатор, например:

os_canon: Linux: Linux 1

os_canon: HP-UX: hpux10 6

Установка buildarchtranslate определяет установку операционной системы для использования ее как системы сборки. Это значение транслирует то, что получено от системного вызова uname(2) в значение, которое ислользует опция arch_canon. Например:

buildarchtranslate: athlon: i386

buildarchtranslate: i686: i386

buildarchtranslate: i586: i386

buildarchtranslate: i486: i386

buildarchtranslate: i386: i386

buildarchtranslate: sun4c: sparc

buildarchtranslate: sun4d: sparc

buildarchtranslate: sun4m: sparc

buildarchtranslate: sparcv9: sparc

buildarchtranslate: sun4u: sparc64

Далее - Добавление псевдонимов popt
Назад - Расположение rpmrc-файлов
Содержание