#!/bin/bash # # script/update_headers # mas # # Runs class-dump to generate headers for Apple private frameworks. # mas_dir="$(readlink -fn "$(dirname "${BASH_SOURCE:-"${0}"}")/..")" if ! cd -- "${mas_dir}"; then printf $'Error: Could not cd into mas directory: %s\n' "${mas_dir}" >&2 exit 1 fi if ! command -v class-dump >/dev/null; then echo 'class-dump is not installed.' >&2 echo 'Download from http://stevenygard.com/projects/class-dump/' >&2 exit 1 fi extract_private_framework_headers() { local framework_name="${1}" local directory="Sources/PrivateFrameworks/${framework_name}" mkdir -p "${directory}" class-dump -Ho "${directory}" "/System/Library/PrivateFrameworks/${framework_name}.framework" } extract_private_framework_headers CommerceKit extract_private_framework_headers StoreFoundation