Files
SDWebImage/Scripts/build-frameworks.sh
T

61 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
set -e
set -o pipefail
if [[ -z "$XCODE_VERSION_MAJOR" ]]
then
XCODE_VERSION_MAJOR=$(xcodebuild -showBuildSettings | awk -F= '/XCODE_VERSION_MAJOR/{x=$NF; gsub(/[^0-9]/,"",x); print int(x)}')
fi
if [[ -z "$XCODE_VERSION_MINOR" ]]
then
XCODE_VERSION_MINOR=$(xcodebuild -showBuildSettings | awk -F= '/XCODE_VERSION_MINOR/{x=$NF; gsub(/[^0-9]/,"",x); print int(x)}')
fi
XCODE_MAJOR=$(($XCODE_VERSION_MAJOR / 100))
XCODE_MINOR=$(($XCODE_VERSION_MINOR / 10))
XCODE_MINOR=$(($XCODE_MINOR % 10))
echo "XCODE_MAJOR=$XCODE_MAJOR"
echo "XCODE_MINOR=$XCODE_MINOR"
if [[ -z "$SRCROOT" ]]
then
SRCROOT=$(pwd)
fi
mkdir -p "${SRCROOT}/build"
PLATFORMS=("iOS" "iOSSimulator" "macOS" "tvOS" "tvOSSimulator" "watchOS" "watchOSSimulator")
if [ $XCODE_MAJOR -ge 11 ]
then
PLATFORMS+=("macCatalyst")
fi
if [[ ($XCODE_MAJOR -gt 15) || ($XCODE_MAJOR -eq 15 && $XCODE_MINOR -ge 2) ]]
then
PLATFORMS+=("visionOS")
PLATFORMS+=("visionOSSimulator")
fi
for CURRENT_PLATFORM in "${PLATFORMS[@]}"
do
DESTINATION="generic/platform=${CURRENT_PLATFORM}"
# macOS Catalyst
if [[ $CURRENT_PLATFORM == "macCatalyst" ]]; then
DESTINATION="generic/platform=macOS,variant=Mac Catalyst"
fi
# Simulator
if [[ $CURRENT_PLATFORM == *Simulator ]]; then
CURRENT_PLATFORM_OS=${CURRENT_PLATFORM%Simulator}
DESTINATION="generic/platform=${CURRENT_PLATFORM_OS} Simulator"
fi
if [[ $MACH_O_TYPE == "staticlib" ]]; then
XCCCONFIG_PATH="${SRCROOT}/Configs/Static.xcconfig"
else
XCCCONFIG_PATH="${SRCROOT}/Configs/Dynamic.xcconfig"
fi
xcodebuild build -project "SDWebImage.xcodeproj" -destination "${DESTINATION}" -scheme "SDWebImage" -configuration "Release" -xcconfig "${XCCCONFIG_PATH}" -derivedDataPath "${SRCROOT}/build/DerivedData" CONFIGURATION_BUILD_DIR="${SRCROOT}/build/${CURRENT_PLATFORM}/"
done