forked from please-build/go-rules
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.plzconfig
172 lines (138 loc) · 4.49 KB
/
.plzconfig
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
[Please]
Version = >=17.2.0
[build]
hashcheckers = sha256
[Plugin "go"]
GoTool = //third_party/go:toolchain|go
Stdlib = //third_party/go:std
PleaseGoTool = //tools/please_go:bootstrap
ImportPath = github.com/please-build/go-rules
ValidateModuleVersions = true
CoverageRedesign = true
[Plugin "cc"]
Target = //plugins:cc
[Plugin "e2e"]
Target = //plugins:e2e
PleaseVersion = 16.26.1
[PluginDefinition]
Name = go
[PluginConfig "go_tool"]
DefaultValue = go
Help = A file path or build label for the go tool to use
Inherit = true
[PluginConfig "go_compile_tool"]
Help = A file path or build label for the go compile tool to use. If not set, go_tool will be used to find it.
Inherit = true
Optional = true
[PluginConfig "go_link_tool"]
Help = A file path or build label for the go link tool to use. If not set, go_tool will be used to find it.
Inherit = true
Optional = true
[PluginConfig "go_cover_tool"]
Help = A file path or build label for the go cover tool to use. If not set, go_tool will be used to find it.
Inherit = true
Optional = true
[PluginConfig "stdlib"]
Optional = true
Help = The build label for a go_stdlib target used to re-compile the standard library for different architectures and build modes.
Inherit = true
[PluginConfig "require_licences"]
DefaultValue = false
Type = bool
Inherit = true
Help = If set, the licences field on go_module and go_repo will be mandatory
[PluginConfig "validate_module_version"]
DefaultValue = false
Type = bool
Help = If set, the values of go_mod_download's module and version parameters will be validated.
[PluginConfig "import_path"]
Help = The base import path when compiling first party Go code. This usually is set to the module name in go.mod.
Optional = true
[PluginConfig "cc_tool"]
DefaultValue = cc
Help = The C compiler to use with cgo rules
Inherit = true
Optional = true
[PluginConfig "cgo_enabled"]
Optional = true
Help = If set, the CGO_ENABLED environment variable will be set to 1
Inherit = true
[PluginConfig "ar_tool"]
DefaultValue = ar
Help = Path to the ar archiving tool to use
Inherit = true
[PluginConfig "please_go_tool"]
ConfigKey = PleaseGoTool
DefaultValue = //tools:please_go
Help = A path or build label for the please_go tool, an internal tool used to help build Go code
Inherit = true
[PluginConfig "delve_tool"]
DefaultValue = dlv
Inherit = true
Help = The path to the delve tool used when debugging Go targets
[PluginConfig "default_static"]
DefaultValue = false
Inherit = true
Type = bool
Help = Whether to link binaries statically by default
[PluginConfig "test_root_compat"]
DefaultValue = false
Type = bool
Help = Changes the test working directory to be the package to be more inline with how "go test" works
[PluginConfig "cpp_coverage"]
Type = bool
DefaultValue = false
Help = Whether to build C components with coverage
[PluginConfig "c_flags"]
Inherit = true
Repeatable = true
Optional = true
Help = Any additional C flags to pass to the C compiler when compling cgo rules
[PluginConfig "ld_flags"]
Inherit = true
Repeatable = true
Optional = true
Help = Any additional linker flags to pass to the linker when linking cgo libraries
[PluginConfig "legacy_imports"]
Type = bool
DefaultValue = False
Help = Reverts back to the pre-v17 behavior of Please where packages could be imported as "{dirname}/{package}" rather than just "{dirname}"
[PluginConfig "split_debug_info"]
Type = bool
Optional = true
Help = Split debug info for binaries into a separate, optional output.
[PluginConfig "strip_tool"]
DefaultValue = eu-strip
Inherit = true
Help = Tool to use to strip debug info. This is temporary and will be removed later!
[PluginConfig "feature_flags"]
Repeatable = true
Optional = true
Inherit = true
Help = Flags to enable in-development features, or toggle breaking changes
[PluginConfig "coverageredesign"]
Type = bool
DefaultValue = false
Inherit = true
Help = Support Go 1.20's coverage redesign. Will break coverage on 1.19, required for 1.20.
[PluginConfig "buildmode"]
Optional = true
Help = The Go build mode to target (see `go help buildmode` for info)
[PluginConfig "race"]
Type = bool
DefaultValue = false
Optional = true
Help = Compile for the Go race detector
[PluginConfig "mod_file"]
Optional = true
Help = A built target for a go.mod, which can help avoid the need to pass modules via requirements to go_repo.
[PluginConfig "pkg_info"]
Type = bool
DefaultValue = true
Help = Generate pkg info for Go targets
[PluginConfig "build_tags"]
Repeatable = true
Optional = true
Help = Build tags to pass to the Go compiler
[Plugin "shell"]
Target = //plugins:shell