Sources taken from:
https://github.com/apple-oss-distributions/tapi/releases/tag/tapi-1600.0.11.8
https://github.com/swiftlang/llvm-project/releases/tag/swift-6.0-DEVELOPMENT-SNAPSHOT-2024-07-02-a
CMake, Python and Clang or GCC
[INSTALLPREFIX=<prefix>] ./build.sh
./install.sh
# Requires clang and lld to be installed
[INSTALLPREFIX=<prefix>] ./build_tapi_tools.sh
./install.sh
TAPI is a Text-based Application Programming Interface. It replaces the Mach-O Dynamic Library Stub files in Apple's SDKs to reduce the SDK size even further.
The text-based dynamic library stub file format (.tbd) is a human readable and editable YAML text file. The TAPI projects uses the LLVM YAML parser to read those files and provides this functionality to the linker as a dynamic library.