本系列文章均翻译自make官方文档:make Manual,github同步项目:question
DESTDIR:分阶段安装的支持
DESTDIR
是一个添加到每一个安装的目标文件的变量,由命令行参数指定。
make DESTDIR=/tmp/stage install
$(INSTALL_PROGRAM) foo $(DESTDIR)$(bindir)/foo
$(INSTALL_DATA) libfoo.a $(DESTDIR)$(libdir)/libfoo.a
正常情况下foo应该安装在 /usr/local/bin/foo,但是根据上面的写法,foo会被安装在 /tmp/stage/usr/local/bin/foo。
DESTDIR
只支持 install* 和 uninstall* 目标。