将RPM依赖项指定为“以下之一”

时间:2011-02-18 20:42:21

标签: rpm rpmbuild rpm-spec

我正在为内部包开发RPM规范文件。该程序包取决于libuuid,它在Fedora上作为libuuid程序包提供,但在标准RPM存储库中没有CentOS 5的libuuid程序包。我们可以使用e2fsprogs-devel开发RPM(e2fsprogs-devel安装libuuid和相关标头)来满足对CentOS的依赖。我想指定我们的RPM取决于libuuid,以便在安装我们的RPM期间在Fedora上安装libuuid包,但是在安装期间在CentOS上安装了e2fsprogs-devel。有没有办法在RPM规范文件中将依赖项指定为“按顺序的libuuid或e2fsprogs-devel之一”?

2 个答案:

答案 0 :(得分:2)

您可以直接指定文件作为要求,但这很难看。也不要使用%dist来区分。

您应该只依赖于构建过程。如果一个特定文件位于不同的软件包中,具体取决于发行版,那么您应该(重新)在您希望支持的每个发行版上构建软件包(不得禁用AutoReq / AutoReqProv)。

答案 1 :(得分:1)

没有。使用Dist Tag来区分Fedora及其衍生产品之一。