mirror of
https://github.com/golang/go
synced 2024-11-23 00:50:05 -07:00
cmd/go, go/build: update docs to use //go:build syntax
Fixes #46124. Change-Id: I6b8179032102a14befc37719f64ddace98397c97 Reviewed-on: https://go-review.googlesource.com/c/go/+/326931 Trust: Damien Neil <dneil@google.com> Run-TryBot: Damien Neil <dneil@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
This commit is contained in:
parent
033d885315
commit
4d2d89ff42
@ -1568,7 +1568,7 @@
|
|||||||
//
|
//
|
||||||
// A build constraint, also known as a build tag, is a line comment that begins
|
// A build constraint, also known as a build tag, is a line comment that begins
|
||||||
//
|
//
|
||||||
// // +build
|
// //go:build
|
||||||
//
|
//
|
||||||
// that lists the conditions under which a file should be included in the package.
|
// that lists the conditions under which a file should be included in the package.
|
||||||
// Constraints may appear in any kind of source file (not just Go), but
|
// Constraints may appear in any kind of source file (not just Go), but
|
||||||
@ -1576,30 +1576,20 @@
|
|||||||
// only by blank lines and other line comments. These rules mean that in Go
|
// only by blank lines and other line comments. These rules mean that in Go
|
||||||
// files a build constraint must appear before the package clause.
|
// files a build constraint must appear before the package clause.
|
||||||
//
|
//
|
||||||
// To distinguish build constraints from package documentation, a series of
|
// To distinguish build constraints from package documentation,
|
||||||
// build constraints must be followed by a blank line.
|
// a build constraint should be followed by a blank line.
|
||||||
//
|
//
|
||||||
// A build constraint is evaluated as the OR of space-separated options.
|
// A build constraint is evaluated as an expression containing options
|
||||||
// Each option evaluates as the AND of its comma-separated terms.
|
// combined by ||, &&, and ! operators and parentheses. Operators have
|
||||||
// Each term consists of letters, digits, underscores, and dots.
|
// the same meaning as in Go.
|
||||||
// A term may be negated with a preceding !.
|
|
||||||
// For example, the build constraint:
|
|
||||||
//
|
//
|
||||||
// // +build linux,386 darwin,!cgo
|
// For example, the following build constraint constrains a file to
|
||||||
|
// build when the "linux" and "386" constraints are satisfied, or when
|
||||||
|
// "darwin" is satisfied and "cgo" is not:
|
||||||
//
|
//
|
||||||
// corresponds to the boolean formula:
|
// //go:build (linux && 386) || (darwin && !cgo)
|
||||||
//
|
//
|
||||||
// (linux AND 386) OR (darwin AND (NOT cgo))
|
// It is an error for a file to have more than one //go:build line.
|
||||||
//
|
|
||||||
// A file may have multiple build constraints. The overall constraint is the AND
|
|
||||||
// of the individual constraints. That is, the build constraints:
|
|
||||||
//
|
|
||||||
// // +build linux darwin
|
|
||||||
// // +build amd64
|
|
||||||
//
|
|
||||||
// corresponds to the boolean formula:
|
|
||||||
//
|
|
||||||
// (linux OR darwin) AND amd64
|
|
||||||
//
|
//
|
||||||
// During a particular build, the following words are satisfied:
|
// During a particular build, the following words are satisfied:
|
||||||
//
|
//
|
||||||
@ -1637,24 +1627,28 @@
|
|||||||
//
|
//
|
||||||
// To keep a file from being considered for the build:
|
// To keep a file from being considered for the build:
|
||||||
//
|
//
|
||||||
// // +build ignore
|
// //go:build ignore
|
||||||
//
|
//
|
||||||
// (any other unsatisfied word will work as well, but "ignore" is conventional.)
|
// (any other unsatisfied word will work as well, but "ignore" is conventional.)
|
||||||
//
|
//
|
||||||
// To build a file only when using cgo, and only on Linux and OS X:
|
// To build a file only when using cgo, and only on Linux and OS X:
|
||||||
//
|
//
|
||||||
// // +build linux,cgo darwin,cgo
|
// //go:build cgo && (linux || darwin)
|
||||||
//
|
//
|
||||||
// Such a file is usually paired with another file implementing the
|
// Such a file is usually paired with another file implementing the
|
||||||
// default functionality for other systems, which in this case would
|
// default functionality for other systems, which in this case would
|
||||||
// carry the constraint:
|
// carry the constraint:
|
||||||
//
|
//
|
||||||
// // +build !linux,!darwin !cgo
|
// //go:build !(cgo && (linux || darwin))
|
||||||
//
|
//
|
||||||
// Naming a file dns_windows.go will cause it to be included only when
|
// Naming a file dns_windows.go will cause it to be included only when
|
||||||
// building the package for Windows; similarly, math_386.s will be included
|
// building the package for Windows; similarly, math_386.s will be included
|
||||||
// only when building the package for 32-bit x86.
|
// only when building the package for 32-bit x86.
|
||||||
//
|
//
|
||||||
|
// Go versions 1.16 and earlier used a different syntax for build constraints,
|
||||||
|
// with a "// +build" prefix. The gofmt command will add an equivalent //go:build
|
||||||
|
// constraint when encountering the older syntax.
|
||||||
|
//
|
||||||
//
|
//
|
||||||
// Build modes
|
// Build modes
|
||||||
//
|
//
|
||||||
|
@ -784,7 +784,7 @@ var HelpBuildConstraint = &base.Command{
|
|||||||
Long: `
|
Long: `
|
||||||
A build constraint, also known as a build tag, is a line comment that begins
|
A build constraint, also known as a build tag, is a line comment that begins
|
||||||
|
|
||||||
// +build
|
//go:build
|
||||||
|
|
||||||
that lists the conditions under which a file should be included in the package.
|
that lists the conditions under which a file should be included in the package.
|
||||||
Constraints may appear in any kind of source file (not just Go), but
|
Constraints may appear in any kind of source file (not just Go), but
|
||||||
@ -792,30 +792,20 @@ they must appear near the top of the file, preceded
|
|||||||
only by blank lines and other line comments. These rules mean that in Go
|
only by blank lines and other line comments. These rules mean that in Go
|
||||||
files a build constraint must appear before the package clause.
|
files a build constraint must appear before the package clause.
|
||||||
|
|
||||||
To distinguish build constraints from package documentation, a series of
|
To distinguish build constraints from package documentation,
|
||||||
build constraints must be followed by a blank line.
|
a build constraint should be followed by a blank line.
|
||||||
|
|
||||||
A build constraint is evaluated as the OR of space-separated options.
|
A build constraint is evaluated as an expression containing options
|
||||||
Each option evaluates as the AND of its comma-separated terms.
|
combined by ||, &&, and ! operators and parentheses. Operators have
|
||||||
Each term consists of letters, digits, underscores, and dots.
|
the same meaning as in Go.
|
||||||
A term may be negated with a preceding !.
|
|
||||||
For example, the build constraint:
|
|
||||||
|
|
||||||
// +build linux,386 darwin,!cgo
|
For example, the following build constraint constrains a file to
|
||||||
|
build when the "linux" and "386" constraints are satisfied, or when
|
||||||
|
"darwin" is satisfied and "cgo" is not:
|
||||||
|
|
||||||
corresponds to the boolean formula:
|
//go:build (linux && 386) || (darwin && !cgo)
|
||||||
|
|
||||||
(linux AND 386) OR (darwin AND (NOT cgo))
|
It is an error for a file to have more than one //go:build line.
|
||||||
|
|
||||||
A file may have multiple build constraints. The overall constraint is the AND
|
|
||||||
of the individual constraints. That is, the build constraints:
|
|
||||||
|
|
||||||
// +build linux darwin
|
|
||||||
// +build amd64
|
|
||||||
|
|
||||||
corresponds to the boolean formula:
|
|
||||||
|
|
||||||
(linux OR darwin) AND amd64
|
|
||||||
|
|
||||||
During a particular build, the following words are satisfied:
|
During a particular build, the following words are satisfied:
|
||||||
|
|
||||||
@ -853,22 +843,26 @@ in addition to ios tags and files.
|
|||||||
|
|
||||||
To keep a file from being considered for the build:
|
To keep a file from being considered for the build:
|
||||||
|
|
||||||
// +build ignore
|
//go:build ignore
|
||||||
|
|
||||||
(any other unsatisfied word will work as well, but "ignore" is conventional.)
|
(any other unsatisfied word will work as well, but "ignore" is conventional.)
|
||||||
|
|
||||||
To build a file only when using cgo, and only on Linux and OS X:
|
To build a file only when using cgo, and only on Linux and OS X:
|
||||||
|
|
||||||
// +build linux,cgo darwin,cgo
|
//go:build cgo && (linux || darwin)
|
||||||
|
|
||||||
Such a file is usually paired with another file implementing the
|
Such a file is usually paired with another file implementing the
|
||||||
default functionality for other systems, which in this case would
|
default functionality for other systems, which in this case would
|
||||||
carry the constraint:
|
carry the constraint:
|
||||||
|
|
||||||
// +build !linux,!darwin !cgo
|
//go:build !(cgo && (linux || darwin))
|
||||||
|
|
||||||
Naming a file dns_windows.go will cause it to be included only when
|
Naming a file dns_windows.go will cause it to be included only when
|
||||||
building the package for Windows; similarly, math_386.s will be included
|
building the package for Windows; similarly, math_386.s will be included
|
||||||
only when building the package for 32-bit x86.
|
only when building the package for 32-bit x86.
|
||||||
|
|
||||||
|
Go versions 1.16 and earlier used a different syntax for build constraints,
|
||||||
|
with a "// +build" prefix. The gofmt command will add an equivalent //go:build
|
||||||
|
constraint when encountering the older syntax.
|
||||||
`,
|
`,
|
||||||
}
|
}
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
//
|
//
|
||||||
// A build constraint, also known as a build tag, is a line comment that begins
|
// A build constraint, also known as a build tag, is a line comment that begins
|
||||||
//
|
//
|
||||||
// // +build
|
// //go:build
|
||||||
//
|
//
|
||||||
// that lists the conditions under which a file should be included in the
|
// that lists the conditions under which a file should be included in the
|
||||||
// package. Build constraints may also be part of a file's name
|
// package. Build constraints may also be part of a file's name
|
||||||
|
Loading…
Reference in New Issue
Block a user