Menu Close

4.4.3. %if 条件的专用变体

%ifarch 条件、%ifnarch 条件和 %ifos 条件是 %if 条件的专用变体。这些变体常被使用,因此它们有自己的宏。

%ifarch 条件

%ifarch 条件用于开始特定于体系结构的 SPEC 文件的块。它后接一个或多个架构说明符,各自以逗号或空格分开。

例 4.5. 使用 %ifarch 条件的示例

%ifarch i386 sparc
…​
%endif

%ifarch%endif if 之间所有 SPEC 文件的内容都仅在 32 位 AMD 和 Intel 构架或 Sun SPARC 的系统中处理。

%ifnarch 条件

%ifnarch 条件的逻辑与 %ifarch 条件的逻辑相反。

例 4.6. 使用 %ifnarch 条件的示例

%ifnarch alpha
…​
%endif

只有在基于 Digital Alpha/AXP 的系统上的数字 Alpha/AXP 系统上执行时,才会处理 %ifnarch%endif 之间的 SPEC 文件的内容。

%ifos 条件

%ifos 条件用于根据构建的操作系统控制处理。其后可以使用一个或多个操作系统名称。

例 4.7. 使用 %ifos 条件的示例

%ifos linux
…​
%endif

只有 Linux 系统上完成构建时,才会处理 %ifos%endif 之间的 SPEC 文件的内容。