commit | a2f96fe95ca30bbdd923a441cf2ccdae11715ef9 | [log] [tgz] |
---|---|---|
author | gregce <gregce@google.com> | Mon Aug 05 09:07:23 2019 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Aug 05 09:08:33 2019 -0700 |
tree | f1ca758ccda92644d8b0538872fd604c81492219 | |
parent | f3c9b9d08d84c2f4442cfe4b77d09230a648ebfb [diff] |
config_setting supports multiple values for multi-valued flags. This is inspired by the case of --ios_multi_cpus (for Apple rules). You can call "blaze build --ios_multi_cpus=a,b" or "blaze build --ios_multi_cpus=a --ios_multi_cpus=b", which both mean the same thing. Before this change, config_setting( name = "c", values = {"ios_multi_cpus": "a,b"} ) crashes because config_setting can only check a single value. After this change the above works. Note that for both the single-valued and multi-valued cases the actual settings can have more than the config_setting checks for. So the above config_setting matches both "--ios_multi_cpus=a,b" and "--ios_multi_cpus="a,b,c,d". To complicate things even further, not all multi-valued flags parse the same way as --ios_multi_cpus: --copt="a,b" produces ["a,b"] while --copt=a --copt=b produces ["a", "b"]. See documentation diff for details. RELNOTES[NEW]: config_setting can now check multiple values on "--foo=firstVal --foo=secondVal ..."-style flags PiperOrigin-RevId: 261698200
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel only rebuilds 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
Bazel is released in ‘Beta’. See the product roadmap to learn about the path toward a stable 1.0 release.