auto-disable videotoolbox when tvos sdk version set does not support it

This commit is contained in:
Taner Sener 2021-12-20 23:53:50 +00:00
parent 39dfa48c80
commit 4cf5850146
5 changed files with 13 additions and 22 deletions

View File

@ -143,6 +143,15 @@ disable_macos_architecture_not_supported_on_detected_sdk_version() {
fi fi
} }
disable_tvos_videotoolbox_on_not_supported_sdk_version() {
# INTRODUCED IN TVOS SDK 10.2
if [[ $(compare_versions "$TVOS_MIN_VERSION" "10.2") -lt 0 ]]; then
set_library "tvos-videotoolbox" 0
echo -e "INFO: Disabled tvos-videotoolbox which is not supported on tvOS SDK $TVOS_MIN_VERSION\n" 1>>"${BASEDIR}"/build.log 2>&1
fi
}
build_apple_architecture_variant_strings() { build_apple_architecture_variant_strings() {
export ALL_IOS_ARCHITECTURES="$(get_apple_architectures_for_variant "${ARCH_VAR_IOS}")" export ALL_IOS_ARCHITECTURES="$(get_apple_architectures_for_variant "${ARCH_VAR_IOS}")"
export IPHONEOS_ARCHITECTURES="$(get_apple_architectures_for_variant "${ARCH_VAR_IPHONEOS}")" export IPHONEOS_ARCHITECTURES="$(get_apple_architectures_for_variant "${ARCH_VAR_IPHONEOS}")"

View File

@ -90,11 +90,6 @@ enable_lts_build() {
# MAC CATALYST IS INTRODUCED IN 13.0 # MAC CATALYST IS INTRODUCED IN 13.0
export MAC_CATALYST_MIN_VERSION=13.0 export MAC_CATALYST_MIN_VERSION=13.0
fi fi
# IOS SDK 9.3 SUPPORTS VIDEOTOOLBOX
# HOWEVER, THE LATEST FFMPEG VERSION USES SDK 11.0 APIS
# THEREFORE, VIDEOTOOLBOX IS DISABLED IN LTS RELEASES
ENABLED_LIBRARIES[LIBRARY_VIDEOTOOLBOX]=0
} }
get_common_includes() { get_common_includes() {

View File

@ -64,9 +64,6 @@ enable_lts_build() {
# XCODE 7.3 HAS TVOS SDK 9.2 # XCODE 7.3 HAS TVOS SDK 9.2
export TVOS_MIN_VERSION=9.2 export TVOS_MIN_VERSION=9.2
fi fi
# TVOS SDK 9.2 DOES NOT INCLUDE VIDEOTOOLBOX
ENABLED_LIBRARIES[LIBRARY_VIDEOTOOLBOX]=0
} }
get_common_includes() { get_common_includes() {

View File

@ -265,19 +265,6 @@ is_library_supported_on_platform() {
fi fi
;; ;;
# ONLY IOS, MACOS AND TVOS MAIN
52)
if [[ ${FFMPEG_KIT_BUILD_TYPE} == "ios" ]] && [[ $1 == "ios-videotoolbox" ]] && [[ -z ${FFMPEG_KIT_LTS_BUILD} ]]; then
echo "0"
elif [[ ${FFMPEG_KIT_BUILD_TYPE} == "macos" ]] && [[ $1 == "macos-videotoolbox" ]]; then
echo "0"
elif [[ ${FFMPEG_KIT_BUILD_TYPE} == "tvos" ]] && [[ $1 == "tvos-videotoolbox" ]] && [[ -z ${FFMPEG_KIT_LTS_BUILD} ]]; then
echo "0"
else
echo "1"
fi
;;
# ONLY IOS AND MACOS # ONLY IOS AND MACOS
53) 53)
if [[ ${FFMPEG_KIT_BUILD_TYPE} == "ios" ]] && [[ $1 == "ios-avfoundation" ]]; then if [[ ${FFMPEG_KIT_BUILD_TYPE} == "ios" ]] && [[ $1 == "ios-avfoundation" ]]; then
@ -290,7 +277,7 @@ is_library_supported_on_platform() {
;; ;;
# IOS, MACOS AND TVOS # IOS, MACOS AND TVOS
49 | 50 | 51 | 54 | 55) 49 | 50 | 51 | 52 | 54 | 55)
if [[ ${FFMPEG_KIT_BUILD_TYPE} == "ios" ]] || [[ ${FFMPEG_KIT_BUILD_TYPE} == "tvos" ]] || [[ ${FFMPEG_KIT_BUILD_TYPE} == "macos" ]]; then if [[ ${FFMPEG_KIT_BUILD_TYPE} == "ios" ]] || [[ ${FFMPEG_KIT_BUILD_TYPE} == "tvos" ]] || [[ ${FFMPEG_KIT_BUILD_TYPE} == "macos" ]]; then
echo "0" echo "0"
else else

View File

@ -159,6 +159,9 @@ fi
# DISABLE NOT SUPPORTED ARCHITECTURES # DISABLE NOT SUPPORTED ARCHITECTURES
disable_tvos_architecture_not_supported_on_detected_sdk_version "${ARCH_ARM64_SIMULATOR}" disable_tvos_architecture_not_supported_on_detected_sdk_version "${ARCH_ARM64_SIMULATOR}"
# DISABLE NOT SUPPORTED LIBRARIES
disable_tvos_videotoolbox_on_not_supported_sdk_version
# CHECK SOME RULES FOR .framework BUNDLES # CHECK SOME RULES FOR .framework BUNDLES
# 1. DISABLE arm64-simulator WHEN arm64 IS ENABLED IN framework BUNDLES # 1. DISABLE arm64-simulator WHEN arm64 IS ENABLED IN framework BUNDLES