Another build system that came out of Google, particularly the Chromium project, is GYP (https://code.google.com/p/gyp/). GYP is also used by Node.js, which wraps it in a conventional-looking configure/make procedure. I wonder how similar GYP is to Blaze.
Well GYP stands for "generate your projects". And I think it has actually been replaced by the "gn" build system, which does look a bit like Blaze, but with non-Python syntax.
I think GYP is more like a build system generator than a build system. It was more like autoconf (although quite different semantically). The original goal was to generate Visual Studio and XCode projects. And it also generates Ninja files.
Blaze/Bazel is not as portable, since it doesn't do Windows.
AFAICT they both have similar restrictions relative to the OP's concerns. I found the article because I was searching far and wide and for to deal with uses cases where one would typically use configure or pass a custom user command line option. They all have slick systems for organizing and reading built in options, but I couldn't find anything for adding configuration.
https://buckbuild.com/
https://pantsbuild.github.io/
AFAICT, both are written in Python, which is a more palatable dependency than Java. Hm actually Buck is mostly Java, with a Python buck.py program.