pick: Update from 2.0.1 to 2.0.2
[termux-packages] / packages / mpv / build.sh
1 TERMUX_PKG_HOMEPAGE=https://mpv.io/
2 TERMUX_PKG_DESCRIPTION="Command-line media player"
3 TERMUX_PKG_VERSION=0.27.2
4 TERMUX_PKG_SHA256=2ad104d83fd3b2b9457716615acad57e479fd1537b8fc5e37bfe9065359b50be
5 TERMUX_PKG_SRCURL=https://github.com/mpv-player/mpv/archive/v${TERMUX_PKG_VERSION}.tar.gz
6 TERMUX_PKG_DEPENDS="ffmpeg, openal-soft, libandroid-glob"
7 TERMUX_PKG_RM_AFTER_INSTALL="share/icons share/applications"
8
9 termux_step_pre_configure() {
10 LDFLAGS+=" -landroid-glob"
11 }
12
13 termux_step_make_install () {
14 cd $TERMUX_PKG_SRCDIR
15
16 ./bootstrap.py
17
18 ./waf configure \
19 --prefix=$TERMUX_PREFIX \
20 --disable-gl \
21 --disable-jpeg \
22 --disable-lcms2 \
23 --disable-libass \
24 --disable-lua \
25 --disable-pulse \
26 --enable-openal \
27 --disable-caca \
28 --disable-alsa \
29 --disable-x11
30
31 ./waf install
32
33 # Use opensles audio out be default:
34 mkdir -p $TERMUX_PREFIX/etc/mpv
35 cp $TERMUX_PKG_BUILDER_DIR/mpv.conf $TERMUX_PREFIX/etc/mpv/mpv.conf
36
37 # Try to work around OpenSL ES library clashes:
38 # Linking against libOpenSLES causes indirect linkage against
39 # libskia.so, which links against the platform libjpeg.so and
40 # libpng.so, which are not compatible with the Termux ones.
41 #
42 # On Android N also liblzma seems to conflict.
43 mkdir -p $TERMUX_PREFIX/libexec
44 mv $TERMUX_PREFIX/bin/mpv $TERMUX_PREFIX/libexec
45
46 local SYSTEM_LIBFOLDER=lib64
47 if [ $TERMUX_ARCH_BITS = 32 ]; then SYSTEM_LIBFOLDER=lib; fi
48
49 echo "#!/bin/sh" > $TERMUX_PREFIX/bin/mpv
50
51 # Work around issues on devices having ffmpeg libraries
52 # in a system vendor dir, reported by live_the_dream on #termux:
53 local FFMPEG_LIBS="" lib
54 for lib in avcodec avfilter avformat avutil postproc swresample swscale; do
55 if [ -n "$FFMPEG_LIBS" ]; then FFMPEG_LIBS+=":"; fi
56 FFMPEG_LIBS+="$TERMUX_PREFIX/lib/lib${lib}.so"
57 done
58 echo "export LD_PRELOAD=$FFMPEG_LIBS" >> $TERMUX_PREFIX/bin/mpv
59
60 # /system/vendor/lib(64) needed for libqc-opt.so on
61 # a xperia z5 c, reported by BrainDamage on #termux:
62 echo "LD_LIBRARY_PATH=/system/$SYSTEM_LIBFOLDER:/system/vendor/$SYSTEM_LIBFOLDER:$TERMUX_PREFIX/lib $TERMUX_PREFIX/libexec/mpv \"\$@\"" >> $TERMUX_PREFIX/bin/mpv
63
64 chmod +x $TERMUX_PREFIX/bin/mpv
65 }