Cleanup in install-ffmpeg-android.sh

Non-functional changes:
* fix alignment
* add the keyword 'local' to local function variables

Pick-to: 6.8
Change-Id: I28639d28c7211809e52f118c1612db52f8954286
Reviewed-by: Jøger Hansegård <jogerh@gmail.com>
Reviewed-by: Pavel Dubsky <pavel.dubsky@qt.io>
(cherry picked from commit 151c0dd58f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Artem Dyomin
2024-10-28 21:54:12 +01:00
committed by Nils Petter Skålerud
parent a1427fbd4c
commit 144715f585

View File

@@ -9,19 +9,20 @@ source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
os="$1" os="$1"
build_type=$(get_ffmpeg_build_type) build_type=$(get_ffmpeg_build_type)
target_dir="$HOME"
ffmpeg_source_dir=$(download_ffmpeg) ffmpeg_source_dir=$(download_ffmpeg)
build_ffmpeg_android() { build_ffmpeg_android() {
local target_arch=$1
target_arch=$1 local target_dir=$2
target_dir=$2
sudo mkdir -p "$target_dir" sudo mkdir -p "$target_dir"
openssl_include="$OPENSSL_ANDROID_HOME_DEFAULT/include" local openssl_include="$OPENSSL_ANDROID_HOME_DEFAULT/include"
openssl_libs="" local openssl_libs
libs_prefix="" local libs_prefix
local target_cpu
local target_toolchain_arch
if [ "$target_arch" == "x86_64" ]; then if [ "$target_arch" == "x86_64" ]; then
target_toolchain_arch="x86_64-linux-android" target_toolchain_arch="x86_64-linux-android"
target_arch=x86_64 target_arch=x86_64
@@ -45,22 +46,24 @@ build_ffmpeg_android() {
ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so" ln -Ffs "${openssl_libs}/libcrypto_3.so" "${openssl_libs}/libcrypto.so"
ln -Ffs "${openssl_libs}/libssl_3.so" "${openssl_libs}/libssl.so" ln -Ffs "${openssl_libs}/libssl_3.so" "${openssl_libs}/libssl.so"
api_version=24 local api_version=24
ndk_root=$ANDROID_NDK_ROOT_DEFAULT local ndk_root=$ANDROID_NDK_ROOT_DEFAULT
local ndk_host
if uname -a |grep -q "Darwin"; then if uname -a |grep -q "Darwin"; then
ndk_host=darwin-x86_64 ndk_host=darwin-x86_64
else else
ndk_host=linux-x86_64 ndk_host=linux-x86_64
fi fi
toolchain=${ndk_root}/toolchains/llvm/prebuilt/${ndk_host} local toolchain=${ndk_root}/toolchains/llvm/prebuilt/${ndk_host}
toolchain_bin=${toolchain}/bin local toolchain_bin=${toolchain}/bin
sysroot=${toolchain}/sysroot local sysroot=${toolchain}/sysroot
cxx=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang++ local cxx=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang++
cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang local cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
ar=${toolchain_bin}/llvm-ar local ar=${toolchain_bin}/llvm-ar
ranlib=${toolchain_bin}/llvm-ranlib local ranlib=${toolchain_bin}/llvm-ranlib
local ffmpeg_config_options
ffmpeg_config_options=$(get_ffmpeg_config_options $build_type) ffmpeg_config_options=$(get_ffmpeg_config_options $build_type)
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera" ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
@@ -68,12 +71,13 @@ build_ffmpeg_android() {
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}" ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}" ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
local build_dir="$ffmpeg_source_dir/build/$target_arch" local build_dir="$ffmpeg_source_dir/build_android/$target_arch"
sudo mkdir -p "$build_dir" mkdir -p "$build_dir"
pushd "$build_dir" pushd "$build_dir"
# shellcheck disable=SC2086 # shellcheck disable=SC2086
sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$target_dir" sudo "$ffmpeg_source_dir/configure" $ffmpeg_config_options --prefix="$target_dir"
# shellcheck disable=
sudo make install -j4 sudo make install -j4
@@ -83,7 +87,7 @@ build_ffmpeg_android() {
rm -f "${openssl_libs}/libssl.so" rm -f "${openssl_libs}/libssl.so"
if [[ "$build_type" == "shared" ]]; then if [[ "$build_type" == "shared" ]]; then
fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh" local fix_dependencies="${BASH_SOURCE%/*}/../shared/fix_ffmpeg_dependencies.sh"
sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no" sudo "${fix_dependencies}" "${target_dir}" "${libs_prefix}" "no"
fi fi
} }
@@ -100,6 +104,9 @@ elif [ "$os" == "android-arm64" ]; then
target_arch=arm64 target_arch=arm64
target_dir="/usr/local/android/ffmpeg-arm64" target_dir="/usr/local/android/ffmpeg-arm64"
envvar="FFMPEG_DIR_ANDROID_ARM64" envvar="FFMPEG_DIR_ANDROID_ARM64"
else
>&2 echo "Unhandled android os param: $os"
exit 1
fi fi
build_ffmpeg_android "$target_arch" "$target_dir" build_ffmpeg_android "$target_arch" "$target_dir"