Skip to content

Commit f012abe

Browse files
committed
Require android 21+ for FULL version
1 parent ef1db7e commit f012abe

File tree

2 files changed

+86
-84
lines changed

2 files changed

+86
-84
lines changed

.circleci/config.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ defaults: &defaults
1414
mkdir -p build_logs;
1515
export FINAL_DIR=$(pwd)/artifacts/$TARGET;
1616
export BUILD_DIR=$(pwd)/build_scripts/build_dir && mkdir -p $BUILD_DIR;
17-
./build_scripts/build_ffmpeg.sh $TARGET $BUILD_DIR $FINAL_DIR;
17+
./build_scripts/build_ffmpeg.sh $TARGET full $BUILD_DIR $FINAL_DIR;
18+
./build_scripts/build_ffmpeg.sh $TARGET lite $BUILD_DIR $FINAL_DIR;
1819
- run:
1920
name: Copy error report
2021
command: |

build_scripts/build_ffmpeg.sh

Lines changed: 84 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ if [ "$NDK" = "" ] || [ ! -d $NDK ]; then
1515
fi
1616

1717
export TARGET=$1
18-
export PREFIX=$2
19-
export DESTINATION_FOLDER=$3
18+
export FLAVOR=$2
19+
export PREFIX=$3
20+
export DESTINATION_FOLDER=$4
2021

2122
if [ "$(uname)" == "Darwin" ]; then
2223
OS="darwin-x86_64"
@@ -26,15 +27,21 @@ fi
2627

2728
NATIVE_SYSROOT=/
2829

29-
ARM_SYSROOT=$NDK/platforms/android-16/arch-arm/
30+
if [ "$FLAVOR" = "lite" ]; then
31+
# LITE flavor support android 16+
32+
ARM_SYSROOT=$NDK/platforms/android-16/arch-arm/
33+
X86_SYSROOT=$NDK/platforms/android-16/arch-x86/
34+
else
35+
# FULL flavor require android 21 at minimum (because of including openssl)
36+
ARM_SYSROOT=$NDK/platforms/android-21/arch-arm/
37+
X86_SYSROOT=$NDK/platforms/android-21/arch-x86/
38+
fi
3039
ARM_PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/$OS
40+
X86_PREBUILT=$NDK/toolchains/x86-4.9/prebuilt/$OS
3141

3242
ARM64_SYSROOT=$NDK/platforms/android-21/arch-arm64/
3343
ARM64_PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/$OS
3444

35-
X86_SYSROOT=$NDK/platforms/android-16/arch-x86/
36-
X86_PREBUILT=$NDK/toolchains/x86-4.9/prebuilt/$OS
37-
3845
X86_64_SYSROOT=$NDK/platforms/android-21/arch-x86_64/
3946
X86_64_PREBUILT=$NDK/toolchains/x86_64-4.9/prebuilt/$OS
4047

@@ -336,88 +343,82 @@ else
336343
--sysroot=$SYSROOT"
337344
fi
338345

339-
# Build - FULL version
340-
./configure --prefix=$PREFIX \
341-
$CROSS_COMPILE_FLAGS \
342-
--pkg-config=$(which pkg-config) \
343-
--pkg-config-flags="--static" \
344-
--enable-pic \
345-
--enable-small \
346-
--enable-gpl \
347-
--enable-nonfree \
348-
\
349-
--disable-shared \
350-
--enable-static \
351-
\
352-
--enable-ffmpeg \
353-
--disable-ffplay \
354-
--disable-ffprobe \
355-
--disable-ffserver \
356-
\
357-
--enable-libshine \
358-
--enable-libmp3lame \
359-
--enable-libopus \
360-
--enable-libvorbis \
361-
--enable-libfdk-aac \
362-
--enable-bsf=aac_adtstoasc \
363-
--enable-openssl \
364-
\
365-
--disable-doc \
366-
$ADDITIONAL_CONFIGURE_FLAG
367-
368-
make clean
369-
make -j8
370-
make install V=1
371-
372-
mkdir -p $DESTINATION_FOLDER/full/
373-
cp $PREFIX/bin/ffmpeg $DESTINATION_FOLDER/full/
374-
375-
376-
# Build - LITE version
377-
./configure --prefix=$PREFIX \
378-
$CROSS_COMPILE_FLAGS \
379-
--pkg-config=$(which pkg-config) \
380-
--pkg-config-flags="--static" \
381-
--enable-pic \
382-
--enable-small \
383-
--enable-gpl \
384-
\
385-
--disable-shared \
386-
--enable-static \
387-
\
388-
--enable-ffmpeg \
389-
--disable-ffplay \
390-
--disable-ffprobe \
391-
--disable-ffserver \
392-
\
393-
--disable-protocols \
394-
--enable-protocol='file,pipe' \
395-
\
396-
--disable-demuxers \
397-
--disable-muxers \
398-
--enable-demuxer='aac,avi,dnxhd,flac,flv,gif,h261,h263,h264,image2,matroska,webm,mov,mp3,mp4,mpeg,ogg,srt,wav,webvtt,gif,image2,image2pipe,mjpeg' \
399-
--enable-muxer='3gp,dnxhd,flac,flv,gif,image2,matroska,webm,mov,mp3,mp4,mpeg,ogg,opus,srt,wav,webvtt,ipod,gif,image2,image2pipe,mjpeg' \
400-
\
401-
--disable-encoders \
402-
--disable-decoders \
403-
--enable-encoder='aac,dnxhd,flac,flv,gif,libmp3lame,libopus,libshine,libvorbis,mpeg4,png,mjpeg,gif,srt,subrip,webvtt' \
404-
--enable-decoder='aac,aac_at,aac_fixed,aac_latm,dnxhd,flac,flv,h261,h263,h263i,h263p,h264,vp8,vp9,libopus,libvorbis,mp3,mpeg4,wavpack,png,mjpeg,gif,pcm_s16le,pcm_s16be,rawvideo,srt,webvtt' \
405-
\
406-
--enable-libshine \
407-
--enable-libmp3lame \
408-
--enable-libopus \
409-
--enable-libvorbis \
410-
--enable-bsf=aac_adtstoasc \
411-
\
412-
--disable-doc \
413-
$ADDITIONAL_CONFIGURE_FLAG
346+
if [ "$FLAVOR" = "full" ]; then
347+
# Build - FULL version
348+
./configure --prefix=$PREFIX \
349+
$CROSS_COMPILE_FLAGS \
350+
--pkg-config=$(which pkg-config) \
351+
--pkg-config-flags="--static" \
352+
--enable-pic \
353+
--enable-small \
354+
--enable-gpl \
355+
--enable-nonfree \
356+
\
357+
--disable-shared \
358+
--enable-static \
359+
\
360+
--enable-ffmpeg \
361+
--disable-ffplay \
362+
--disable-ffprobe \
363+
--disable-ffserver \
364+
\
365+
--enable-libshine \
366+
--enable-libmp3lame \
367+
--enable-libopus \
368+
--enable-libvorbis \
369+
--enable-libfdk-aac \
370+
--enable-bsf=aac_adtstoasc \
371+
--enable-openssl \
372+
\
373+
--disable-doc \
374+
$ADDITIONAL_CONFIGURE_FLAG
375+
else
376+
# Build - LITE version
377+
./configure --prefix=$PREFIX \
378+
$CROSS_COMPILE_FLAGS \
379+
--pkg-config=$(which pkg-config) \
380+
--pkg-config-flags="--static" \
381+
--enable-pic \
382+
--enable-small \
383+
--enable-gpl \
384+
\
385+
--disable-shared \
386+
--enable-static \
387+
\
388+
--enable-ffmpeg \
389+
--disable-ffplay \
390+
--disable-ffprobe \
391+
--disable-ffserver \
392+
\
393+
--disable-protocols \
394+
--enable-protocol='file,pipe' \
395+
\
396+
--disable-demuxers \
397+
--disable-muxers \
398+
--enable-demuxer='aac,avi,dnxhd,flac,flv,gif,h261,h263,h264,image2,matroska,webm,mov,mp3,mp4,mpeg,ogg,srt,wav,webvtt,gif,image2,image2pipe,mjpeg' \
399+
--enable-muxer='3gp,dnxhd,flac,flv,gif,image2,matroska,webm,mov,mp3,mp4,mpeg,ogg,opus,srt,wav,webvtt,ipod,gif,image2,image2pipe,mjpeg' \
400+
\
401+
--disable-encoders \
402+
--disable-decoders \
403+
--enable-encoder='aac,dnxhd,flac,flv,gif,libmp3lame,libopus,libshine,libvorbis,mpeg4,png,mjpeg,gif,srt,subrip,webvtt' \
404+
--enable-decoder='aac,aac_at,aac_fixed,aac_latm,dnxhd,flac,flv,h261,h263,h263i,h263p,h264,vp8,vp9,libopus,libvorbis,mp3,mpeg4,wavpack,png,mjpeg,gif,pcm_s16le,pcm_s16be,rawvideo,srt,webvtt' \
405+
\
406+
--enable-libshine \
407+
--enable-libmp3lame \
408+
--enable-libopus \
409+
--enable-libvorbis \
410+
--enable-bsf=aac_adtstoasc \
411+
\
412+
--disable-doc \
413+
$ADDITIONAL_CONFIGURE_FLAG
414+
fi;
414415

415416
make clean
416417
make -j8
417418
make install V=1
418419

419-
mkdir -p $DESTINATION_FOLDER/lite/
420-
cp $PREFIX/bin/ffmpeg $DESTINATION_FOLDER/lite/
420+
mkdir -p $DESTINATION_FOLDER/$FLAVOR/
421+
cp $PREFIX/bin/ffmpeg $DESTINATION_FOLDER/$FLAVOR/
421422

422423
popd
423424
}

0 commit comments

Comments
 (0)