-
Notifications
You must be signed in to change notification settings - Fork 717
Commit
To follow suit with the new //go:build convention of build tags, this commit converts bpf2go to no longer emit the deprecated +build lines. The bpf2go command line interface remains unchanged to avoid breaking users. In the future we can introduce a new -constraints flag and deprecate -tags. Signed-off-by: Timo Beckers <timo@isovalent.com> Co-developed-by: Lorenz Bauer <oss@lmb.io>
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
package main | ||
|
||
import ( | ||
"flag" | ||
"go/build/constraint" | ||
) | ||
|
||
// buildTags is a comma-separated list of build tags. | ||
// | ||
// This follows the pre-Go 1.17 syntax and is kept for compatibility reasons. | ||
type buildTags struct { | ||
Expr constraint.Expr | ||
} | ||
|
||
var _ flag.Value = (*buildTags)(nil) | ||
|
||
func (bt *buildTags) String() string { | ||
if bt.Expr == nil { | ||
return "" | ||
} | ||
|
||
return (bt.Expr).String() | ||
} | ||
|
||
func (bt *buildTags) Set(value string) error { | ||
ct, err := constraint.Parse("// +build " + value) | ||
if err != nil { | ||
return err | ||
} | ||
|
||
bt.Expr = ct | ||
return nil | ||
} | ||
|
||
func andConstraints(x, y constraint.Expr) constraint.Expr { | ||
if x == nil { | ||
return y | ||
} | ||
|
||
if y == nil { | ||
return x | ||
} | ||
|
||
return &constraint.AndExpr{X: x, Y: y} | ||
} | ||
|
||
func orConstraints(x, y constraint.Expr) constraint.Expr { | ||
if x == nil { | ||
return y | ||
} | ||
|
||
if y == nil { | ||
return x | ||
} | ||
|
||
return &constraint.OrExpr{X: x, Y: y} | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.