github.com/cnotch/ipchub@v1.1.0/makefile (about)

     1  # Go parameters
     2  GOCMD=go
     3  GOBUILD=$(GOCMD) build
     4  GOCLEAN=$(GOCMD) clean
     5  GOTEST=$(GOCMD) test
     6  GOGET=$(GOCMD) get
     7  ENABLED_CGO=0
     8  BINARY_NAME=ipchub
     9  BINARY_DIR= bin/v1.1.0
    10  
    11  build:
    12  	CGO_ENABLED=$(ENABLED_CGO) $(GOBUILD) -o bin/$(BINARY_NAME) .
    13  	cp -r demos bin/
    14  	cp -r docs bin/
    15  # linux compilation
    16  build-linux-amd64:
    17  	CGO_ENABLED=$(ENABLED_CGO) GOOS=linux GOARCH=amd64 $(GOBUILD) -o $(BINARY_DIR)/linux/amd64/$(BINARY_NAME)$(VERSION) .
    18  	cp -r demos $(BINARY_DIR)/linux/amd64/
    19  	cp -r docs $(BINARY_DIR)/linux/amd64/
    20  build-linux-386:
    21  	CGO_ENABLED=$(ENABLED_CGO) GOOS=linux GOARCH=386 $(GOBUILD) -o $(BINARY_DIR)/linux/386/$(BINARY_NAME)$(VERSION) .
    22  build-linux-arm:
    23  	CGO_ENABLED=$(ENABLED_CGO) GOOS=linux GOARCH=arm $(GOBUILD) -o $(BINARY_DIR)/linux/arm/$(BINARY_NAME)$(VERSION) .
    24  
    25  # window compilation
    26  build-windows-amd64:
    27  	CGO_ENABLED=$(ENABLED_CGO) GOOS=windows GOARCH=amd64 $(GOBUILD) -o $(BINARY_DIR)/windows/amd64/$(BINARY_NAME)$(VERSION).exe .
    28  	cp -r demos $(BINARY_DIR)/windows/amd64/
    29  	cp -r docs $(BINARY_DIR)/windows/amd64/
    30  build-windows-386:
    31  	CGO_ENABLED=$(ENABLED_CGO) GOOS=windows GOARCH=386 $(GOBUILD) -o $(BINARY_DIR)/windows/386/$(BINARY_NAME)$(VERSION).exe .
    32  
    33  # darwin compilation
    34  build-darwin-amd64:
    35  	CGO_ENABLED=$(ENABLED_CGO) GOOS=darwin GOARCH=amd64 $(GOBUILD) -o $(BINARY_DIR)/darwin/amd64/$(BINARY_NAME)$(VERSION) .
    36  	cp -r demos $(BINARY_DIR)/darwin/amd64/
    37  	cp -r docs $(BINARY_DIR)/darwin/amd64/
    38  build-darwin-386:
    39  	CGO_ENABLED=$(ENABLED_CGO) GOOS=darwin GOARCH=386 $(GOBUILD) -o $(BINARY_DIR)/darwin/386/$(BINARY_NAME)$(VERSION) .
    40  
    41  # amd64 all platform compilation
    42  build-amd64: build-linux-amd64 build-windows-amd64 build-darwin-amd64
    43  
    44  # all 
    45  build-all: build-linux-amd64 build-windows-amd64 build-darwin-amd64 build-linux-386 build-windows-386 build-darwin-386 build-linux-arm
    46  
    47  test:
    48  	$(GOTEST) -v ./...
    49  clean:
    50  	$(GOCLEAN)
    51  	rm -f bin/$(BINARY_NAME)
    52  	rm -rf $(BINARY_DIR)