是否可以创建一个可以由 make 解释的可执行脚本?
我试过这个:
#!/usr/bin/env make --makefile=/dev/stdin
main:
@echo Hello!
但它不起作用 - 挂起直到按下Ctrl-c。
#!/usr/bin/make -f
main:
@echo Hello World!
通常是您在标准 make 文件中所需要的。文件名作为最后一个参数隐式传递。/dev/stdin
这里(通常)是 tty。如果有理由,你可以做整个env
事情,但通常没有必要。
ajw@rapunzel:~/code/videocc/tools > vi Makefile
ajw@rapunzel:~/code/videocc/tools > chmod a+x Makefile
ajw@rapunzel:~/code/videocc/tools > ./Makefile
Hello World!
以下添加了一个间接级别,但这是我为不称为“makefile”的自执行makefile提出的最佳解决方案:
#!/bin/sh
exec make -f- "$@" << 'eof'
.PHONY: all
all:
@echo 'hello world!'
我正在努力收集#!每种语言/程序的 env hack在这里。