You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As [Tulsi](https://github.com/bazelbuild/tulsi) has been officially archived, this PR updates the Bazel documentation to replace its mentions in favour of [rules_xcodeproj](https://github.com/buildbuddy-io/rules_xcodeproj). On top of that, this PR also removes the page that shortly documented how to move CocoaPods dependencies in favour of a short paragraph about experimental rules for the Swift Package Manager.
PiperOrigin-RevId: 511749044
Change-Id: I9aa843011525f556fe6ef7260c02cb426aaca6e3
Co-authored-by: Patrick Balestra <[email protected]>
To integrate CocoaPods dependencies into the Bazel workspace, you must convert
102
-
them into Bazel packages as described in [Converting CocoaPods dependencies](/migrate/cocoapods).
86
+
To integrate SwiftPM dependencies into the Bazel workspace with [swift_bazel](https://github.com/cgrindel/swift_bazel){: .external},
87
+
you must convert them into Bazel packages as described in the [following tutorial](https://chuckgrindel.com/swift-packages-in-bazel-using-swift_bazel/){: .external}.
103
88
104
-
Note: CocoaPods conversion is a manual process with many variables.
105
-
CocoaPods integration with Bazel has not been fully verified and is not
89
+
Note: SwiftPM support is a manual process with many variables.
90
+
SwiftPM integration with Bazel has not been fully verified and is not
106
91
officially supported.
107
92
108
93
### Step 3: Create a `BUILD` file {:#create-build-file}
running library-based unit tests on iOS and macOS, as well as application-based
148
133
tests on macOS. For application-based tests on iOS or UI tests on either
149
134
platform, Bazel will build the test outputs but the tests must run within Xcode
150
-
through a project generated with Tulsi. Add test targets as follows:
135
+
through a project generated with rules_xcodeproj. Add test targets as follows:
151
136
152
137
*[`macos_unit_test`](https://github.com/bazelbuild/rules_apple/blob/master/doc/rules-macos.md#macos_unit_test){: .external} to run library-based and application-based unit tests on a macOS.
to build outputs required to run user interface tests in the iOS simulator
162
-
using Xcode. You must [generate an Xcode project with Tulsi](#step-5-generate-the-xcode-project-with-tulsi)
147
+
using Xcode. You must [generate an Xcode project with rules_xcodeproj](#generate-the-xcode-project-with-rules_xcodeproj)
163
148
and run the tests from within Xcode. Bazel cannot natively run UI tests.
164
149
165
150
At the minimum, specify a value for the `minimum_os_version` attribute. While
@@ -173,7 +158,7 @@ simulator, also specify the `ios_application` target name as the value of the
173
158
#### Step 3c: Add the library target(s) {:#add-library-target}
174
159
175
160
Add an [`objc_library`](/reference/be/objective-c#objc_library)
176
-
target for each ObjectiveC library and a [`swift_library`](https://github.com/bazelbuild/rules_apple/blob/master/doc/rules-swift.md){: .external}
161
+
target for each Objective-C library and a [`swift_library`](https://github.com/bazelbuild/rules_swift/blob/master/doc/rules.md#swift_library){: .external}
177
162
target for each Swift library on which the application and/or tests depend.
178
163
179
164
@@ -192,6 +177,16 @@ Note: You can use the [`glob`](/reference/be/functions#glob)
192
177
function to include all sources and/or headers of a certain type. Use it
193
178
carefully as it might include files you do not want Bazel to build.
194
179
180
+
You can browse existing examples for various types of applications directly in the
181
+
[rules_apple examples directory](https://github.com/bazelbuild/rules_apple/tree/master/examples/). For example:
0 commit comments