diff --git a/dist-build/ios.sh b/dist-build/ios.sh index af442595..b57153ba 100755 --- a/dist-build/ios.sh +++ b/dist-build/ios.sh @@ -2,7 +2,7 @@ # # Step 1. # Configure for base system so simulator is covered -# +# # Step 2. # Make for iOS and iOS simulator # @@ -14,7 +14,7 @@ export IOS32_PREFIX="$PREFIX/tmp/ios32" export IOS32s_PREFIX="$PREFIX/tmp/ios32s" export IOS64_PREFIX="$PREFIX/tmp/ios64" export SIMULATOR32_PREFIX="$PREFIX/tmp/simulator32" -export SIMULATOR64_PREFIX="$PREFIX/tmp/simulator64" +export CATALYST_PREFIX="$PREFIX/tmp/catalyst" export XCODEDIR=$(xcode-select -p) export IOS_SIMULATOR_VERSION_MIN=${IOS_SIMULATOR_VERSION_MIN-"9.0.0"} @@ -55,15 +55,19 @@ PROCESSORS=${NPROCESSORS:-3} make -j${PROCESSORS} install || exit 1 -## x86_64 simulator -export CFLAGS="-O2 -arch x86_64 -isysroot ${SDK} -mios-simulator-version-min=${IOS_SIMULATOR_VERSION_MIN}" -export LDFLAGS="-arch x86_64 -isysroot ${SDK} -mios-simulator-version-min=${IOS_SIMULATOR_VERSION_MIN}" +# Build for macOS (Catalyst) +export BASEDIR="${XCODEDIR}/Platforms/MacOSX.platform/Developer" +export PATH="${BASEDIR}/usr/bin:$BASEDIR/usr/sbin:$PATH" +export SDK="${BASEDIR}/SDKs/MacOSX10.15.sdk" + +export CFLAGS="-fembed-bitcode -O2 -arch x86_64 -target x86_64-apple-ios13.0-macabi -isysroot ${SDK}" +export LDFLAGS="-fembed-bitcode -arch x86_64 -target x86_64-apple-ios13.0-macabi -isysroot ${SDK}" make distclean > /dev/null ./configure --host=x86_64-apple-darwin10 \ ${LIBSODIUM_ENABLE_MINIMAL_FLAG} \ - --prefix="$SIMULATOR64_PREFIX" + --prefix="$CATALYST_PREFIX" || exit 1 make -j${PROCESSORS} install || exit 1 @@ -113,18 +117,20 @@ rm -fr -- "$PREFIX/include" "$PREFIX/libsodium.a" 2> /dev/null mkdir -p -- "$PREFIX/lib" lipo -create \ "$SIMULATOR32_PREFIX/lib/libsodium.a" \ - "$SIMULATOR64_PREFIX/lib/libsodium.a" \ + "$CATALYST_PREFIX/lib/libsodium.a" \ "$IOS32_PREFIX/lib/libsodium.a" \ "$IOS32s_PREFIX/lib/libsodium.a" \ "$IOS64_PREFIX/lib/libsodium.a" \ -output "$PREFIX/lib/libsodium.a" + lipo -create \ "$SIMULATOR32_PREFIX/lib/libsodium.dylib" \ - "$SIMULATOR64_PREFIX/lib/libsodium.dylib" \ + "$CATALYST_PREFIX/lib/libsodium.dylib" \ "$IOS32_PREFIX/lib/libsodium.dylib" \ "$IOS32s_PREFIX/lib/libsodium.dylib" \ "$IOS64_PREFIX/lib/libsodium.dylib" \ -output "$PREFIX/lib/libsodium.dylib" + mv -f -- "$IOS32_PREFIX/include" "$PREFIX/" install_name_tool -id "@rpath/SODIUM.framework/libsodium.dylib" "$PREFIX/lib/libsodium.dylib"