[20.10] use GO_LDFLAGS instead of LDFLAGS to prevent inheriting unrelated options#3514
Conversation
|
Ah, dang. Forgot about this one; will have to look into |
f3e5c40 to
294094c
Compare
…ated options
When building on Fedora 36, the build failed. I suspect this is because the
rpm tools also set LDFLAGS, but with options that cannot be used;
GO_LINKMODE=dynamic
+ ./scripts/build/binary
/go/src/github.com/docker/cli ~/rpmbuild/BUILD/src
Building dynamic docker-linux-arm64
+ go build -o build/docker-linux-arm64 -tags ' pkcs11' -ldflags '-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -Wl,-dT,/root/rpmbuild/BUILD/src/.package_note-docker-ce-cli-0.0.0.20220330082637.68cad50-0.fc36.aarch64.ld -w -X "github.com/docker/cli/cli/version.GitCommit=68cad50" -X "github.com/docker/cli/cli/version.BuildTime=2022-03-30T20:05:36Z" -X "github.com/docker/cli/cli/version.Version=0.0.0-20220330082637-68cad50" -X "github.com/docker/cli/cli/version.PlatformName=Docker Engine - Community"' -buildmode=pie github.com/docker/cli/cmd/docker
# github.com/docker/cli/cmd/docker
flag provided but not defined: -Wl,-z,relro
usage: link [options] main.o
This patch changes the variable we use to `GO_LDFLAGS`, taking a similar approach
as containerd, and various other projects using this name: https://grep.app/search?q=GO_LDFLAGS
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 391e6ad)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
294094c to
6f7a931
Compare
Codecov Report
@@ Coverage Diff @@
## 20.10 #3514 +/- ##
=======================================
Coverage 58.57% 58.57%
=======================================
Files 299 299
Lines 21457 21457
=======================================
Hits 12569 12569
Misses 7970 7970
Partials 918 918 |
|
Rebased, and dropped the second commit, because |
|
@ndeloof @tonistiigi PTAL |
|
This one is not urgent; would love to have others also to have a peek (perhaps @tonistiigi and @tianon); I think this change should be fine, but just in case there could be any reason we must also set cli/vendor/github.com/miekg/pkcs11/pkcs11.go Lines 14 to 18 in 1616943 And (honestly) I don't know how those interact (perhaps not at all) |
|
Thanks @tianon ! alright; let's get this one in ❤️ |
When building on Fedora 36, the build failed. I suspect this is because the
rpm tools also set LDFLAGS, but with options that cannot be used;
This patch changes the variable we use to
GO_LDFLAGS, taking a similar approachas containerd, and various other projects using this name: https://grep.app/search?q=GO_LDFLAGS
Signed-off-by: Sebastiaan van Stijn github@gone.nl
(cherry picked from commit 391e6ad)
Signed-off-by: Sebastiaan van Stijn github@gone.nl
- What I did
- How I did it
- How to verify it
- Description for the changelog
- A picture of a cute animal (not mandatory but encouraged)