XCFramework binaries are currently not provided by Tag Commander. Until they are this repository provides XCFrameworks for versions we use at SRG SSR, with a Swift Package Manager manifest for easy integration in projects. Binaries are currently packaged for iOS and tvOS, and built from source since we had to implement tvOS support ourselves.
Use Swift Package Manager directly within Xcode. You can also declare the library as a dependency of another one directly in the associated Package.swift
manifest.
We have a quite recent mirror of the source code, kept private, which can be used to build all binary flavors, then combined as an XCFramework.
You should first consider releasing an update to TCCore, as TCSDK depends on it. Note that there is no binary dependency declared in the SPM manifest, as dependencies are currently not supported for binaries.
To build the XCFramework:
- Clone the Tag Commander source code repository:
$ git clone https://github.com/SRGSSR/tagcommander-src-apple.git
. - Switch to the tag you want to produce an XCFramework for:
$ git switch --detach <tag>
- Use the script to package the framework, providing the checked out repository path as parameter:
$ ./tcsdk_xcframework.sh /path/to/repository
If everything goes well a zip of the XCFramework will be generated where the script was executed, with the corresponding checksum displayed. Save the binary zip and the checksum somewhere safe.
To make the generated framework available:
- Update the
Package.swift
in this repository with the framework version number and the checksum of the zip you just generated. - Commit the changes on
master
and create a corresponding tag. - Push the commit and the tag to GitHub.
- Attach the binary to the tag on GitHub.
Do not commit the binaries in the repository, as this would slow done checkouts made by SPM as the repository grows.