打包rpm时排除文件类型

时间:2011-01-24 19:16:12

标签: python packaging rpm

在我打包python rpm的spec文件中,我想删除某些目录中的某些文件类型:

例如,我想在这些目录中排除source * .py文件:

lib/*.py

comm/*.py

我想我应该在我的规范的%file部分执行此操作。有什么建议吗?

3 个答案:

答案 0 :(得分:19)

您需要使用%排除宏,即

%files
%exclude /lib/*.py
%exclude /comm/*.py

答案 1 :(得分:6)

在遥远的过去的某个时刻,您只是不在%file部分中包含您不想要的文件,因此不会打包它们。这可能已经证明太容易出错,因此一些RPM实现开始抱怨未打包的文件。由于RPM开发总是有点碎片化和未记录,因此我不清楚规范解决方案是什么,但我建议最安全的方法是在安装例程结束时删除文件。这种方法也可以轻松地运输到其他包装系统,如dpkg。

答案 2 :(得分:4)

或者只是从buildroot中删除它们:

%install
...
find %{buildroot} -name ".py" -delete