aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common
diff options
context:
space:
mode:
authorBartlomiej Moskal <bartlomiej.moskal@qt.io>2023-10-02 14:57:26 +0200
committerBartlomiej Moskal <bartlomiej.moskal@qt.io>2023-11-22 10:54:58 +0100
commit65101a61e695d3abb2c1ec55ee7ec0440bd3585d (patch)
treecf70d7d3b94c99efaaaaec50613af436f6ebf651 /coin/provisioning/common
parentdd789418a49ac7add94f2625f990c4372d2f0eb4 (diff)
Coin: Enable openssl for Android FFmpeg install script
The FFmpeg library should use dynamically linked OpenSSL. To make it possible --enable-openssl flag need to be set. Additionally correct path for OpenSSL need to be passed to FFmpeg configuration script. Task-number: QTBUG-110805 Task-number: QTBUG-114954 Task-number: QTBUG-113980 Pick-to: 6.6 6.5 Change-Id: Id887c2c4083663a674123a0f0003b44661149116 Reviewed-by: Samuel Mira <samuel.mira@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Diffstat (limited to 'coin/provisioning/common')
-rwxr-xr-xcoin/provisioning/common/unix/install-ffmpeg-android.sh8
-rw-r--r--coin/provisioning/common/windows/install-ffmpeg.ps16
2 files changed, 12 insertions, 2 deletions
diff --git a/coin/provisioning/common/unix/install-ffmpeg-android.sh b/coin/provisioning/common/unix/install-ffmpeg-android.sh
index 8ff2cac4..aa612a7f 100755
--- a/coin/provisioning/common/unix/install-ffmpeg-android.sh
+++ b/coin/provisioning/common/unix/install-ffmpeg-android.sh
@@ -33,18 +33,23 @@ build_ffmpeg_android() {
sudo mkdir -p "$target_dir"
+ openssl_include="$OPENSSL_ANDROID_HOME_DEFAULT/include"
+ openssl_libs=""
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_HOME_DEFAULT/x86_64"
elif [ "$target_arch" == "x86" ]; then
target_toolchain_arch="i686-linux-android"
target_arch=x86
target_cpu=i686
+ openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/x86"
elif [ "$target_arch" == "arm64" ]; then
target_toolchain_arch="aarch64-linux-android"
target_arch=aarch64
target_cpu=armv8-a
+ openssl_libs="$OPENSSL_ANDROID_HOME_DEFAULT/arm64-v8a"
fi
api_version=24
@@ -65,9 +70,10 @@ build_ffmpeg_android() {
ranlib=${toolchain_bin}/llvm-ranlib
ffmpeg_config_options=$(cat "${BASH_SOURCE%/*}/../shared/ffmpeg_config_options.txt")
- ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --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"
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
+ ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
local build_dir="$ffmpeg_source_dir/build/$target_arch"
sudo mkdir -p "$build_dir"
diff --git a/coin/provisioning/common/windows/install-ffmpeg.ps1 b/coin/provisioning/common/windows/install-ffmpeg.ps1
index f7cd217c..9bf203ba 100644
--- a/coin/provisioning/common/windows/install-ffmpeg.ps1
+++ b/coin/provisioning/common/windows/install-ffmpeg.ps1
@@ -122,11 +122,15 @@ function InstallAndroidArmv7 {
$ranlib="${toolchain_bin}/llvm-ranlib.exe"
$nm="${toolchain_bin}/llvm-nm.exe"
$strip="${toolchain_bin}/llvm-strip.exe"
+ $openssl_path = [System.Environment]::GetEnvironmentVariable("OPENSSL_ANDROID_HOME_DEFAULT", [System.EnvironmentVariableTarget]::Machine)
+ $openssl_path = $openssl_path.Replace("\", "/")
$config = Get-Content "$PSScriptRoot\..\shared\ffmpeg_config_options.txt"
- $config += " --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
+ $config += " --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
$config += " --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
$config += " --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
+ $config += " --extra-cflags=-I$envOPENSSL_ANDROID_HOME_DEFAULT/include --extra-ldflags=-L$env:OPENSSL_ANDROID_HOME_DEFAULT/armeabi-v7a"
+ $config += " --extra-cflags=-I${openssl_path}/include --extra-ldflags=-L${openssl_path}/armeabi-v7a"
return InstallFfmpeg -buildSystem "android-arm" -msystem "ANDROID_CLANG" -ffmpegDirEnvVar "FFMPEG_DIR_ANDROID_ARMV7"
}