mirror of
git://code.qt.io/qt/qt5.git
synced 2026-02-24 16:05:36 +08:00
FFmpeg, Android: Simplify OS parameter logic
The script accepts an OS parameter, which is then forwarded into the `build_ffmpeg_android` function. This function expects a different set of values, that are different in name only, not in meaning. This patch makes us forward the OS parameter directly into the function and changes the internal logic accordingly. No functional changes. Pick-to: 6.11 6.10 6.8 Change-Id: I5614f1cf489594cfab2966a680e87a95c7be267b Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
This commit is contained in:
@@ -24,43 +24,46 @@ assert_envvar_is_populated_dir() {
|
||||
}
|
||||
|
||||
build_ffmpeg_android() {
|
||||
local target_arch=$1
|
||||
local target_dir=$2
|
||||
local ndk_root=$3
|
||||
local openssl_android_path=$4
|
||||
local target_dir=$1
|
||||
local ndk_root=$2
|
||||
local openssl_android_path=$3
|
||||
|
||||
sudo mkdir -p "$target_dir"
|
||||
|
||||
local openssl_include="$openssl_android_path/include"
|
||||
local target_arch
|
||||
local openssl_libs
|
||||
local libs_prefix
|
||||
local target_cpu
|
||||
local target_toolchain_arch
|
||||
|
||||
if [ "$target_arch" == "x86_64" ]; then
|
||||
target_toolchain_arch="x86_64-linux-android"
|
||||
target_arch=x86_64
|
||||
target_cpu=x86-64
|
||||
openssl_libs="$openssl_android_path/x86_64"
|
||||
libs_prefix="_x86_64"
|
||||
elif [ "$target_arch" == "x86" ]; then
|
||||
if [ "$os" == "android-x86" ]; then
|
||||
target_toolchain_arch="i686-linux-android"
|
||||
target_arch=x86
|
||||
target_cpu=i686
|
||||
openssl_libs="$openssl_android_path/x86"
|
||||
libs_prefix="_x86"
|
||||
elif [ "$target_arch" == "arm32" ]; then
|
||||
elif [ "$os" == "android-x86_64" ]; then
|
||||
target_toolchain_arch="x86_64-linux-android"
|
||||
target_arch=x86_64
|
||||
target_cpu=x86-64
|
||||
openssl_libs="$openssl_android_path/x86_64"
|
||||
libs_prefix="_x86_64"
|
||||
elif [ "$os" == "android-arm32" ]; then
|
||||
target_toolchain_arch="armv7a-linux-androideabi"
|
||||
target_arch=arm
|
||||
target_cpu=armv7-a
|
||||
openssl_libs="$openssl_android_path/armeabi-v7a"
|
||||
libs_prefix="_arm32-v7a"
|
||||
elif [ "$target_arch" == "arm64" ]; then
|
||||
elif [ "$os" == "android-arm64" ]; then
|
||||
target_toolchain_arch="aarch64-linux-android"
|
||||
target_arch=aarch64
|
||||
target_cpu=armv8-a
|
||||
openssl_libs="$openssl_android_path/arm64-v8a"
|
||||
libs_prefix="_arm64-v8a"
|
||||
else
|
||||
>&2 echo "Unhandled android os param: $os"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
|
||||
@@ -127,28 +130,24 @@ build_ffmpeg_android() {
|
||||
}
|
||||
|
||||
if [ "$os" == "android-x86" ]; then
|
||||
target_arch=x86
|
||||
target_dir="/usr/local/android/ffmpeg-x86"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-x86_64" ]; then
|
||||
target_arch=x86_64
|
||||
target_dir="/usr/local/android/ffmpeg-x86_64"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_64_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-arm32" ]; then
|
||||
target_arch=arm32
|
||||
target_dir="/usr/local/android/ffmpeg-arm32"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM32_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_ARM32_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-arm64" ]; then
|
||||
target_arch=arm64
|
||||
target_dir="/usr/local/android/ffmpeg-arm64"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM64_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM64_NDK_NIGHTLY1"
|
||||
@@ -166,26 +165,26 @@ fi
|
||||
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_LATEST"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_LATEST"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/latest" "$ANDROID_NDK_ROOT_LATEST" "$OPENSSL_ANDROID_HOME_LATEST"
|
||||
build_ffmpeg_android "$target_dir/latest" "$ANDROID_NDK_ROOT_LATEST" "$OPENSSL_ANDROID_HOME_LATEST"
|
||||
set_ffmpeg_dir_env_var "$envvar_latest" "$target_dir/latest"
|
||||
|
||||
if [ "${ANDROID_NDK_ROOT_PREVIEW}" ]; then
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_PREVIEW"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_PREVIEW"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/preview" "$ANDROID_NDK_ROOT_PREVIEW" "$OPENSSL_ANDROID_HOME_PREVIEW"
|
||||
build_ffmpeg_android "$target_dir/preview" "$ANDROID_NDK_ROOT_PREVIEW" "$OPENSSL_ANDROID_HOME_PREVIEW"
|
||||
set_ffmpeg_dir_env_var "$envvar_preview" "$target_dir/preview"
|
||||
fi
|
||||
|
||||
if [ "${ANDROID_NDK_ROOT_NIGHTLY1}" ]; then
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY1"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/nightly1" "$ANDROID_NDK_ROOT_NIGHTLY1" "$OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||
build_ffmpeg_android "$target_dir/nightly1" "$ANDROID_NDK_ROOT_NIGHTLY1" "$OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||
set_ffmpeg_dir_env_var "$envvar_nightly1" "$target_dir/nightly1"
|
||||
fi
|
||||
|
||||
if [ "${ANDROID_NDK_ROOT_NIGHTLY2}" ]; then
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY2"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY2"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/nightly2" "$ANDROID_NDK_ROOT_NIGHTLY2" "$OPENSSL_ANDROID_HOME_NIGHTLY2"
|
||||
build_ffmpeg_android "$target_dir/nightly2" "$ANDROID_NDK_ROOT_NIGHTLY2" "$OPENSSL_ANDROID_HOME_NIGHTLY2"
|
||||
set_ffmpeg_dir_env_var "$envvar_nightly2" "$target_dir/nightly2"
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user