This document provides high-level guidelines for converting CocoaPods dependencies to Bazel packages that are compatible with Tulsi. CocoaPods is a third-party dependency management system for Apple application development.
Note: CocoaPods conversion is a manual process with many variables. CocoaPods integration with Bazel has not been fully verified and is not officially supported.
If you're using CocoaPods, you need to:
Podfile files to determine the hierarchy of the
Take note of the version numbers in the corresponding
to ensure that you are pulling the correct
Document the dependency tree, including the hierarchy of the
resource URLs, filenames, and version numbers.
Podspecto a Bazel package
To convert a
Podspec dependency to a Bazel package, do the following:
Podspec and decompress it into its own directory within the
Bazel workspace. All
Podspecs must reside within the same Bazel workspace
for Tulsi to be aware of them for inclusion in the Xcode project.
Podspec directory, create a
BUILD file that specifies the
library target(s) referencing the source and header files on which your
Based on your project's dependency tree, add the
Podspecs target(s) as
dependencies to the appropriate targets in the project's
In the project's
BUILD files, configure package visibility as desired.