libhdf5: limit to aarch64 for now
[termux-packages] / packages / ffmpeg / build.sh
1 TERMUX_PKG_HOMEPAGE=https://ffmpeg.org
2 TERMUX_PKG_DESCRIPTION="Tools and libraries to manipulate a wide range of multimedia formats and protocols"
3 # NOTE: mpv has to be rebuilt and version bumped after updating ffmpeg.
4 TERMUX_PKG_VERSION=3.4.2
5 TERMUX_PKG_SHA256=2b92e9578ef8b3e49eeab229e69305f5f4cbc1fdaa22e927fc7fca18acccd740
6 TERMUX_PKG_SRCURL=https://www.ffmpeg.org/releases/ffmpeg-${TERMUX_PKG_VERSION}.tar.xz
7 # libbz2 is used by matroska decoder:
8 # libvpx is the VP8 & VP9 video encoder for WebM, see
9 # https://trac.ffmpeg.org/wiki/Encode/VP8 and https://trac.ffmpeg.org/wiki/Encode/VP9
10 TERMUX_PKG_DEPENDS="libbz2, libsoxr, libx264, libx265, xvidcore, libvorbis, libmp3lame, libopus, libvpx, libgnutls, libandroid-glob"
11 TERMUX_PKG_INCLUDE_IN_DEVPACKAGE="share/ffmpeg/examples"
12 TERMUX_PKG_CONFLICTS="libav"
13
14 termux_step_configure () {
15 cd $TERMUX_PKG_BUILDDIR
16
17 export ASFLAGS="-no-integrated-as"
18
19 local _EXTRA_CONFIGURE_FLAGS=""
20 if [ $TERMUX_ARCH = "arm" ]; then
21 _ARCH="armeabi-v7a"
22 _EXTRA_CONFIGURE_FLAGS="--enable-neon"
23 elif [ $TERMUX_ARCH = "i686" ]; then
24 _ARCH="x86"
25 # Specify --disable-asm to prevent text relocations on i686,
26 # see https://trac.ffmpeg.org/ticket/4928
27 _EXTRA_CONFIGURE_FLAGS="--disable-asm"
28 elif [ $TERMUX_ARCH = "x86_64" ]; then
29 _ARCH="x86_64"
30 elif [ $TERMUX_ARCH = "aarch64" ]; then
31 _ARCH=$TERMUX_ARCH
32 _EXTRA_CONFIGURE_FLAGS="--enable-neon"
33 else
34 termux_error_exit "Unsupported arch: $TERMUX_ARCH"
35 fi
36
37 # --disable-lzma to avoid problem with shared library clashes, see
38 # https://github.com/termux/termux-packages/issues/511
39 # Only used for LZMA compression support for tiff decoder.
40 $TERMUX_PKG_SRCDIR/configure \
41 --arch=${_ARCH} \
42 --as=$AS \
43 --cc=$CC \
44 --cxx=$CXX \
45 --cross-prefix=${TERMUX_HOST_PLATFORM}- \
46 --disable-avdevice \
47 --disable-ffserver \
48 --disable-static \
49 --disable-symver \
50 --disable-lzma \
51 --enable-cross-compile \
52 --enable-gnutls \
53 --enable-gpl \
54 --enable-libmp3lame \
55 --enable-libvorbis \
56 --enable-libopus \
57 --enable-libx264 \
58 --enable-libx265 \
59 --enable-libxvid \
60 --enable-libvpx \
61 --enable-shared \
62 --enable-libsoxr \
63 --prefix=$TERMUX_PREFIX \
64 --target-os=android \
65 --extra-libs="-landroid-glob" \
66 $_EXTRA_CONFIGURE_FLAGS
67 }
68