Skip to content

Commit

Permalink
patch for visionos
Browse files Browse the repository at this point in the history
  • Loading branch information
1Conan committed Mar 15, 2024
1 parent 76fbe8a commit d1c2cb3
Showing 1 changed file with 57 additions and 1 deletion.
58 changes: 57 additions & 1 deletion build.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/bin/sh
set -e

./ios.sh -s -x \
./ios.sh -s \
--target=16.0 \
--disable-armv7 \
--disable-armv7s \
Expand All @@ -18,3 +19,58 @@
--enable-ios-bzip2 \
--enable-ios-libiconv \
--no-bitcode

FRAMEWORK_NAMES=(ffmpegkit libavcodec libavdevice libavfilter libavformat libavutil libswresample libswscale)
VISIONOS_SIM_PLATFORM=xrossim
VISIONOS_PLATFORM=xros
VISIONOS_MINOS=1.0
VISIONOS_SDK=1.0

IOS_PATH=prebuilt/bundle-apple-framework-iphoneos
IOSSIM_PATH=prebuilt/bundle-apple-framework-iphonesimulator
VISIONOS_PATH=prebuilt/bundle-apple-framework-visionos
VISIONOSSIM_PATH=prebuilt/bundle-apple-framework-visionsimulator

rm -rf ${VISIONOS_PATH} ${VISIONOSSIM_PATH}
cp -r ${IOS_PATH} ${VISIONOS_PATH}
cp -r ${IOS_PATH} ${VISIONOSSIM_PATH}

for FRAMEWORK in "${FRAMEWORK_NAMES[@]}"; do
echo Processing $FRAMEWORK.framework
rm ${VISIONOS_PATH}/${FRAMEWORK}.framework/${FRAMEWORK}
vtool \
-set-build-version ${VISIONOS_PLATFORM} ${VISIONOS_MINOS} ${VISIONOS_SDK} \
-replace \
-output ${VISIONOS_PATH}/${FRAMEWORK}.framework/${FRAMEWORK} \
${IOS_PATH}/${FRAMEWORK}.framework/${FRAMEWORK}
vtool \
-set-build-version ${VISIONOS_SIM_PLATFORM} ${VISIONOS_MINOS} ${VISIONOS_SDK} \
-replace \
-output ${VISIONOSSIM_PATH}/${FRAMEWORK}.framework/${FRAMEWORK} \
${IOS_PATH}/${FRAMEWORK}.framework/${FRAMEWORK}
done

rm -rf prebuilt/patched-xcframeworks
mkdir -p prebuilt/patched-xcframeworks

LIST=()
for FRAMEWORK in "${FRAMEWORK_NAMES[@]}"; do
xcodebuild -create-xcframework \
-framework ${IOS_PATH}/${FRAMEWORK}.framework \
-framework ${IOSSIM_PATH}/${FRAMEWORK}.framework \
-framework ${VISIONOS_PATH}/${FRAMEWORK}.framework \
-framework ${VISIONOSSIM_PATH}/${FRAMEWORK}.framework \
-output prebuilt/patched-xcframeworks/${FRAMEWORK}.xcframework
pushd prebuilt/patched-xcframeworks > /dev/null
rm -rf ${FRAMEWORK}.xcframework.zip
zip -q -r ${FRAMEWORK}.xcframework.zip ${FRAMEWORK}.xcframework
HASH=$(sha256sum ${FRAMEWORK}.xcframework.zip | awk '{print $1}')
LIST+=("\"${FRAMEWORK}\": \"${HASH}\",")
popd > /dev/null
done

echo "["
for ITEM in "${LIST[@]}"; do
echo " ${ITEM}"
done
echo "]"

0 comments on commit d1c2cb3

Please sign in to comment.