首先,写一个Makefile,内容如下:
_all : ALL: _all: echo "target _all" ALL: echo "target ALL"
执行make命令,输出信息为:
target _all
这里之所以可以重写_all目标,是因为当它第一次出现时并没有所需要执行的动作,如果第一次出现时有要执行的动作,那么此时重写后,执行make命令,会出现警告信息:
warning:overriding recipe for target '_all'
虽然有警告,但是重写还是成功的执行,第一个出现目标动作被忽略,只执行第二次出现的动作。
还有一个需要注意的是:在执行make命令时,如果不指定任何目标,则make默认执行第一个遇到的目标,并执行目标对应的依赖和动作。
--END--
扫一扫二维码关注源码人