【rpm】字段%bcond_with(out)

使用条件依赖

在编写rpm包的spec文件过程中,我们通常会遇到如下字段:

%bcond_without tests

这类定义一般出现在spec文件的开头,通常在后文中还会有引用,作为某个判断的标准,来确定是否执行这个if block,如

%if %{with tests}

如果按如上方式编写,会不会执行呢?

如果单从字面意思来看,开头定义without,后面判断是否with tests,当然是没有!所以这个if block不会执行。恰恰相反,这个block是会执行的。

可以理解为 %bcond_with 需要显示声明 with 否则不会执行。同样 %bcond_without 需要显示声明 without 否则会执行。

 

参考资料

1. 字段%bcond_with(out)

2. openSUSE:RPM conditional builds

posted @ 2023-09-11 11:07  苏格拉底的落泪  阅读(252)  评论(0编辑  收藏  举报