mirror of
				https://github.com/taigrr/godns
				synced 2025-01-18 04:03:25 -08:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| # Binary name
 | |
| BINARY=godns
 | |
| # Builds the project
 | |
| build:
 | |
| 		GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY} -ldflags "-X main.Version=${VERSION}"
 | |
| # Installs our project: copies binaries
 | |
| install:
 | |
| 		GO111MODULE=on go install
 | |
| image:
 | |
| 		# Build docker image
 | |
| 		go clean
 | |
| 		rm -rf *.gz
 | |
| 		docker buildx build --platform linux/amd64,linux/386,linux/arm64,linux/arm/v7 -t timothyye/godns:${VERSION} . --push
 | |
| 		docker buildx build --platform linux/amd64,linux/386,linux/arm64,linux/arm/v7 -t timothyye/godns:latest . --push
 | |
| release:
 | |
| 		# Clean
 | |
| 		go clean
 | |
| 		rm -rf *.gz
 | |
| 		# Build for mac
 | |
| 		GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY} -ldflags "-s -w -X main.Version=${VERSION}"
 | |
| 		tar czvf ${BINARY}-mac64-${VERSION}.tar.gz ./${BINARY}
 | |
| 		# Build for linux
 | |
| 		go clean
 | |
| 		CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY} -ldflags "-s -w -X main.Version=${VERSION}"
 | |
| 		tar czvf ${BINARY}-linux64-${VERSION}.tar.gz ./${BINARY}
 | |
| 		# Build for arm
 | |
| 		go clean
 | |
| 		CGO_ENABLED=0 GOOS=linux GOARCH=arm64 GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY} -ldflags "-s -w -X main.Version=${VERSION}"
 | |
| 		tar czvf ${BINARY}-arm64-${VERSION}.tar.gz ./${BINARY}
 | |
| 		go clean
 | |
| 		CGO_ENABLED=0 GOOS=linux GOARCH=arm GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY} -ldflags "-s -w -X main.Version=${VERSION}"
 | |
| 		tar czvf ${BINARY}-arm-${VERSION}.tar.gz ./${BINARY}
 | |
| 		# Build for win
 | |
| 		go clean
 | |
| 		CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GO111MODULE=on go build cmd/godns/godns.go -o ${BINARY}.exe -ldflags "-s -w -X main.Version=${VERSION}"
 | |
| 		tar czvf ${BINARY}-win64-${VERSION}.tar.gz ./${BINARY}.exe
 | |
| 		make image
 | |
| # Cleans our projects: deletes binaries
 | |
| clean:
 | |
| 		go clean
 | |
| 		rm -rf *.gz
 | |
| 
 | |
| .PHONY:  clean build
 |