Makefile文件分析-执行流程

一 测试Makefile文件:

# Trick for always running with a fixed umask
UMASK = 0022
ifneq ($(shell umask),$(UMASK))
.PHONY: _all $(MAKECMDGOALS)

$(MAKECMDGOALS): _all
	:
	echo "$(MAKECMDGOALS)"

_all:
	echo "_all"
	echo "$(MAKE)"
	echo "$(MAKECMDGOALS)"
	umask $(UMASK) && $(MAKE) --no-print-directory $(MAKECMDGOALS)
	
else # umask

# This is our default rule, so must come first
all:

# Set and export the version string
export VERSION := 2015.08.1

# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
# absolute path
DATE := $(shell date +%Y%m%d)

all: test
	echo "all"
test:
	echo "$(VERSION)"
endif

make 输出结果:

ueed0@ueed0:~/Documents$ umask 0002
ueed0@ueed0:~/Documents$ make
echo "_all"
_all
echo "make"
make
echo ""

umask 0022 && make --no-print-directory 
echo "2015.08.1"
2015.08.1
echo "all"
all
ueed0@ueed0:~/Documents$ make test
echo "_all"
_all
echo "make"
make
echo "test"
test
umask 0022 && make --no-print-directory test
echo "2015.08.1"
2015.08.1
:
echo "test"
test

 
 
 
 

二 测试Makefile文件:

# Trick for always running with a fixed umask
UMASK = 0022
ifneq ($(shell umask),$(UMASK))
.PHONY: _all $(MAKECMDGOALS)

$(MAKECMDGOALS): _all
	@:
	@echo "$(MAKECMDGOALS)"

_all:
	@echo "_all"
	@echo "$(MAKE)"
	@echo "$(MAKECMDGOALS)"
	@umask $(UMASK) && $(MAKE) --no-print-directory $(MAKECMDGOALS)
	
else # umask

# This is our default rule, so must come first
all:

# Set and export the version string
export VERSION := 2015.08.1

# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
# absolute path
DATE := $(shell date +%Y%m%d)

all: test
	@echo "all"
test:
	@echo "$(VERSION)"
endif

make 输出结果:

ueed0@ueed0:~/Documents$ umask 0002
ueed0@ueed0:~/Documents$ make
_all
make

2015.08.1
all
ueed0@ueed0:~/Documents$ make test
_all
make
test
2015.08.1
test
ueed0@ueed0:~/Documents$ 





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值