From bdb9ef27bb7cb7091138f4351840fb689ff25dcc Mon Sep 17 00:00:00 2001 From: Maxim Baz Date: Thu, 9 Jul 2020 23:57:21 +0200 Subject: [PATCH] Update dependencies and packaging scripts --- .gitignore | 3 ++- Makefile | 50 +++++++++++++++++++++++++++++++------------------- go.mod | 10 ++++------ go.sum | 27 +++++++++------------------ 4 files changed, 46 insertions(+), 44 deletions(-) diff --git a/.gitignore b/.gitignore index de8cb0b..25ef01b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /browserpass /browserpass-* -dist/ +dist +vendor diff --git a/Makefile b/Makefile index 1c8e7ab..047a5a9 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,11 @@ XDG_CONFIG_HOME ?= $(HOME)/.config BIN_PATH = $(BIN_DIR)/$(BIN) BIN_PATH_WINDOWS = C:\\\\\\\\\\\\\\\\Program Files\\\\\\\\\\\\\\\\Browserpass\\\\\\\\\\\\\\\\browserpass-windows64.exe -GO_GCFLAGS := "all=-trimpath=${PWD}" -GO_ASMFLAGS := "all=-trimpath=${PWD}" -GO_LDFLAGS := "-extldflags ${LDFLAGS}" +export CGO_CPPFLAGS := ${CPPFLAGS} +export CGO_CFLAGS := ${CFLAGS} +export CGO_CXXFLAGS := ${CXXFLAGS} +export CGO_LDFLAGS := ${LDFLAGS} +GOFLAGS := -buildmode=pie -trimpath APP_ID = com.github.browserpass.native OS = $(shell uname -s) @@ -28,28 +30,28 @@ INSTALL = $(shell which ginstall 2>/dev/null || which install 2>/dev/null) all: browserpass test browserpass: *.go **/*.go - go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOFLAGS="$(GOFLAGS)" go build -o $@ browserpass-linux64: *.go **/*.go - env GOOS=linux GOARCH=amd64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOOS=linux GOARCH=amd64 go build -o $@ browserpass-arm64: *.go **/*.go - env GOOS=linux GOARCH=arm64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOOS=linux GOARCH=arm64 go build -o $@ browserpass-darwin64: *.go **/*.go - env GOOS=darwin GOARCH=amd64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOOS=darwin GOARCH=amd64 go build -o $@ browserpass-openbsd64: *.go **/*.go - env GOOS=openbsd GOARCH=amd64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOOS=openbsd GOARCH=amd64 go build -o $@ browserpass-freebsd64: *.go **/*.go - env GOOS=freebsd GOARCH=amd64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@ + env GOOS=freebsd GOARCH=amd64 go build -o $@ browserpass-windows64: *.go **/*.go - env GOOS=windows GOARCH=amd64 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@.exe + env GOOS=windows GOARCH=amd64 go build -o $@.exe browserpass-windows: *.go **/*.go - env GOOS=windows GOARCH=386 go build -ldflags $(GO_LDFLAGS) -gcflags $(GO_GCFLAGS) -asmflags $(GO_ASMFLAGS) -o $@.exe + env GOOS=windows GOARCH=386 go build -o $@.exe .PHONY: test test: @@ -58,24 +60,31 @@ test: ####################### # For official releases +.PHONY: vendor +vendor: + go mod tidy + go mod vendor + .PHONY: clean clean: rm -f browserpass browserpass-* rm -rf dist + rm -rf vendor .PHONY: dist -dist: clean browserpass-linux64 browserpass-arm64 browserpass-darwin64 browserpass-openbsd64 browserpass-freebsd64 browserpass-windows64 - mkdir -p dist - - git archive -o dist/browserpass-native-$(VERSION).tar.gz --format tar.gz --prefix=browserpass-native-$(VERSION)/ $(VERSION) - +dist: clean vendor browserpass-linux64 browserpass-arm64 browserpass-darwin64 browserpass-openbsd64 browserpass-freebsd64 browserpass-windows64 $(eval TMP := $(shell mktemp -d)) + # Full source code + mkdir "$(TMP)/browserpass-native-$(VERSION)" + cp -r * "$(TMP)/browserpass-native-$(VERSION)" + (cd "$(TMP)" && tar -cvzf "browserpass-native-$(VERSION)-src.tar.gz" "browserpass-native-$(VERSION)") + # Unix installers for os in linux64 arm64 darwin64 openbsd64 freebsd64; do \ mkdir $(TMP)/browserpass-"$$os"-$(VERSION); \ cp -a browserpass-"$$os"* browser-files Makefile README.md LICENSE $(TMP)/browserpass-"$$os"-$(VERSION); \ - (cd $(TMP) && tar -cvzf ${CURDIR}/dist/browserpass-"$$os"-$(VERSION).tar.gz browserpass-"$$os"-$(VERSION)); \ + (cd $(TMP) && tar -cvzf browserpass-"$$os"-$(VERSION).tar.gz browserpass-"$$os"-$(VERSION)); \ done # Windows installer @@ -83,14 +92,17 @@ dist: clean browserpass-linux64 browserpass-arm64 browserpass-darwin64 browserpa cp -a browserpass-windows64.exe browser-files Makefile README.md LICENSE windows-setup.wxs $(TMP)/browserpass-windows64-$(VERSION) (cd $(TMP)/browserpass-windows64-$(VERSION); \ make BIN_PATH="$(BIN_PATH_WINDOWS)" configure; \ - wixl --verbose --arch x64 windows-setup.wxs --output ${CURDIR}/dist/browserpass-windows64-$(VERSION).msi) + wixl --verbose --arch x64 windows-setup.wxs --output ../browserpass-windows64-$(VERSION).msi) - rm -rf $(TMP) + mkdir -p dist + mv "$(TMP)/"*.tar.gz "$(TMP)/"*.msi dist + git archive -o dist/browserpass-native-$(VERSION).tar.gz --format tar.gz --prefix=browserpass-native-$(VERSION)/ $(VERSION) for file in dist/*; do \ gpg --detach-sign --armor "$$file"; \ done + rm -rf $(TMP) rm -f dist/browserpass-native-$(VERSION).tar.gz ####################### diff --git a/go.mod b/go.mod index 25c034e..96157a7 100644 --- a/go.mod +++ b/go.mod @@ -1,13 +1,11 @@ module github.com/browserpass/browserpass-native -go 1.12 +go 1.14 require ( - github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect - github.com/mattn/go-zglob v0.0.1 + github.com/mattn/go-zglob v0.0.2 github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5 - github.com/sirupsen/logrus v1.4.0 + github.com/sirupsen/logrus v1.6.0 github.com/stretchr/testify v1.3.0 // indirect - golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 // indirect - golang.org/x/sys v0.0.0-20190312061237-fead79001313 + golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae ) diff --git a/go.sum b/go.sum index 9f2adea..90b8a2a 100644 --- a/go.sum +++ b/go.sum @@ -1,30 +1,21 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.2 h1:DB17ag19krx9CFsz4o3enTrPXyIXCl+2iCXH/aMAp9s= -github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/mattn/go-zglob v0.0.1 h1:xsEx/XUoVlI6yXjqBK062zYhRTZltCNmYPx6v+8DNaY= -github.com/mattn/go-zglob v0.0.1/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= +github.com/konsorten/go-windows-terminal-sequences v1.0.3 h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/mattn/go-zglob v0.0.2 h1:0qT24o2wsZ8cOXQAERwBX6s+rPMs/bJTKxLVVtgfDXc= +github.com/mattn/go-zglob v0.0.2/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5 h1:mZHayPoR0lNmnHyvtYjDeq0zlVHn9K/ZXoy17ylucdo= github.com/rifflock/lfshook v0.0.0-20180920164130-b9218ef580f5/go.mod h1:GEXHk5HgEKCvEIIrSpFI3ozzG5xOKA2DVlEX/gGnewM= -github.com/sirupsen/logrus v1.4.0 h1:yKenngtzGh+cUSSh6GWbxW2abRqhYUSR/t/6+2QqNvE= -github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.6.0 h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 h1:VklqNMn3ovrHsnt90PveolxSbWFaJdECFbxSq0Mqo2M= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33 h1:I6FyU15t786LL7oL/hn43zqTuEGr4PN7F4XJ1p4E3Y8= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190312061237-fead79001313 h1:pczuHS43Cp2ktBEEmLwScxgjWsBSzdaQiKzUyf3DTTc= -golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae h1:Ih9Yo4hSPImZOpfGuA4bR/ORKTAbhZo2AbWNRCnevdo= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=