mirror of
				https://github.com/prometheus/node_exporter.git
				synced 2025-08-20 18:33:52 -07:00 
			
		
		
		
	Add Makefile with install and release targets
This commit is contained in:
		
							parent
							
								
									0f7604c3cd
								
							
						
					
					
						commit
						c18f7ecfc6
					
				
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| 
						 | 
				
			
			@ -21,3 +21,5 @@ _testmain.go
 | 
			
		|||
 | 
			
		||||
*.exe
 | 
			
		||||
node_exporter
 | 
			
		||||
.deps
 | 
			
		||||
*.tar.gz
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										50
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,50 @@
 | 
			
		|||
VERSION  := 0.3.0
 | 
			
		||||
 | 
			
		||||
SRC      := $(wildcard *.go)
 | 
			
		||||
TARGET   := node_exporter
 | 
			
		||||
 | 
			
		||||
OS   := $(subst Darwin,darwin,$(subst Linux,linux,$(shell uname)))
 | 
			
		||||
ARCH := $(subst x86_64,amd64,$(shell uname -m))
 | 
			
		||||
 | 
			
		||||
GOOS   ?= $(OS)
 | 
			
		||||
GOARCH ?= $(ARCH)
 | 
			
		||||
GOPKG  := go1.2.1.$(OS)-$(ARCH).tar.gz
 | 
			
		||||
GOROOT ?= $(CURDIR)/.deps/go
 | 
			
		||||
GOPATH ?= $(CURDIR)/.deps/gopath
 | 
			
		||||
GOCC   := $(GOROOT)/bin/go
 | 
			
		||||
GOLIB  := $(GOROOT)/pkg/$(GOOS)_$(GOARCH)
 | 
			
		||||
GO     := GOROOT=$(GOROOT) GOPATH=$(GOPATH) $(GOCC)
 | 
			
		||||
 | 
			
		||||
SUFFIX  := $(GOOS)-$(GOARCH)
 | 
			
		||||
BINARY  := $(TARGET)
 | 
			
		||||
ARCHIVE := $(TARGET)-$(VERSION).$(SUFFIX).tar.gz
 | 
			
		||||
 | 
			
		||||
default:
 | 
			
		||||
	go build $(GOFLAGS)
 | 
			
		||||
 | 
			
		||||
.deps/$(GOPKG):
 | 
			
		||||
	mkdir -p .deps
 | 
			
		||||
	curl -o .deps/$(GOPKG) http://go.googlecode.com/files/$(GOPKG)
 | 
			
		||||
 | 
			
		||||
$(GOCC): .deps/$(GOPKG)
 | 
			
		||||
	tar -C .deps -xzf .deps/$(GOPKG)
 | 
			
		||||
	touch $@
 | 
			
		||||
 | 
			
		||||
dependencies: $(SRC)
 | 
			
		||||
	$(GO) get -d
 | 
			
		||||
 | 
			
		||||
$(BINARY): $(GOCC) $(SRC) dependencies
 | 
			
		||||
	$(GO) build $(GOFLAGS) -o $@
 | 
			
		||||
 | 
			
		||||
$(ARCHIVE): $(BINARY)
 | 
			
		||||
	tar -czf $@ $<
 | 
			
		||||
 | 
			
		||||
release: REMOTE     ?= $(error "can't release, REMOTE not set")
 | 
			
		||||
release: REMOTE_DIR ?= $(error "can't release, REMOTE_DIR not set")
 | 
			
		||||
release: $(ARCHIVE)
 | 
			
		||||
	scp $< $(REMOTE):$(REMOTE_DIR)/$(ARCHIVE)
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	rm -rf bin
 | 
			
		||||
 | 
			
		||||
.PHONY: dependencies clean release
 | 
			
		||||
		Loading…
	
		Reference in a new issue