mas/script/update_headers

31 lines
825 B
Text
Raw Normal View History

#!/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