Makefile中.PHONY的作用

在前端验证环境中,makefile是很关键的文件。在执行makefile命令时,经常看到命令被.PHONY修饰,那么.PHONY的作用是什么?

举例:

在上面的makefile文件里,dir/cmp/ncrun/run都是目标。目标在makefile里分为两种:一种是目标文件,一种是目标命令。当我们的目的是要调用命令而不是文件时,就需要使用.PHONY将这些目标命令设置为伪目标。

那设置成伪目标的好处是什么呢?

makefile有一条规则是:当依赖有更新或者目标不存在时,才会去执行目标下面的动作。

那么设想一种情况:如果当前makefile文件同级目录下有与dir/cmp/ncrun/run同名的文件时,会发生什么情况呢?根据makefile的规则,它发现目标是存在的,所以此时就不会执行目标下面的动作了,这与我们的预期不符。因此,才需要将这些目标命令设置为伪目标,保证每次调用命令时命令都能够执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值