> ## Documentation Index
> Fetch the complete documentation index at: https://bazel-pr-30012.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Bazel BUILD Encyclopedia of Functions

## Concepts and terminology

* [Common definitions](/versions/9.0.0/reference/be/common-definitions)
  * [Bourne shell tokenization](/versions/9.0.0/reference/be/common-definitions#sh-tokenization)
  * [Label expansion](/versions/9.0.0/reference/be/common-definitions#label-expansion)
  * [Typical attributes for most rules](/versions/9.0.0/reference/be/common-definitions#typical-attributes)
  * [Common attributes for all rules](/versions/9.0.0/reference/be/common-definitions#common-attributes)
  * [Common attributes for tests](/versions/9.0.0/reference/be/common-definitions#common-attributes-tests)
  * [Common attributes for binaries](/versions/9.0.0/reference/be/common-definitions#common-attributes-binaries)
  * [Configurable attributes](/versions/9.0.0/reference/be/common-definitions#configurable-attributes)
  * [Implicit output targets](/versions/9.0.0/reference/be/common-definitions#implicit-outputs)
* ["Make" variables](/versions/9.0.0/reference/be/make-variables)
  * [Use](/versions/9.0.0/reference/be/make-variables#use)

## Functions

* [package](/versions/9.0.0/reference/be/functions#package)
* [package\_group](/versions/9.0.0/reference/be/functions#package_group)
* [exports\_files](/versions/9.0.0/reference/be/functions#exports_files)
* [glob](/versions/9.0.0/reference/be/functions#glob)
* [select](/versions/9.0.0/reference/be/functions#select)
* [workspace](/versions/9.0.0/rules/lib/globals/workspace#workspace)

## Rules

Native rules ship with the Bazel binary and do not require a `load` statement.
Native rules are available globally in BUILD files. In .bzl files, you can find them in
the `native` module.
For non-native Starlark rules that ship separately from Bazel, see the list of
[recommended rules](/versions/9.0.0/rules/rules#recommended-rules).

### Language-specific native rules

| Language        | Flags | Binary rules                                                  | Library rules                                                                                                                                                                                                                                                                                                                                                                                                                                           | Test rules                                                | Other rules                                                                                                                                                                                                                                                                                                                                                                   |
| --------------- | ----- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| C / C++         |       | [cc\_binary](/versions/9.0.0/reference/be/c-cpp#cc_binary)    | [cc\_import](/versions/9.0.0/reference/be/c-cpp#cc_import)   [cc\_library](/versions/9.0.0/reference/be/c-cpp#cc_library)   [cc\_shared\_library](/versions/9.0.0/reference/be/c-cpp#cc_shared_library)   [cc\_static\_library](/versions/9.0.0/reference/be/c-cpp#cc_static_library)                                                                                                                                                                   | [cc\_test](/versions/9.0.0/reference/be/c-cpp#cc_test)    | [cc\_toolchain](/versions/9.0.0/reference/be/c-cpp#cc_toolchain)   [fdo\_prefetch\_hints](/versions/9.0.0/reference/be/c-cpp#fdo_prefetch_hints)   [fdo\_profile](/versions/9.0.0/reference/be/c-cpp#fdo_profile)   [memprof\_profile](/versions/9.0.0/reference/be/c-cpp#memprof_profile)   [propeller\_optimize](/versions/9.0.0/reference/be/c-cpp#propeller_optimize)     |
| Java            |       | [java\_binary](/versions/9.0.0/reference/be/java#java_binary) | [java\_import](/versions/9.0.0/reference/be/java#java_import)   [java\_library](/versions/9.0.0/reference/be/java#java_library)                                                                                                                                                                                                                                                                                                                         | [java\_test](/versions/9.0.0/reference/be/java#java_test) | [java\_package\_configuration](/versions/9.0.0/reference/be/java#java_package_configuration)   [java\_plugin](/versions/9.0.0/reference/be/java#java_plugin)   [java\_runtime](/versions/9.0.0/reference/be/java#java_runtime)   [java\_single\_jar](/versions/9.0.0/reference/be/java#java_single_jar)   [java\_toolchain](/versions/9.0.0/reference/be/java#java_toolchain) |
| Objective-C     |       |                                                               | [objc\_import](/versions/9.0.0/reference/be/objective-c#objc_import)   [objc\_library](/versions/9.0.0/reference/be/objective-c#objc_library)                                                                                                                                                                                                                                                                                                           |                                                           |                                                                                                                                                                                                                                                                                                                                                                               |
| Protocol Buffer |       |                                                               | [cc\_proto\_library](/versions/9.0.0/reference/be/protocol-buffer#cc_proto_library)   [java\_lite\_proto\_library](/versions/9.0.0/reference/be/protocol-buffer#java_lite_proto_library)   [java\_proto\_library](/versions/9.0.0/reference/be/protocol-buffer#java_proto_library)   [proto\_library](/versions/9.0.0/reference/be/protocol-buffer#proto_library)   [py\_proto\_library](/versions/9.0.0/reference/be/protocol-buffer#py_proto_library) |                                                           | [proto\_lang\_toolchain](/versions/9.0.0/reference/be/protocol-buffer#proto_lang_toolchain)   [proto\_toolchain](/versions/9.0.0/reference/be/protocol-buffer#proto_toolchain)                                                                                                                                                                                                |
| Python          |       | [py\_binary](/versions/9.0.0/reference/be/python#py_binary)   | [py\_library](/versions/9.0.0/reference/be/python#py_library)                                                                                                                                                                                                                                                                                                                                                                                           | [py\_test](/versions/9.0.0/reference/be/python#py_test)   | [py\_runtime](/versions/9.0.0/reference/be/python#py_runtime)                                                                                                                                                                                                                                                                                                                 |
| Shell           |       | [sh\_binary](/versions/9.0.0/reference/be/shell#sh_binary)    | [sh\_library](/versions/9.0.0/reference/be/shell#sh_library)                                                                                                                                                                                                                                                                                                                                                                                            | [sh\_test](/versions/9.0.0/reference/be/shell#sh_test)    |                                                                                                                                                                                                                                                                                                                                                                               |

### Language-agnostic native rules

| Family                   | Rules                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Extra Actions            | \* [action\_listener](/versions/9.0.0/reference/be/extra-actions#action_listener)\* [extra\_action](/versions/9.0.0/reference/be/extra-actions#extra_action)                                                                                                                                                                                                                                                                                                               |
| General                  | \* [alias](/versions/9.0.0/reference/be/general#alias)\* [config\_setting](/versions/9.0.0/reference/be/general#config_setting)\* [filegroup](/versions/9.0.0/reference/be/general#filegroup)\* [genquery](/versions/9.0.0/reference/be/general#genquery)\* [genrule](/versions/9.0.0/reference/be/general#genrule)\* [starlark\_doc\_extract](/versions/9.0.0/reference/be/general#starlark_doc_extract)\* [test\_suite](/versions/9.0.0/reference/be/general#test_suite) |
| Platforms and Toolchains | \* [constraint\_setting](/versions/9.0.0/reference/be/platforms-and-toolchains#constraint_setting)\* [constraint\_value](/versions/9.0.0/reference/be/platforms-and-toolchains#constraint_value)\* [platform](/versions/9.0.0/reference/be/platforms-and-toolchains#platform)\* [toolchain](/versions/9.0.0/reference/be/platforms-and-toolchains#toolchain)\* [toolchain\_type](/versions/9.0.0/reference/be/platforms-and-toolchains#toolchain_type)                     |
