首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在打包Debian时访问原始的tarball?

如何在打包Debian时访问原始的tarball?
EN

Stack Overflow用户
提问于 2011-04-18 02:57:15
回答 2查看 208关注 0票数 3

我正在打包一段使用DistUtilsExtra的Python软件。在my debian/rules中运行python setup.py install时,DistUtilsExtra会自动重新编译转换模板.pot文件,并直接在源存储库中更新该文件。因此,当我第二次执行打包命令(使用debuildpdebuild)时,会自动创建一个补丁文件(因为它认为我已经手动更新了.pot文件)。这个补丁在Debian包中显然是不需要的,我正在寻找一种不生成它的方法。

一种解决方案是DistUtilsExtra不更改源代码库中的.pot文件,但目前这是不可能的。因此,我正在测试另一种解决方案:为从.orig.tar.gz压缩包中提取原始.pot文件的clean指令创建一个覆盖,在debian/rules中这样做

代码语言:javascript
复制
override_dh_clean:
    tar -zxvf ../<projname>_*.orig.tar.gz --wildcards --strip-components=1 <projname>-*/po/<projname>.pot
    dh_clean

然而,我在debian-mentors邮件列表上被告知,不能保证原始的tarball位于../中。因此,我想知道是否有一种方法可以从debian/rules内部可靠地访问.orig.tar.gz压缩包,就像包含其位置的“变量”一样?

EN

回答 2

Stack Overflow用户

发布于 2011-04-20 06:17:27

严格地说,这并不是在为Debian打包时如何访问原始tarball的问题的答案,但这就是我如何解决引发我的问题的问题,所以它是这样的:

我发现了一个有趣的blog post by Raphaël Hertzog,它解释了在构建Debian包时如何忽略自动生成的文件。这是通过在debian/source/options文件中将--extend-diff-ignore选项传递给dpkg-source来完成的。因此,我已经从override_dh_clean中删除了建议的命令,并且不再创建不需要的自动补丁。

票数 2
EN

Stack Overflow用户

发布于 2012-01-11 16:49:01

对于自动生成的文件,通常的解决方案是在清理过程中删除它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5695688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档