在这个https://github.com/kubernetes/helm/blob/master/Makefile 有一些目标前面有一个点。这个约定是为了什么?
.PHONY: all
all: build
.PHONY: build
build:
GOBIN=$(BINDIR) $(GO) install $(GOFLAGS) -tags '$(TAGS)' -ldflags '$(LDFLAGS)' k8s.io/helm/cmd/...
答案1
特殊规则.PHONY
用于指定目标不是文件。常见用途是clean
和all
。这样,如果您有名为clean
或 的文件,就不会发生冲突all
。
这里有一个链接到有关此主题的部分在 GNU make 手册中