Skia: Upgrade Go to 1.21.

This CL aims to unblock the Skia Infrastructure -> Skia autoroller, which has been broken ever since Skia Infrastructure was upgraded to Go 1.21 in https://skia-review.googlesource.com/c/buildbot/+/775867.

This CL also updates rules_go and Gazelle to match the version in Skia Infrastructure. It includes the same compatibility changes as in https://skia-review.googlesource.com/c/buildbot/+/772355. The reason for updating rules_go is two-fold: a previous attempt at updating Go suggests we might need a newer rules_go version (https://skia-review.googlesource.com/c/skia/+/781216), and I think aligning the rules_go versions might prevent future Skia Infra -> Skia autoroller failures.

The "skia/bots/go" CIPD package needed to be updated as well to prevent Housekeeper-PerCommit-InfraTests_Linux errors (example: https://task-scheduler.skia.org/job/LRdkt8Jt87HicKl6hptU).

Notable change: I had add a special case to //toolchain/linux_trampolines/clang_trampoline_linux.sh in order to prevent C++ errors while compiling the Go standard library. This new special case does not affect Skia's C++ compilation. See comments for details.

Bug: b/316979074
Change-Id: Ia6514440b97219b64db2ca41c452dacfe97240b4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/791499
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
14 files changed