如何在不提及所有文件的情况下编写rpm规范文件

时间:2014-07-21 10:00:55

标签: rpm rpmbuild specifications

我正在写一个rpm spec文件,将tar.gz转换为.rpm。

tar包含所有文件。每次添加/删除新文件时,为避免重写规范。我不想提及这些文件。

是否有宏或我可以使用的某个地方有助于满足上述要求? 或者构建过程是否应将文件名复制到.spec文件

2 个答案:

答案 0 :(得分:1)

您可以在规范文件中使用-f option%files指令来说“从此文件中获取文件列表”。使用它,您应该可以非常轻松地使用tar-t标志来生成需要包含在RPM中的文件名列表。您可能需要对tar输出进行一些处理,以便将文件放在正确的路径中,但这应该相当简单。

此外,如果这些文件都在您正在构建的软件包全资拥有的目录下,您只需列出目录本身并跳过列出所有文件。

答案 1 :(得分:1)

只需添加解压缩所有文件的父目录:

%setup
tar xvf mytarball.tar.gz -C %{buildroot}/mypkg

%files
mypkg