Ubuntu 使用package.subsvars定义二进制包描述,而不通过debhelper脚本获取clobber?
好的,我有一个debian/rules文件,看起来像这样:Ubuntu 使用package.subsvars定义二进制包描述,而不通过debhelper脚本获取clobber?,ubuntu,debian,deb,Ubuntu,Debian,Deb,好的,我有一个debian/rules文件,看起来像这样: #!/usr/bin/make -f PACKAGE = packagename SRC_VERSION := $(shell grep version setup.py | awk -F [\'] '{print $$2}') TARBALL = $(PACKAGE)_$(SRC_VERSION).orig.tar.gz .PHONY: get-orig-source %: # Adding the require
#!/usr/bin/make -f
PACKAGE = packagename
SRC_VERSION := $(shell grep version setup.py | awk -F [\'] '{print $$2}')
TARBALL = $(PACKAGE)_$(SRC_VERSION).orig.tar.gz
.PHONY: get-orig-source
%:
# Adding the required helpers
dh $@ --with python2
get-orig-source:
python setup.py sdist --formats=gztar
mv dist/*gz ../$(TARBALL)
echo " "$(TARBALL)" created"
override_dh_gencontrol:
dh_gencontrol -- -Tpath/to/my/substvars
忽略我奇怪的“获取原始源”策略。我最终希望动态更改二进制软件包的debian/control文件中的Description字段。我的理解是,我需要将变量定义添加到packagename/debian/中的packagename.subsvars。然而,因为我的简单dh$@--使用python2动态生成该文件,所以我所能做的任何添加现在都与dh进程竞争
所以我想问你们stackoverflow的好朋友们这个问题
如果我想使用subsvars动态定义二进制包描述,我该怎么做 任何包准备工具都可以附加到SUBSVARS文件中;如果您使用的是debhelper,请确保在调用
dh_prep
后执行此操作,因为这将删除任何debian/*.subsvar
文件
如果您担心会干扰debhelper(或debhelper会干扰您),您甚至可以使用自己的subsvars文件。只需将subsvar文件名添加到dh_gencontrol
的参数中,如下所示:
#!/usr/bin/make -f
PACKAGE = packagename
SRC_VERSION := $(shell grep version setup.py | awk -F [\'] '{print $$2}')
TARBALL = $(PACKAGE)_$(SRC_VERSION).orig.tar.gz
.PHONY: get-orig-source
%:
# Adding the required helpers
dh $@ --with python2
get-orig-source:
python setup.py sdist --formats=gztar
mv dist/*gz ../$(TARBALL)
echo " "$(TARBALL)" created"
override_dh_gencontrol:
dh_gencontrol -- -Tpath/to/my/substvars
有关更多信息,请参见man deb SUBSVARS
、man dpkg SUBSVARS
和man dh_SUBSVARS
。在-T和path之间没有空格(至少我使用jessie/sid时它不起作用)。