diff options
author | Jakob Unterwurzacher | 2020-04-13 16:10:09 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2020-04-13 18:06:50 +0200 |
commit | 73436d9419d9ef60b0104a73ffae156d9f871261 (patch) | |
tree | 631b30f0750680d562de7f88c55f589ddd4c053e | |
parent | a7d562d1144130f4c12e1eb821ac24210a079e79 (diff) |
travis: fix Go Modules build problems
-rw-r--r-- | .travis.yml | 6 | ||||
-rwxr-xr-x | build.bash | 9 | ||||
-rwxr-xr-x | crossbuild.bash | 3 | ||||
-rwxr-xr-x | test.bash | 1 |
4 files changed, 15 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml index 8507326..9cfc238 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,13 @@ language: go +os: linux # fuse on travis sudo: required dist: bionic # Ubuntu 18.04 "Bionic", https://docs.travis-ci.com/user/reference/bionic/ +env: + - GO111MODULE=on + git: depth: 300 @@ -27,7 +31,7 @@ before_install: script: - openssl version - df -Th / /tmp - - go build + - env GO111MODULE=on go build - ./build-without-openssl.bash - ./build.bash - ./gocryptfs -speed @@ -15,7 +15,7 @@ cd "$(dirname "$0")" # Make sure we have the go binary go version > /dev/null -# Make it work on Go 1.11 and 1.12 +# Enable Go Modules on Go 1.11 and 1.12 # https://dev.to/maelvls/why-is-go111module-everywhere-and-everything-about-go-modules-24k#-raw-go111module-endraw-with-go-111-and-112 export GO111MODULE=on @@ -68,7 +68,12 @@ fi # Also, Fedora and Arch want pie enabled, so enable it. # * https://fedoraproject.org/wiki/Changes/golang-buildmode-pie # * https://github.com/rfjakob/gocryptfs/pull/460 -export GOFLAGS="${GOFLAGS:--trimpath -buildmode=pie}" +# However, -trimpath needs Go 1.13+, and we support Go 1.11 and Go 1.12 +# too. So don't add it there. +GV=$(go version) +if [[ $GV != *"1.11"* && $GV != *"1.12"* ]] ; then + export GOFLAGS="${GOFLAGS:--trimpath -buildmode=pie}" +fi GO_LDFLAGS="-X main.GitVersion=$GITVERSION -X main.GitVersionFuse=$GITVERSIONFUSE -X main.BuildDate=$BUILDDATE" diff --git a/crossbuild.bash b/crossbuild.bash index 12671fe..13b0bc3 100755 --- a/crossbuild.bash +++ b/crossbuild.bash @@ -2,13 +2,14 @@ cd "$(dirname "$0")" +export GO111MODULE=on B="go build -tags without_openssl" set -x # See https://github.com/golang/go/wiki/GoArm GOOS=linux GOARCH=arm GOARM=7 $B -GOOS=linux GOARCH=arm64 $B +GOOS=linux GOARCH=arm64 $B # MacOS GOOS=darwin GOARCH=amd64 $B @@ -10,6 +10,7 @@ fi set -eu cd "$(dirname "$0")" +export GO111MODULE=on MYNAME=$(basename "$0") TESTDIR=$TMPDIR/gocryptfs-test-parent-$UID mkdir -p "$TESTDIR" |