%{?macro:expression}: 假如宏(macro)存在,展开expression,如果不存在,什么也不会输出,直接为空。
%{!?macro:expression}: 与上面的结果正好相反。
%{?macro}: 假如宏存在,就展开宏;如果不存在,什么也不会输出,直接为空。
条件判断语句;
%if %{variable) #假如variable有值,command1将被执行,否则执行command2
command1...
%else
command2...
%endif
另一种方式的条件判断语句;
%if %{variable) #假如variable有值,command1将被执行,否则执行command2
command1...
%else
command2...
%endif
基于硬件结构的条件判断语句;
%ifarch x86_64 #假如硬件结构为x86_64,command1将被执行,否则执行command2
command1...
%else
command2...
%endif

本文介绍了SPEC文件中用于条件判断的宏用法,包括%{?macro:expression}、%{!?macro:expression}和%{?macro}三种形式,详细解释了它们在不同情况下的展开行为,以及在条件判断语句、另一种方式的条件判断和基于硬件结构条件判断中的应用。
最低0.47元/天 解锁文章
1349

被折叠的 条评论
为什么被折叠?



