@@ -258,8 +258,12 @@ jobs:
258258 run : sudo gem install ceedling -v 0.31.1 --no-user-install
259259 - name : Install automake
260260 run : HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
261- - name : Run build
261+ - name : Run iOS build
262262 run : ceedling project:ios verbosity[4] release
263+ - name : Build Catalyst WolfSSL for XCFramework
264+ run : |
265+ cd third_party/wolfssl
266+ PREFIX=$(pwd)/../builds/wolfssl_ios ./autotools-ios-helper.sh -maccatalyst
263267 - name : Copy all public headers into the umbrella framework
264268 run : cp public/*.h ios/Lightway/Lightway
265269 - name : Build xcframework
@@ -280,6 +284,30 @@ jobs:
280284 run : HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
281285 - name : Run build
282286 run : ceedling project:tvos verbosity[4] release
287+ catalyst :
288+ runs-on : macos-latest
289+ steps :
290+ - uses : actions/checkout@v4
291+ - uses : ruby/setup-ruby@v1
292+ with :
293+ ruby-version : ' 3.0'
294+ bundler-cache : true
295+ - name : Install Ceedling
296+ run : sudo gem install ceedling -v 0.31.1 --no-user-install
297+ - name : Install automake
298+ run : HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
299+ - name : Build arm64
300+ run : CATALYST_TARGET_TRIPLE=arm64-apple-ios13.1-macabi ceedling project:catalyst verbosity[4] release
301+ - name : Save arm64 build
302+ run : cp build/artifacts/release/libhelium.a libhelium_arm64.a
303+ - name : Clean build
304+ run : ceedling project:catalyst clobber
305+ - name : Build x86_64
306+ run : CATALYST_TARGET_TRIPLE=x86_64-apple-ios13.1-macabi ceedling project:catalyst verbosity[4] release
307+ - name : Save x86_64 build
308+ run : cp build/artifacts/release/libhelium.a libhelium_x86_64.a
309+ - name : Create universal binary
310+ run : lipo -create libhelium_arm64.a libhelium_x86_64.a -output build/artifacts/release/libhelium.a
283311 android :
284312 runs-on : ubuntu-22.04
285313 strategy :
0 commit comments