commit | 1e4b9977ccc07b6a0cbc75c5a16380fdde95efe7 | [log] [tgz] |
---|---|---|
author | gregce <gregce@google.com> | Thu Jan 30 08:12:06 2020 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Thu Jan 30 08:13:04 2020 -0800 |
tree | 8e69c33027480118de322c519cb5577cffb16680 | |
parent | c89dc1cf4165fed8e4b5aa6f32bbfcc171a3bef5 [diff] |
cquery --show_config_fragments: report --define requirements more precisely. Before this change, any reliance on --define a=foo reports a dependency on the "CoreOptions" fragment. While true, that's too broad: it includes *all* --defines, including ones having nothing to do with "a". This change reports --define like user-defined flags (which it essentially is a special-case version of): return the specific --define instead. In the above example that'd be --define:a (using a syntax that's easy enough to read while being reasonably parseable as a no-spaces token). This only works for select(). It doesn't include MAKE variables, e.g.: https://github.com/bazelbuild/bazel/blob/6bd6cc4435e722393127c72189dbb646149d844b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java#L610-L621. That requires its own analysis. Prereq work for https://github.com/bazelbuild/bazel/issues/10613. PiperOrigin-RevId: 292350812
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
See CONTRIBUTING.md