Compile `cmd/pack` from source and update to Go 1.25 (#4425)
**What type of PR is this?**
Fix for compatibility with Go 1.25
**What does this PR do? Why is it needed?**
The `pack` command, which is no longer shipped as a prebuilt binary with
Go 1.25, is now compiled from source together with the `builder` binary.
Conditional logic is avoided by always compiling `pack` from source,
even on Go versions before 1.25. By enabling `go build` caching in
`go_tool_binary`, the overhead compared to building just the `builder`
binary is negligible.
**Which issues(s) does this PR fix?**
ref: https://github.com/golang/go/issues/74080
fixes https://github.com/bazel-contrib/rules_go/issues/4398
**Other notes for review**
---------
Co-authored-by: rhang <rhang@uber.com>
10 files changed