Browse Source

add scripts for building for iOS as a library

Zhuowei Zhang 3 years ago
parent
commit
cfe2e7729b
2 changed files with 21 additions and 0 deletions
  1. 6 0
      ios_build_lib.sh
  2. 15 0
      make_fixed_framework.sh

+ 6 - 0
ios_build_lib.sh

@@ -0,0 +1,6 @@
+#!/bin/sh
+set -e
+xcrun -sdk iphoneos clang -fmodules -Os -g -target arm64-apple-ios14 -o Hypervisor -shared \
+	-DUSE_EXTERNAL_HV_TRAP -DOLDSTRUCT_IOS141 -Ifixed_hv_headers -framework IOKit \
+	hv.m userclient_hv_trap.m
+codesign --sign - --force Hypervisor

+ 15 - 0
make_fixed_framework.sh

@@ -0,0 +1,15 @@
+#!/bin/sh
+set -e
+macospath="$(xcrun --sdk macosx --show-sdk-path)"
+rm -r fixed_framework || true
+mkdir fixed_framework
+cp -a "$macospath/System/Library/Frameworks/Hypervisor.framework" fixed_framework/
+for i in "$macospath/System/Library/Frameworks/Hypervisor.framework/Headers/"*
+do
+	echo $i
+	sed -e "s/API_UNAVAILABLE(ios)/API_AVAILABLE(ios(14.0))/g" "$i" >"fixed_framework/Hypervisor.framework/Headers/$(basename "$i")"
+done
+sed -i "" \
+	-e "s@/System/Library/Frameworks/Hypervisor.framework/Versions/A/Hypervisor@/usr/local/zhuowei/Hypervisor@" \
+	-e "s/-macos/-ios/g" \
+	fixed_framework/Hypervisor.framework/Versions/A/Hypervisor.tbd