diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
index fec3b2cedc833b8fc4e8461d3edea13720835512..15ed4278ac02427eafa533b426924591208f0606 100644
--- a/src/cmd/dist/build.go
+++ b/src/cmd/dist/build.go
@@ -198,6 +198,7 @@ func xinit() {
 	}
 
 	gogcflags = os.Getenv("BOOT_GO_GCFLAGS")
+	goldflags = os.Getenv("BOOT_GO_LDFLAGS")
 
 	cc, cxx := "gcc", "g++"
 	if defaultclang {
@@ -661,6 +662,9 @@ func runInstall(dir string, ch chan struct{}) {
 		if goos == "android" {
 			link = append(link, "-buildmode=pie")
 		}
+		if goldflags != "" {
+			link = append(link, goldflags)
+		}
 		link = append(link, "-o", pathf("%s/%s%s", tooldir, elem, exe))
 		targ = len(link) - 1
 	}
@@ -1265,7 +1269,7 @@ func cmdbootstrap() {
 	}
 
 	gogcflags = os.Getenv("GO_GCFLAGS") // we were using $BOOT_GO_GCFLAGS until now
-	goldflags = os.Getenv("GO_LDFLAGS")
+	goldflags = os.Getenv("GO_LDFLAGS") // we were using $BOOT_GO_LDFLAGS until now
 	goBootstrap := pathf("%s/go_bootstrap", tooldir)
 	cmdGo := pathf("%s/go", gobin)
 	if debug {