| 1 | TERMUX_PKG_HOMEPAGE=https://www.freedesktop.org/wiki/Software/PulseAudio |
| 2 | TERMUX_PKG_DESCRIPTION="A featureful, general-purpose sound server - shared libraries" |
| 3 | TERMUX_PKG_VERSION=11.1 |
| 4 | TERMUX_PKG_REVISION=4 |
| 5 | TERMUX_PKG_SHA256=f2521c525a77166189e3cb9169f75c2ee2b82fa3fcf9476024fbc2c3a6c9cd9e |
| 6 | TERMUX_PKG_SRCURL=https://www.freedesktop.org/software/pulseaudio/releases/pulseaudio-${TERMUX_PKG_VERSION}.tar.xz |
| 7 | TERMUX_PKG_DEPENDS="libltdl, libsndfile, libandroid-glob, libsoxr" |
| 8 | TERMUX_PKG_BUILD_DEPENDS="libtool" |
| 9 | TERMUX_PKG_INCLUDE_IN_DEVPACKAGE="share/vala" |
| 10 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--disable-neon-opt |
| 11 | --disable-alsa |
| 12 | --disable-esound |
| 13 | --disable-glib2 |
| 14 | --disable-openssl |
| 15 | --without-caps |
| 16 | --with-database=simple |
| 17 | --disable-memfd |
| 18 | --bindir=$TERMUX_PREFIX/libexec" |
| 19 | TERMUX_PKG_CONFFILES="etc/pulse/client.conf etc/pulse/daemon.conf etc/pulse/default.pa etc/pulse/system.pa" |
| 20 | |
| 21 | termux_step_pre_configure () { |
| 22 | mkdir $TERMUX_PKG_SRCDIR/src/modules/sles |
| 23 | cp $TERMUX_PKG_BUILDER_DIR/module-sles-sink.c $TERMUX_PKG_SRCDIR/src/modules/sles |
| 24 | intltoolize --automake --copy --force |
| 25 | LDFLAGS+=" -llog -landroid-glob" |
| 26 | } |
| 27 | |
| 28 | termux_step_post_make_install () { |
| 29 | # Some binaries link against these: |
| 30 | cd $TERMUX_PREFIX/lib |
| 31 | for lib in pulseaudio/lib*.so* pulse-${TERMUX_PKG_VERSION}/modules/lib*.so*; do |
| 32 | ln -s -f $lib `basename $lib` |
| 33 | done |
| 34 | if [ $TERMUX_ARCH_BITS = "32" ]; then |
| 35 | SYSTEM_LIB=lib |
| 36 | else |
| 37 | SYSTEM_LIB=lib64 |
| 38 | fi |
| 39 | # Pulseaudio fails to start when it cannot detect any sound hardware |
| 40 | # so disable hardware detection. |
| 41 | sed -i $TERMUX_PREFIX/etc/pulse/default.pa \ |
| 42 | -e '/^load-module module-detect$/s/^/#/' |
| 43 | echo "load-module module-sles-sink" >> $TERMUX_PREFIX/etc/pulse/default.pa |
| 44 | cd $TERMUX_PREFIX/libexec |
| 45 | |
| 46 | for bin in esdcompat pacat pacmd pactl pasuspender pulseaudio; do |
| 47 | rm -f ../bin/$bin |
| 48 | local PA_LIBS="" lib |
| 49 | for lib in android-glob pulse pulsecommon-11.1 pulsecore-11.1; do |
| 50 | if [ -n "$PA_LIBS" ]; then PA_LIBS+=":"; fi |
| 51 | PA_LIBS+="$TERMUX_PREFIX/lib/lib${lib}.so" |
| 52 | done |
| 53 | echo "#!$TERMUX_PREFIX/bin/sh" >> $TERMUX_PREFIX/bin/$bin |
| 54 | echo "export LD_PRELOAD=$PA_LIBS" >> $TERMUX_PREFIX/bin/$bin |
| 55 | echo "LD_LIBRARY_PATH=/system/$SYSTEM_LIB:/system/vendor/$SYSTEM_LIB:$TERMUX_PREFIX/lib exec $TERMUX_PREFIX/libexec/$bin \$@" >> $TERMUX_PREFIX/bin/$bin |
| 56 | chmod +x $TERMUX_PREFIX/bin/$bin |
| 57 | done |
| 58 | } |