Макрос %if делает доступными все инструкции вплоть до директивы %endif, если условие выполняется. Эта конструкция подобна сходным конструкциям в любом скриптовом языке. Например:
| 
 %if %{old_5x}   | 
В этом примере, если макрос %old_5x задан и имеет значение, проверка возвратит true и все команды внутри блока будут выполнены.
%else позволяет задать действия, если тест не успешен. Например:
| 
 %if %{old_5x}   | 
В этом случае, если макрос %old_5x имеет значение, все команды до %else будут выполнены. Если %old_5x не задан, будут выполнены команды от %else до %endif.
И вновь, восклицательный знак используется для инверсии проверки:
| 
 %if ! %{old_5x}   | 
Для вставки в конструкцию логического AND используется &&. Например:
| 
 %if %{old_5x} && %{old_6x}   | 
 Далее - Архитектурно-зависимые условия 
 Назад - Условные макросы 
 Содержание