mirror of https://github.com/golang/go.git
cmd/dist: share one copy of the "generated by" header string
Right now, every code generator in dist has a copy of the // Code generated by go tool dist; DO NOT EDIT. string. Put it in one place to make sure it doesn't diverge. Change-Id: I8b2a1904031599d7fc128b6a5d74480dee05fc89 Reviewed-on: https://go-review.googlesource.com/c/go/+/501138 Run-TryBot: Austin Clements <austin@google.com> Reviewed-by: Russ Cox <rsc@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
parent
f6ec9b11a6
commit
89184adb9a
|
|
@ -6,6 +6,7 @@ package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"sort"
|
"sort"
|
||||||
|
|
@ -16,6 +17,15 @@ import (
|
||||||
* Helpers for building cmd/go and cmd/cgo.
|
* Helpers for building cmd/go and cmd/cgo.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// generatedHeader is the string that all source files generated by dist start with.
|
||||||
|
const generatedHeader = "// Code generated by go tool dist; DO NOT EDIT.\n\n"
|
||||||
|
|
||||||
|
// writeHeader emits the standard "generated by" header for all files generated
|
||||||
|
// by dist.
|
||||||
|
func writeHeader(w io.Writer) {
|
||||||
|
fmt.Fprint(w, generatedHeader)
|
||||||
|
}
|
||||||
|
|
||||||
// mkzdefaultcc writes zdefaultcc.go:
|
// mkzdefaultcc writes zdefaultcc.go:
|
||||||
//
|
//
|
||||||
// package main
|
// package main
|
||||||
|
|
@ -28,8 +38,7 @@ import (
|
||||||
func mkzdefaultcc(dir, file string) {
|
func mkzdefaultcc(dir, file string) {
|
||||||
if strings.Contains(file, filepath.FromSlash("go/internal/cfg")) {
|
if strings.Contains(file, filepath.FromSlash("go/internal/cfg")) {
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package cfg\n")
|
fmt.Fprintf(&buf, "package cfg\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "const DefaultPkgConfig = `%s`\n", defaultpkgconfig)
|
fmt.Fprintf(&buf, "const DefaultPkgConfig = `%s`\n", defaultpkgconfig)
|
||||||
|
|
@ -40,8 +49,7 @@ func mkzdefaultcc(dir, file string) {
|
||||||
}
|
}
|
||||||
|
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package main\n")
|
fmt.Fprintf(&buf, "package main\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "const defaultPkgConfig = `%s`\n", defaultpkgconfig)
|
fmt.Fprintf(&buf, "const defaultPkgConfig = `%s`\n", defaultpkgconfig)
|
||||||
|
|
@ -99,8 +107,7 @@ func defaultCCFunc(name string, defaultcc map[string]string) string {
|
||||||
// It is invoked to write go/build/zcgo.go.
|
// It is invoked to write go/build/zcgo.go.
|
||||||
func mkzcgo(dir, file string) {
|
func mkzcgo(dir, file string) {
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package build\n")
|
fmt.Fprintf(&buf, "package build\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "const defaultCGO_ENABLED = %s\n", quote(os.Getenv("CGO_ENABLED")))
|
fmt.Fprintf(&buf, "const defaultCGO_ENABLED = %s\n", quote(os.Getenv("CGO_ENABLED")))
|
||||||
|
|
@ -116,8 +123,7 @@ func mktzdata(dir, file string) {
|
||||||
zip := readfile(filepath.Join(dir, "../../../lib/time/zoneinfo.zip"))
|
zip := readfile(filepath.Join(dir, "../../../lib/time/zoneinfo.zip"))
|
||||||
|
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package tzdata\n")
|
fmt.Fprintf(&buf, "package tzdata\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "const zipdata = %s\n", quote(zip))
|
fmt.Fprintf(&buf, "const zipdata = %s\n", quote(zip))
|
||||||
|
|
|
||||||
|
|
@ -21,8 +21,7 @@ import (
|
||||||
// (Nothing right now!)
|
// (Nothing right now!)
|
||||||
func mkzversion(dir, file string) {
|
func mkzversion(dir, file string) {
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package sys\n")
|
fmt.Fprintf(&buf, "package sys\n")
|
||||||
writefile(buf.String(), file, writeSkipSame)
|
writefile(buf.String(), file, writeSkipSame)
|
||||||
}
|
}
|
||||||
|
|
@ -48,8 +47,7 @@ func mkzversion(dir, file string) {
|
||||||
// original target (in this example, a Mac).
|
// original target (in this example, a Mac).
|
||||||
func mkbuildcfg(file string) {
|
func mkbuildcfg(file string) {
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package buildcfg\n")
|
fmt.Fprintf(&buf, "package buildcfg\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "import \"runtime\"\n")
|
fmt.Fprintf(&buf, "import \"runtime\"\n")
|
||||||
|
|
@ -77,8 +75,7 @@ func mkbuildcfg(file string) {
|
||||||
// (Nothing right now!)
|
// (Nothing right now!)
|
||||||
func mkobjabi(file string) {
|
func mkobjabi(file string) {
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package objabi\n")
|
fmt.Fprintf(&buf, "package objabi\n")
|
||||||
|
|
||||||
writefile(buf.String(), file, writeSkipSame)
|
writefile(buf.String(), file, writeSkipSame)
|
||||||
|
|
@ -94,8 +91,7 @@ func mkzosarch(dir, file string) {
|
||||||
sort.Strings(list)
|
sort.Strings(list)
|
||||||
|
|
||||||
var buf strings.Builder
|
var buf strings.Builder
|
||||||
fmt.Fprintf(&buf, "// Code generated by go tool dist; DO NOT EDIT.\n")
|
writeHeader(&buf)
|
||||||
fmt.Fprintln(&buf)
|
|
||||||
fmt.Fprintf(&buf, "package platform\n")
|
fmt.Fprintf(&buf, "package platform\n")
|
||||||
fmt.Fprintln(&buf)
|
fmt.Fprintln(&buf)
|
||||||
fmt.Fprintf(&buf, "var osArchSupportsCgo = map[string]bool{\n")
|
fmt.Fprintf(&buf, "var osArchSupportsCgo = map[string]bool{\n")
|
||||||
|
|
|
||||||
|
|
@ -283,13 +283,11 @@ func bootstrapRewriteFile(srcFile string) string {
|
||||||
// binary that works for the current gohostarch.
|
// binary that works for the current gohostarch.
|
||||||
// This saves 6+ seconds of bootstrap.
|
// This saves 6+ seconds of bootstrap.
|
||||||
if archCaps, ok := isUnneededSSARewriteFile(srcFile, gohostarch); ok {
|
if archCaps, ok := isUnneededSSARewriteFile(srcFile, gohostarch); ok {
|
||||||
return fmt.Sprintf(`// Code generated by go tool dist; DO NOT EDIT.
|
return fmt.Sprintf(`%spackage ssa
|
||||||
|
|
||||||
package ssa
|
|
||||||
|
|
||||||
func rewriteValue%s(v *Value) bool { panic("unused during bootstrap") }
|
func rewriteValue%s(v *Value) bool { panic("unused during bootstrap") }
|
||||||
func rewriteBlock%s(b *Block) bool { panic("unused during bootstrap") }
|
func rewriteBlock%s(b *Block) bool { panic("unused during bootstrap") }
|
||||||
`, archCaps, archCaps)
|
`, generatedHeader, archCaps, archCaps)
|
||||||
}
|
}
|
||||||
|
|
||||||
return bootstrapFixImports(srcFile)
|
return bootstrapFixImports(srcFile)
|
||||||
|
|
@ -324,7 +322,7 @@ func bootstrapFixImports(srcFile string) string {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lines[0] = "// Code generated by go tool dist; DO NOT EDIT.\n// This is a bootstrap copy of " + srcFile + "\n\n//line " + srcFile + ":1\n" + lines[0]
|
lines[0] = generatedHeader + "// This is a bootstrap copy of " + srcFile + "\n\n//line " + srcFile + ":1\n" + lines[0]
|
||||||
|
|
||||||
return strings.Join(lines, "")
|
return strings.Join(lines, "")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue