blob: 7c601be59b7f2f9c8210d26e68b71692f44ab903 [file] [log] [blame]
---
title: 'Objective-C Rules'
---
## Rules
* [objc\_import](#objc_import)
* [objc\_library](#objc_library)
## objc\_import
[View rule sourceopen\_in\_new](https://github.com/bazelbuild/bazel/blob/master/src/main/starlark/builtins_bzl/common/objc/objc_import.bzl)
```
objc_import(name, deps, hdrs, alwayslink, archives, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, includes, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
```
### Arguments
| Attributes | |
| --- | --- |
| `name` | [Name](/versions/8.0.1/concepts/labels#target-names); required A unique name for this target. |
| `hdrs` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `alwayslink` | Boolean; default is `False` |
| `archives` | List of [labels](/versions/8.0.1/concepts/labels); required |
| `includes` | List of strings; default is `[]` |
| `sdk_dylibs` | List of strings; default is `[]` |
| `sdk_frameworks` | List of strings; default is `[]` |
| `sdk_includes` | List of strings; default is `[]` |
| `textual_hdrs` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `weak_sdk_frameworks` | List of strings; default is `[]` |
## objc\_library
[View rule sourceopen\_in\_new](https://github.com/bazelbuild/bazel/blob/master/src/main/starlark/builtins_bzl/common/objc/objc_library.bzl)
```
objc_library(name, deps, srcs, data, hdrs, alwayslink, compatible_with, copts, defines, deprecation, distribs, enable_modules, exec_compatible_with, exec_properties, features, implementation_deps, includes, linkopts, module_map, module_name, non_arc_srcs, pch, restricted_to, sdk_dylibs, sdk_frameworks, sdk_includes, stamp, tags, target_compatible_with, testonly, textual_hdrs, toolchains, visibility, weak_sdk_frameworks)
```
### Arguments
| Attributes | |
| --- | --- |
| `name` | [Name](/versions/8.0.1/concepts/labels#target-names); required A unique name for this target. |
| `hdrs` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `alwayslink` | Boolean; default is `False` |
| `copts` | List of strings; default is `[]` |
| `defines` | List of strings; default is `[]` |
| `enable_modules` | Boolean; default is `False` |
| `implementation_deps` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `includes` | List of strings; default is `[]` |
| `linkopts` | List of strings; default is `[]` |
| `module_map` | [Label](/versions/8.0.1/concepts/labels); default is `None` |
| `module_name` | String; default is `""` |
| `non_arc_srcs` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `pch` | [Label](/versions/8.0.1/concepts/labels); default is `None` |
| `sdk_dylibs` | List of strings; default is `[]` |
| `sdk_frameworks` | List of strings; default is `[]` |
| `sdk_includes` | List of strings; default is `[]` |
| `stamp` | Boolean; default is `False` |
| `textual_hdrs` | List of [labels](/versions/8.0.1/concepts/labels); default is `[]` |
| `weak_sdk_frameworks` | List of strings; default is `[]` |