blob: f8b0255850509ceac880891c826aa5f3e02acdbc [file]
---
title: 'Bazel BUILD Encyclopedia of Functions'
---
## Concepts and terminology
* [Common definitions](/versions/7.6.1/reference/be/common-definitions)
+ [Bourne shell tokenization](/versions/7.6.1/reference/be/common-definitions#sh-tokenization)
+ [Label expansion](/versions/7.6.1/reference/be/common-definitions#label-expansion)
+ [Typical attributes for most rules](/versions/7.6.1/reference/be/common-definitions#typical-attributes)
+ [Common attributes for all rules](/versions/7.6.1/reference/be/common-definitions#common-attributes)
+ [Common attributes for tests](/versions/7.6.1/reference/be/common-definitions#common-attributes-tests)
+ [Common attributes for binaries](/versions/7.6.1/reference/be/common-definitions#common-attributes-binaries)
+ [Configurable attributes](/versions/7.6.1/reference/be/common-definitions#configurable-attributes)
+ [Implicit output targets](/versions/7.6.1/reference/be/common-definitions#implicit-outputs)
* ["Make" variables](/versions/7.6.1/reference/be/make-variables)
+ [Use](/versions/7.6.1/reference/be/make-variables#use)
## Functions
* [package](/versions/7.6.1/reference/be/functions#package)
* [package\_group](/versions/7.6.1/reference/be/functions#package_group)
* [exports\_files](/versions/7.6.1/reference/be/functions#exports_files)
* [glob](/versions/7.6.1/reference/be/functions#glob)
* [select](/versions/7.6.1/reference/be/functions#select)
* [workspace](/versions/7.6.1/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/7.6.1/rules/rules#recommended-rules).
### Language-specific native rules
| Language | Binary rules | Library rules | Test rules | Other rules |
| --- | --- | --- | --- | --- |
| Android | [android\_binary](/versions/7.6.1/reference/be/android#android_binary) | [aar\_import](/versions/7.6.1/reference/be/android#aar_import) [android\_library](/versions/7.6.1/reference/be/android#android_library) | [android\_instrumentation\_test](/versions/7.6.1/reference/be/android#android_instrumentation_test) [android\_local\_test](/versions/7.6.1/reference/be/android#android_local_test) | [android\_device](/versions/7.6.1/reference/be/android#android_device) [android\_ndk\_repository](/versions/7.6.1/reference/be/android#android_ndk_repository) [android\_sdk\_repository](/versions/7.6.1/reference/be/android#android_sdk_repository) |
| C / C++ | [cc\_binary](/versions/7.6.1/reference/be/c-cpp#cc_binary) | [cc\_import](/versions/7.6.1/reference/be/c-cpp#cc_import) [cc\_library](/versions/7.6.1/reference/be/c-cpp#cc_library) [cc\_proto\_library](/versions/7.6.1/reference/be/c-cpp#cc_proto_library) [cc\_shared\_library](/versions/7.6.1/reference/be/c-cpp#cc_shared_library) [cc\_static\_library](/versions/7.6.1/reference/be/c-cpp#cc_static_library) [fdo\_prefetch\_hints](/versions/7.6.1/reference/be/c-cpp#fdo_prefetch_hints) [fdo\_profile](/versions/7.6.1/reference/be/c-cpp#fdo_profile) [memprof\_profile](/versions/7.6.1/reference/be/c-cpp#memprof_profile) [propeller\_optimize](/versions/7.6.1/reference/be/c-cpp#propeller_optimize) | [cc\_test](/versions/7.6.1/reference/be/c-cpp#cc_test) | [cc\_toolchain](/versions/7.6.1/reference/be/c-cpp#cc_toolchain) [cc\_toolchain\_suite](/versions/7.6.1/reference/be/c-cpp#cc_toolchain_suite) |
| Java | [java\_binary](/versions/7.6.1/reference/be/java#java_binary) | [java\_import](/versions/7.6.1/reference/be/java#java_import) [java\_library](/versions/7.6.1/reference/be/java#java_library) [java\_lite\_proto\_library](/versions/7.6.1/reference/be/java#java_lite_proto_library) [java\_proto\_library](/versions/7.6.1/reference/be/java#java_proto_library) | [java\_test](/versions/7.6.1/reference/be/java#java_test) | [java\_package\_configuration](/versions/7.6.1/reference/be/java#java_package_configuration) [java\_plugin](/versions/7.6.1/reference/be/java#java_plugin) [java\_runtime](/versions/7.6.1/reference/be/java#java_runtime) [java\_toolchain](/versions/7.6.1/reference/be/java#java_toolchain) |
| Objective-C | | [j2objc\_library](/versions/7.6.1/reference/be/objective-c#j2objc_library) [objc\_import](/versions/7.6.1/reference/be/objective-c#objc_import) [objc\_library](/versions/7.6.1/reference/be/objective-c#objc_library) | | [available\_xcodes](/versions/7.6.1/reference/be/objective-c#available_xcodes) [xcode\_config](/versions/7.6.1/reference/be/objective-c#xcode_config) [xcode\_version](/versions/7.6.1/reference/be/objective-c#xcode_version) |
| Protocol Buffer | | [proto\_lang\_toolchain](/versions/7.6.1/reference/be/protocol-buffer#proto_lang_toolchain) [proto\_library](/versions/7.6.1/reference/be/protocol-buffer#proto_library) | | |
| Python | [py\_binary](/versions/7.6.1/reference/be/python#py_binary) | [py\_library](/versions/7.6.1/reference/be/python#py_library) | [py\_test](/versions/7.6.1/reference/be/python#py_test) | [py\_runtime](/versions/7.6.1/reference/be/python#py_runtime) |
| Shell | [sh\_binary](/versions/7.6.1/reference/be/shell#sh_binary) | [sh\_library](/versions/7.6.1/reference/be/shell#sh_library) | [sh\_test](/versions/7.6.1/reference/be/shell#sh_test) | |
### Language-agnostic native rules
| Family | Rules |
| --- | --- |
| Extra Actions | * [action\_listener](/versions/7.6.1/reference/be/extra-actions#action_listener)* [extra\_action](/versions/7.6.1/reference/be/extra-actions#extra_action) |
| General | * [alias](/versions/7.6.1/reference/be/general#alias)* [config\_setting](/versions/7.6.1/reference/be/general#config_setting)* [filegroup](/versions/7.6.1/reference/be/general#filegroup)* [genquery](/versions/7.6.1/reference/be/general#genquery)* [genrule](/versions/7.6.1/reference/be/general#genrule)* [starlark\_doc\_extract](/versions/7.6.1/reference/be/general#starlark_doc_extract)* [test\_suite](/versions/7.6.1/reference/be/general#test_suite) |
| Platforms and Toolchains | * [constraint\_setting](/versions/7.6.1/reference/be/platforms-and-toolchains#constraint_setting)* [constraint\_value](/versions/7.6.1/reference/be/platforms-and-toolchains#constraint_value)* [platform](/versions/7.6.1/reference/be/platforms-and-toolchains#platform)* [toolchain](/versions/7.6.1/reference/be/platforms-and-toolchains#toolchain)* [toolchain\_type](/versions/7.6.1/reference/be/platforms-and-toolchains#toolchain_type) |
| Workspace | * [bind](/versions/7.6.1/reference/be/workspace#bind)* [local\_repository](/versions/7.6.1/reference/be/workspace#local_repository)* [new\_local\_repository](/versions/7.6.1/reference/be/workspace#new_local_repository) |