add mbedtls support

ffmpeg_4.4.2
hanbowen 2 years ago
parent 0738f74153
commit c3c0ccd171
  1. 4
      scripts/ffmpeg/build.sh
  2. 9
      scripts/mbedtls/android.cmake
  3. 19
      scripts/mbedtls/build.sh
  4. 9
      scripts/mbedtls/download.sh
  5. 6
      scripts/parse-arguments.sh

@ -14,6 +14,10 @@ if [ "$FFMPEG_GPL_ENABLED" = true ] ; then
EXTRA_BUILD_CONFIGURATION_FLAGS="$EXTRA_BUILD_CONFIGURATION_FLAGS --enable-gpl"
fi
if [ "$FFMPEG_MBEDTLS_ENABLED" = true ] ; then
EXTRA_BUILD_CONFIGURATION_FLAGS="$EXTRA_BUILD_CONFIGURATION_FLAGS --enable-protocol=https --enable-version3"
fi
# Preparing flags for enabling requested libraries
ADDITIONAL_COMPONENTS=
for LIBARY_NAME in ${FFMPEG_EXTERNAL_LIBRARIES[@]}

@ -0,0 +1,9 @@
# Enable NEON for all ARM processors
set(ANDROID_ARM_NEON TRUE)
# By including this file all necessary variables that point to compiler, linker, etc.
# will be setup. Well, almost all.
# Two variables have to be set before this line though:
# ANDROID_PLATOFORM - the API level to compile against (number)
# ANDROID_ABI - the ABI of the target platform
include("$ENV{ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake")

@ -0,0 +1,19 @@
#!/usr/bin/env bash
CMAKE_BUILD_DIR=mbedtls_build_${ANDROID_ABI}
# mbedtls authors park their source in a directory named mbedtls-${MBEDTLS_VERSION}
# instead of root directory
cd mbedtls-${MBEDTLS_VERSION}
rm -rf ${CMAKE_BUILD_DIR}
mkdir ${CMAKE_BUILD_DIR}
cd ${CMAKE_BUILD_DIR}
${CMAKE_EXECUTABLE} .. \
-DANDROID_PLATFORM=${ANDROID_PLATFORM} \
-DANDROID_ABI=${ANDROID_ABI} \
-DCMAKE_TOOLCHAIN_FILE=${SCRIPTS_DIR}/mbedtls/android.cmake \
-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} \
-DENABLE_TESTING=0
${MAKE_EXECUTABLE} -j${HOST_NPROC}
${MAKE_EXECUTABLE} install

@ -0,0 +1,9 @@
#!/usr/bin/env bash
source ${SCRIPTS_DIR}/common-functions.sh
export MBEDTLS_VERSION=2.28.0
downloadTarArchive \
"mbedtls" \
"https://github.com/Mbed-TLS/mbedtls/archive/refs/tags/v${MBEDTLS_VERSION}.tar.gz" \
true

@ -12,6 +12,7 @@ SOURCE_TYPE=TAR
SOURCE_VALUE=5.0.1
EXTERNAL_LIBRARIES=()
FFMPEG_GPL_ENABLED=false
FFMPEG_MBEDTLS_ENABLED=false
# All FREE libraries that are supported
SUPPORTED_LIBRARIES_FREE=(
@ -25,6 +26,7 @@ SUPPORTED_LIBRARIES_FREE=(
"libwebp"
"libfreetype"
"libfribidi"
"mbedtls"
)
# All GPL libraries that are supported
@ -111,6 +113,10 @@ for argument in "$@"; do
EXTERNAL_LIBRARIES+=("libx264")
FFMPEG_GPL_ENABLED=true
;;
--enable-mbedtls | -mbedtls)
EXTERNAL_LIBRARIES+=("mbedtls")
FFMPEG_MBEDTLS_ENABLED=true
;;
--enable-all-free | -all-free)
EXTERNAL_LIBRARIES+=" ${SUPPORTED_LIBRARIES_FREE[@]}"
;;

Loading…
Cancel
Save