From b0cecaf666e2face921b324f945b2c5b9ff6f1fc Mon Sep 17 00:00:00 2001 From: Yaxiong Zhao Date: Wed, 28 Jul 2021 15:56:58 -0700 Subject: [PATCH] Remove '-s' flag from ldflags from the build This retains the symbols (but still removes the dwarf info). This increases the executable size by ~8% (test on my laptop): $ go build -ldflags '-w' -o nats-server -rwxrwxr-x 1 yzhao yzhao 11911273 Jul 28 15:52 nats-server $ go build -ldflags '-s -w' -o nats-server -rwxrwxr-x 1 yzhao yzhao 11128832 Jul 28 15:52 nats-server Symbols are very useful during debugging. It would be great that if the NATS team consider including symbols. --- .goreleaser-nightly.yml | 2 +- .goreleaser.yml | 2 +- docker/Dockerfile.nightly | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.goreleaser-nightly.yml b/.goreleaser-nightly.yml index 4fad09ae..f45b6b10 100644 --- a/.goreleaser-nightly.yml +++ b/.goreleaser-nightly.yml @@ -5,7 +5,7 @@ builds: id: nats-server binary: nats-server ldflags: - - -s -w -X github.com/nats-io/nats-server/server.gitCommit={{.ShortCommit}} + - -w -X github.com/nats-io/nats-server/server.gitCommit={{.ShortCommit}} env: - GO111MODULE=off - CGO_ENABLED=0 diff --git a/.goreleaser.yml b/.goreleaser.yml index 49119306..3d60ec33 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -14,7 +14,7 @@ builds: - main: ./main.go binary: nats-server ldflags: - - -s -w -X github.com/nats-io/nats-server/server.gitCommit={{.ShortCommit}} + - -w -X github.com/nats-io/nats-server/server.gitCommit={{.ShortCommit}} env: - GO111MODULE=off - CGO_ENABLED=0 diff --git a/docker/Dockerfile.nightly b/docker/Dockerfile.nightly index fc86f64f..54d05cf3 100644 --- a/docker/Dockerfile.nightly +++ b/docker/Dockerfile.nightly @@ -7,7 +7,7 @@ RUN mkdir -p src/github.com/nats-io && \ cd src/github.com/nats-io/ && \ git clone https://github.com/nats-io/natscli.git && \ cd natscli/nats && \ - go build -ldflags "-s -w -X main.version=${VERSION}" -o /nats + go build -ldflags "-w -X main.version=${VERSION}" -o /nats RUN go get github.com/nats-io/nsc