I wasn't on the Chrome team, but on teams adjacent to it that used the Chromium codebase and toolset, and my recollection is that before gn there was gyp. ("Generate your project"). Gyp was a lot less Blaze-like.
Blaze owns the whole thing, executes the toolchain, etc.
Blaze is also very much built for the monorepo model we had in Google3. Not that it won't work in other scenarios, but that's where it came from: one repo and when it comes to third party dependencies, one version, etc. And cross-compiling on it felt awkward. GN/Ninja support for multiple toolchains and cross-compiling felt more thought-through, by necessity.
I'd argue this is still the case right now, but toolchain support in Bazel is maturing quickly.
Well, something I'll test hopefully somewhat soon, as I want to test bazel explicitly in very crosscompiling environment...