我Makefile
有一个以
prefix = /opt/$(PACKAGE)
并期望make prefix=/usr
以防有人想要非/opt
安装。没有./configure
(实际上也不需要(。
该软件包可以通过
%:
dh $@
debian/rules
除了由于prefix=/usr
要求,人们将不得不乱扔规则
override_dh_auto_install:
make prefix=/usr DESTDIR=debian/BUILD install
(也dh_auto_build
(。
告诉 debhelper 为所有make
调用添加prefix=
的优雅方法是什么(最好不要接触 makefile,否则有很多解决方法(?
你可以这样做:
%:
prefix=/usr dh $@
这是有效的,因为 make 将环境变量转换为 make 变量,请参阅 https://www.gnu.org/software/make/manual/html_node/Environment.html
只要确保上游的 Makefile 使用条件赋值,如下所示:
prefix ?= /usr/local
再见 安东尼奥
将MAKEFLAGS=prefix=/usr
导出到规则文件(或该琐碎代码段所在的任何位置(是否满足您的要求?