Toggle navigation
GitHub
Getting Started
Using Bazel
Extending Bazel
Contributing
Blog
Navigation
Version: 2.1.0
main
5.4.1
5.4.0
5.3.1
5.3.0
5.2.0
5.1.1
5.1.0
5.0.0
4.2.4
4.2.3
4.2.2
4.2.1
4.2.0
4.1.0
4.0.0
3.7.0
3.6.0
3.5.1
3.4.0
3.3.0
3.2.0
3.1.0
3.0.0
2.2.0
2.1.0
2.0.0
1.2.0
1.1.0
1.0.0
0.29.1
0.29.0
0.28.0
0.27.0
0.26.0
0.25.0
0.24.0
0.23.0
0.22.0
0.21.0
0.20.0
0.19.2
0.19.1
0.18.1
0.17.2
0.17.1
Home
Bazel overview
Bazel vision
Getting started
Backward compatibility
Installing Bazel
Installation overview
Installation steps
Ubuntu
Fedora/CentOS
macOS
Windows
Compiling from source
Command-line completion
Integrating with IDEs
Updating Bazel
Tutorials
C++
Java
Android
iOS
Using Bazel
Concepts
Core concepts
External dependencies
Configurable attributes
Platforms and toolchains
Visibility
Guides
Running Bazel
Creating a macro
Optimizing memory
Building on Windows
Rules
Queries
The query command
The cquery command
The aquery command
Query language
Best practices
General best practices
Sharing BUILD variables
Remote execution
Overview
Guidelines
Troubleshooting
Troubleshooting with Bazel sandbox
Non-hermetic WORKSPACE rules
Debugging remote cache hits
Remote execution and CI
Remote caching
Overview
Debugging remote cache hits with local execution
Reference
Commands and options
Glossary
Build encyclopedia
Test encyclopedia
Command line reference
BUILD files
Functions
Common rule definitions
"Make" variables
BUILD style guide
Build Event Protocol
Output directory layout
Platforms
Execution Groups
Toolchains
Extending Bazel
Extension overview
Concepts
Macros
Rules
Depsets
Aspects
Repository rules
Configurations
Best practices
.bzl style guide
Testing extensions
Documenting rules with Stardoc
Linting
Optimizing performance
Deploying rules
Writing rules on Windows
Examples
Extensions API
Persistent workers
Persistent workers
Multiplex workers
Creating persistent workers
FAQ
Starlark language
Configuration Fragments
Configuration fragments give rules access to language-specific parts of
configuration
.
Rule implementations can get them using
ctx.fragments
.
[fragment name]
apple
cpp
go
j2objc
java
objc
platform
proto
py
swift
Create issue