From dc70ffdbb94b56e378c4cdeff9c423e266bb86ac Mon Sep 17 00:00:00 2001 From: Randall Winkhart Date: Sun, 1 Feb 2026 14:30:09 -0500 Subject: [PATCH] Add initial script for creating XCFramework --- xcode/genXCFramework.zsh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 xcode/genXCFramework.zsh diff --git a/xcode/genXCFramework.zsh b/xcode/genXCFramework.zsh new file mode 100644 index 0000000..66a3a57 --- /dev/null +++ b/xcode/genXCFramework.zsh @@ -0,0 +1,28 @@ +#!/usr/bin/env zsh +# TODO Support iOS simulator + +# setup build dirs +rm -rf ./build +mkdir -p ./build/{ios,macos} + +# cd to Go source +cd .. + +# build static archive for all platforms +## iOS +CGO_ENABLED=1 GOOS=ios SDK=iphoneos go build -buildmode=c-archive +mv ./{cmutton.a,cmutton.h} ./xcode/build/ios/ +cp ./types.h ./xcode/build/ios/ +## macOS +CGO_ENABLED=1 GOOS=darwin go build -buildmode=c-archive +mv ./{cmutton.a,cmutton.h} ./xcode/build/macos/ +cp ./types.h ./xcode/build/macos/ + +# cd to xcode build dir and build XCFramework +cd ./xcode/build +xcodebuild -create-framework \ + -library ./ios/cmutton.a \ + -headers ./ios/cmutton.h \ + -library ./macos/cmutton.a \ + -headers ./macos/cmutton.h \ + -output cmutton.xcframework