github.com/gochain-io/gochain@v2.2.26+incompatible/Makefile (about)

     1  .PHONY: gochain android ios gochain-cross swarm evm all test clean
     2  .PHONY: gochain-linux gochain-linux-386 gochain-linux-amd64 gochain-linux-mips64 gochain-linux-mips64le
     3  .PHONY: gochain-linux-arm gochain-linux-arm-5 gochain-linux-arm-6 gochain-linux-arm-7 gochain-linux-arm64
     4  .PHONY: gochain-darwin gochain-darwin-386 gochain-darwin-amd64
     5  .PHONY: gochain-windows gochain-windows-386 gochain-windows-amd64
     6  .PHONY: dep docker release
     7  
     8  GOBIN = $(shell pwd)/build/bin
     9  GO ?= latest
    10  
    11  dep:
    12  	dep ensure --vendor-only
    13  
    14  gochain:
    15  	cd cmd/gochain; go build -o ../../bin/gochain
    16  	@echo "Done building."
    17  	@echo "Run \"bin/gochain\" to launch gochain."
    18  
    19  bootnode:
    20  	cd cmd/bootnode; go build -o ../../bin/gochain-bootnode
    21  	@echo "Done building."
    22  	@echo "Run \"bin/gochain-bootnode\" to launch gochain."
    23  
    24  docker:
    25  	docker build -t gochain/gochain .
    26  
    27  all: bootnode gochain
    28  
    29  release:
    30  	./release.sh
    31  
    32  install: all
    33  	cp bin/gochain-bootnode $(GOPATH)/bin/gochain-bootnode
    34  	cp bin/gochain $(GOPATH)/bin/gochain
    35  
    36  android:
    37  	build/env.sh go run build/ci.go aar --local
    38  	@echo "Done building."
    39  	@echo "Import \"$(GOBIN)/gochain.aar\" to use the library."
    40  
    41  ios:
    42  	build/env.sh go run build/ci.go xcode --local
    43  	@echo "Done building."
    44  	@echo "Import \"$(GOBIN)/gochain.framework\" to use the library."
    45  
    46  test:
    47  	go test ./...
    48  
    49  clean:
    50  	rm -fr build/_workspace/pkg/ $(GOBIN)/*
    51  
    52  # The devtools target installs tools required for 'go generate'.
    53  # You need to put $GOBIN (or $GOPATH/bin) in your PATH to use 'go generate'.
    54  
    55  devtools:
    56  	env GOBIN= go get -u golang.org/x/tools/cmd/stringer
    57  	env GOBIN= go get -u github.com/kevinburke/go-bindata/go-bindata
    58  	env GOBIN= go get -u github.com/fjl/gencodec
    59  	env GOBIN= go get -u github.com/golang/protobuf/protoc-gen-go
    60  	env GOBIN= go install ./cmd/abigen
    61  	@type "npm" 2> /dev/null || echo 'Please install node.js and npm'
    62  	@type "solc" 2> /dev/null || echo 'Please install solc'
    63  	@type "protoc" 2> /dev/null || echo 'Please install protoc'
    64  
    65  # Cross Compilation Targets (xgo)
    66  
    67  gochain-cross: gochain-linux gochain-darwin gochain-windows gochain-android gochain-ios
    68  	@echo "Full cross compilation done:"
    69  	@ls -ld $(GOBIN)/gochain-*
    70  
    71  gochain-linux: gochain-linux-386 gochain-linux-amd64 gochain-linux-arm gochain-linux-mips64 gochain-linux-mips64le
    72  	@echo "Linux cross compilation done:"
    73  	@ls -ld $(GOBIN)/gochain-linux-*
    74  
    75  gochain-linux-386:
    76  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/386 -v ./cmd/gochain
    77  	@echo "Linux 386 cross compilation done:"
    78  	@ls -ld $(GOBIN)/gochain-linux-* | grep 386
    79  
    80  gochain-linux-amd64:
    81  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/amd64 -v ./cmd/gochain
    82  	@echo "Linux amd64 cross compilation done:"
    83  	@ls -ld $(GOBIN)/gochain-linux-* | grep amd64
    84  
    85  gochain-linux-arm: gochain-linux-arm-5 gochain-linux-arm-6 gochain-linux-arm-7 gochain-linux-arm64
    86  	@echo "Linux ARM cross compilation done:"
    87  	@ls -ld $(GOBIN)/gochain-linux-* | grep arm
    88  
    89  gochain-linux-arm-5:
    90  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/arm-5 -v ./cmd/gochain
    91  	@echo "Linux ARMv5 cross compilation done:"
    92  	@ls -ld $(GOBIN)/gochain-linux-* | grep arm-5
    93  
    94  gochain-linux-arm-6:
    95  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/arm-6 -v ./cmd/gochain
    96  	@echo "Linux ARMv6 cross compilation done:"
    97  	@ls -ld $(GOBIN)/gochain-linux-* | grep arm-6
    98  
    99  gochain-linux-arm-7:
   100  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/arm-7 -v ./cmd/gochain
   101  	@echo "Linux ARMv7 cross compilation done:"
   102  	@ls -ld $(GOBIN)/gochain-linux-* | grep arm-7
   103  
   104  gochain-linux-arm64:
   105  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/arm64 -v ./cmd/gochain
   106  	@echo "Linux ARM64 cross compilation done:"
   107  	@ls -ld $(GOBIN)/gochain-linux-* | grep arm64
   108  
   109  gochain-linux-mips:
   110  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/mips --ldflags '-extldflags "-static"' -v ./cmd/gochain
   111  	@echo "Linux MIPS cross compilation done:"
   112  	@ls -ld $(GOBIN)/gochain-linux-* | grep mips
   113  
   114  gochain-linux-mipsle:
   115  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/mipsle --ldflags '-extldflags "-static"' -v ./cmd/gochain
   116  	@echo "Linux MIPSle cross compilation done:"
   117  	@ls -ld $(GOBIN)/gochain-linux-* | grep mipsle
   118  
   119  gochain-linux-mips64:
   120  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/mips64 --ldflags '-extldflags "-static"' -v ./cmd/gochain
   121  	@echo "Linux MIPS64 cross compilation done:"
   122  	@ls -ld $(GOBIN)/gochain-linux-* | grep mips64
   123  
   124  gochain-linux-mips64le:
   125  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=linux/mips64le --ldflags '-extldflags "-static"' -v ./cmd/gochain
   126  	@echo "Linux MIPS64le cross compilation done:"
   127  	@ls -ld $(GOBIN)/gochain-linux-* | grep mips64le
   128  
   129  gochain-darwin: gochain-darwin-386 gochain-darwin-amd64
   130  	@echo "Darwin cross compilation done:"
   131  	@ls -ld $(GOBIN)/gochain-darwin-*
   132  
   133  gochain-darwin-386:
   134  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=darwin/386 -v ./cmd/gochain
   135  	@echo "Darwin 386 cross compilation done:"
   136  	@ls -ld $(GOBIN)/gochain-darwin-* | grep 386
   137  
   138  gochain-darwin-amd64:
   139  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=darwin/amd64 -v ./cmd/gochain
   140  	@echo "Darwin amd64 cross compilation done:"
   141  	@ls -ld $(GOBIN)/gochain-darwin-* | grep amd64
   142  
   143  gochain-windows: gochain-windows-386 gochain-windows-amd64
   144  	@echo "Windows cross compilation done:"
   145  	@ls -ld $(GOBIN)/gochain-windows-*
   146  
   147  gochain-windows-386:
   148  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=windows/386 -v ./cmd/gochain
   149  	@echo "Windows 386 cross compilation done:"
   150  	@ls -ld $(GOBIN)/gochain-windows-* | grep 386
   151  
   152  gochain-windows-amd64:
   153  	build/env.sh go run build/ci.go xgo -- --go=$(GO) --targets=windows/amd64 -v ./cmd/gochain
   154  	@echo "Windows amd64 cross compilation done:"
   155  	@ls -ld $(GOBIN)/gochain-windows-* | grep amd64