Sources taken from:
https://opensource.apple.com/tarballs/tapi
https://github.com/apple/llvm-project/tree/apple/stable/20210107
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.