[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-glue.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-glue.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,7 +2,7 @@
<service name="tar_git">
<param name="url">https://github.com/mer-hybris/pulseaudio-modules-droid-glue.git</param>
<param name="branch">master</param>
- <param name="revision">443725b91e65fac99b6cf67ceba043810104e0bd</param>
+ <param name="revision">7495000dd3984b0d86c1f2030ecc50d71bc8ca1a</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/Makefile.am
^
|
@@ -1,10 +0,0 @@
-SUBDIRS = src
-
-ACLOCAL_AMFLAGS = -I m4
-
-$(top_srcdir)/.version:
- echo $(VERSION) > $@-t && mv $@-t $@
-
-dist-hook:
- echo $(VERSION) > $(distdir)/.tarball-version
- echo $(VERSION) > $(distdir)/.version
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/bootstrap.sh
^
|
@@ -1,14 +0,0 @@
-#!/bin/bash
-
-autoreconf -vfi
-
-if type -p colorgcc > /dev/null ; then
- export CC=colorgcc
-fi
-
-export CFLAGS=${CFLAGS-"-g -O0"}
-
-if test "x$NOCONFIGURE" = "x"; then
- ./configure --enable-maintainer-mode --disable-processing "$@"
- make clean
-fi
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/configure.ac
^
|
@@ -1,258 +0,0 @@
-AC_PREREQ(2.60)
-
-AC_INIT([pulseaudio-modules-glue], [m4_esyscmd(./git-version-gen .tarball-version)], [mer-general@lists.merproject.org])
-AC_CONFIG_HEADER([config.h])
-AM_INIT_AUTOMAKE([foreign -Wall silent-rules])
-AC_CONFIG_MACRO_DIR(m4)
-AM_SILENT_RULES([yes])
-
-AS_IF([! test -n "$VERSION"], [
- AC_MSG_ERROR([git-version-gen failed])
-])
-
-if type -p stow > /dev/null && test -d /usr/local/stow ; then
- AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
- ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
-fi
-
-AC_PROG_CC
-AC_PROG_CC_C99
-AM_PROG_CC_C_O
-AC_PROG_GCC_TRADITIONAL
-
-m4_define(pa_major, `echo $VERSION | cut -d. -f1 | cut -d- -f1`)
-m4_define(pa_minor, `echo $VERSION | cut -d. -f2 | cut -d- -f1`)
-
-AC_SUBST(PA_MAJOR, pa_major)
-AC_SUBST(PA_MAJORMINOR, pa_major.pa_minor)
-
-DESIRED_FLAGS="-Wall -W -Wextra -pedantic -pipe -Wno-long-long -Winline -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wpacked -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wstrict-aliasing=2 -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option" # PulseAudio 0.9.15 usess same + -Wcast-align -Wdeclaration-after-statement
-
-for flag in $DESIRED_FLAGS ; do
- CC_CHECK_CFLAGS([$flag], [CFLAGS="$CFLAGS $flag"])
-done
-
-# FIXME: we should push that as .m4 macro installed by pulseaudio-dev package
-# Native atomic operation support
-AC_ARG_ENABLE([atomic-arm-linux-helpers],
- AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]),
- [
- case "${enableval}" in
- yes) atomic_arm_linux_helpers=yes ;;
- no) atomic_arm_linux_helpers=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
- esac
- ],
- [atomic_arm_linux_helpers=auto])
-
-AC_ARG_ENABLE([atomic-arm-memory-barrier],
- AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]),
- [
- case "${enableval}" in
- yes) AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers]) ;;
- no) ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
- esac
- ],)
-
-AC_CANONICAL_HOST
-AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
-
-AC_MSG_CHECKING([target operating system])
-
-case $host in
- *-*-linux*)
- AC_MSG_RESULT([linux])
- pulse_target_os=linux
- ;;
- *)
- AC_MSG_RESULT([unknown])
- pulse_target_os=unknown
- ;;
-esac
-
-# If everything else fails use libatomic_ops
-need_libatomic_ops=yes
-
-AC_MSG_CHECKING([whether $CC knows __sync_bool_compare_and_swap()])
-AC_LANG_CONFTEST([int main() { int a = 4; __sync_bool_compare_and_swap(&a, 4, 5); }])
-$CC conftest.c $CFLAGS -o conftest > /dev/null 2> /dev/null
-ret=$?
-rm -f conftest.o conftest
-if test $ret -eq 0 ; then
- AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
- AC_MSG_RESULT([yes])
- need_libatomic_ops=no
-else
- AC_MSG_RESULT([no])
- # HW specific atomic ops stuff
- AC_MSG_CHECKING([architecture for native atomic operations])
- case $host_cpu in
- arm*)
- AC_MSG_RESULT([arm])
- AC_MSG_CHECKING([compiler support for arm inline asm atomic operations])
- AC_LANG_CONFTEST([[int main()
- {
- volatile int a=0;
- int o=0, n=1, r;
- asm volatile ("ldrex %0, [%1]\n"
- "subs %0, %0, %2\n"
- "strexeq %0, %3, [%1]\n"
- : "=&r" (r)
- : "r" (&a), "Ir" (o), "r" (n)
- : "cc");
- return (a==1 ? 0 : -1);
- }]])
- $CC conftest.c $CFLAGS -o conftest > /dev/null 2>&1
- ret=$?
- rm -f conftest.o conftest
- if test $ret -eq 0 ; then
- AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARMv6 instructions.])
- AC_MSG_RESULT([yes])
- need_libatomic_ops=no
- else
- # We really want inline asm atomic operations!!
- echo "ERROR No ARMv6 instructions available check your compiler!!!"
- exit 1
-
- AC_MSG_CHECKING([whether we can use Linux kernel helpers])
- # The Linux kernel helper functions have been there since 2.6.16. However
- # compile time checking for kernel version in cross compile environment
- # (which is usually the case for arm cpu) is tricky (or impossible).
- if test "x$pulse_target_os" = "xlinux" && test "x$atomic_arm_linux_helpers" != "xno"; then
- AC_MSG_RESULT([yes])
- AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
- need_libatomic_ops=no
- else
- AC_MSG_RESULT([no])
- fi
- fi
- ;;
- *)
- AC_MSG_RESULT([unknown])
- ;;
- esac
-fi
-
-AC_MSG_CHECKING([whether we need libatomic_ops])
-if test "x$need_libatomic_ops" = "xyes"; then
- AC_MSG_RESULT([yes])
- AC_CHECK_HEADERS([atomic_ops.h], [], [
- AC_MSG_ERROR([*** libatomic-ops headers not found])
- ])
-
- # Win32 does not need the lib and breaks horribly if we try to include it
- if test "x$os_is_win32" != "x1" ; then
- LIBS="$LIBS -latomic_ops"
- fi
-else
- AC_MSG_RESULT([no])
-fi
-
-CC_CHECK_TLS
-
-AC_CACHE_CHECK([whether $CC knows _Bool],
- pulseaudio_cv__Bool,
- [AC_COMPILE_IFELSE(
- AC_LANG_PROGRAM([], [[_Bool b;]]),
- [pulseaudio_cv__Bool=yes],
- [pulseaudio_cv__Bool=no])
- ])
-
-AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
- AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.])
- ])
-
-#### libtool stuff (FIXME: when sbox will have 2.2 )####
-#LT_PREREQ(2.2)
-#LT_INIT([dlopen win32-dll disable-static])
-AC_PROG_LIBTOOL
-
-PKG_CHECK_MODULES([PULSEAUDIO], [libpulse >= 5.0 pulsecore >= 5.0])
-AC_SUBST(PULSEAUDIO_CFLAGS)
-AC_SUBST(PULSEAUDIO_LIBS)
-
-PKG_CHECK_MODULES([DROIDHEADERS], [android-headers])
-AC_SUBST(DROIDHEADERS_CFLAGS)
-
-PKG_CHECK_MODULES([HYBRIS], [libhardware >= 0.1.0])
-AC_SUBST(HYBRIS_CFLAGS)
-AC_SUBST(HYBRIS_LIBS)
-
-PKG_CHECK_MODULES([DROIDUTIL], [libdroid-util >= 63])
-AC_SUBST(DROIDUTIL_CFLAGS)
-AC_SUBST(DROIDUTIL_LIBS)
-
-AC_CHECK_HEADERS([audioflingerglue/audioflingerglue.h],
- [],
- [AC_MSG_ERROR([Could not find or include audioflingerglue.h])])
-
-AC_ARG_WITH(
- [module-dir],
- AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINOR}/modules]),
- [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINOR}/modules"])
-
-AC_SUBST(modlibexecdir)
-
-audioflingergluename="libaudioflingerglue.so"
-AC_ARG_WITH([audioflingerglue-name],
- AS_HELP_STRING([--with-audioflingerglue-name], [Audioglingerglue library name (default libaudioflingerglue.so)]),
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/m4/.gitignore
^
|
@@ -1,5 +0,0 @@
-libtool.m4
-ltoptions.m4
-ltsugar.m4
-ltversion.m4
-lt~obsolete.m4
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/m4/attributes.m4
^
|
@@ -1,258 +0,0 @@
-dnl Macros to check the presence of generic (non-typed) symbols.
-dnl Copyright (c) 2006-2007 Diego Pettenò <flameeyes@gmail.com>
-dnl Copyright (c) 2006-2007 xine project
-dnl
-dnl This program is free software; you can redistribute it and/or modify
-dnl it under the terms of the GNU General Public License as published by
-dnl the Free Software Foundation; either version 2, or (at your option)
-dnl any later version.
-dnl
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-dnl GNU General Public License for more details.
-dnl
-dnl You should have received a copy of the GNU General Public License
-dnl along with this program; if not, write to the Free Software
-dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-dnl 02110-1301, USA.
-dnl
-dnl As a special exception, the copyright owners of the
-dnl macro gives unlimited permission to copy, distribute and modify the
-dnl configure scripts that are the output of Autoconf when processing the
-dnl Macro. You need not follow the terms of the GNU General Public
-dnl License when using or distributing such scripts, even though portions
-dnl of the text of the Macro appear in them. The GNU General Public
-dnl License (GPL) does govern all other use of the material that
-dnl constitutes the Autoconf Macro.
-dnl
-dnl This special exception to the GPL applies to versions of the
-dnl Autoconf Macro released by this project. When you make and
-dnl distribute a modified version of the Autoconf Macro, you may extend
-dnl this special exception to the GPL to apply to your modified version as
-dnl well.
-
-AC_DEFUN([CC_CHECK_CFLAGS_SILENT], [
- AC_CACHE_VAL(AS_TR_SH([cc_cv_cflags_$1]),
- [ac_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $1"
- AC_COMPILE_IFELSE([int a;],
- [eval "AS_TR_SH([cc_cv_cflags_$1])='yes'"],
- [eval "AS_TR_SH([cc_cv_cflags_$1])='no'"])
- CFLAGS="$ac_save_CFLAGS"
- ])
-
- AS_IF([eval test x$]AS_TR_SH([cc_cv_cflags_$1])[ = xyes],
- [$2], [$3])
-])
-
-AC_DEFUN([CC_CHECK_CFLAGS], [
- AC_CACHE_CHECK([if $CC supports $1 flag],
- AS_TR_SH([cc_cv_cflags_$1]),
- CC_CHECK_CFLAGS_SILENT([$1]) dnl Don't execute actions here!
- )
-
- AS_IF([eval test x$]AS_TR_SH([cc_cv_cflags_$1])[ = xyes],
- [$2], [$3])
-])
-
-AC_DEFUN([CC_CHECK_LDFLAGS], [
- AC_CACHE_CHECK([if $CC supports $1 flag],
- AS_TR_SH([cc_cv_ldflags_$1]),
- [ac_save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $1"
- AC_LINK_IFELSE([int main() { return 1; }],
- [eval "AS_TR_SH([cc_cv_ldflags_$1])='yes'"],
- [eval "AS_TR_SH([cc_cv_ldflags_$1])="])
- LDFLAGS="$ac_save_LDFLAGS"
- ])
-
- AS_IF([eval test x$]AS_TR_SH([cc_cv_ldflags_$1])[ = xyes],
- [$2], [$3])
-])
-
-dnl Check for a -Werror flag or equivalent. -Werror is the GCC
-dnl and ICC flag that tells the compiler to treat all the warnings
-dnl as fatal. We usually need this option to make sure that some
-dnl constructs (like attributes) are not simply ignored.
-dnl
-dnl Other compilers don't support -Werror per se, but they support
-dnl an equivalent flag:
-dnl - Sun Studio compiler supports -errwarn=%all
-AC_DEFUN([CC_CHECK_WERROR], [
- AC_CACHE_CHECK(
- [for $CC way to treat warnings as errors],
- [cc_cv_werror],
- [CC_CHECK_CFLAGS_SILENT([-Werror], [cc_cv_werror=-Werror],
- [CC_CHECK_CFLAGS_SILENT([-errwarn=%all], [cc_cv_werror=-errwarn=%all])])
- ])
-])
-
-AC_DEFUN([CC_CHECK_ATTRIBUTE], [
- AC_REQUIRE([CC_CHECK_WERROR])
- AC_CACHE_CHECK([if $CC supports __attribute__(( ifelse([$2], , [$1], [$2]) ))],
- AS_TR_SH([cc_cv_attribute_$1]),
- [ac_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS $cc_cv_werror"
- AC_COMPILE_IFELSE([$3],
- [eval "AS_TR_SH([cc_cv_attribute_$1])='yes'"],
- [eval "AS_TR_SH([cc_cv_attribute_$1])='no'"])
- CFLAGS="$ac_save_CFLAGS"
- ])
-
- AS_IF([eval test x$]AS_TR_SH([cc_cv_attribute_$1])[ = xyes],
- [AC_DEFINE(
- AS_TR_CPP([SUPPORT_ATTRIBUTE_$1]), 1,
- [Define this if the compiler supports __attribute__(( ifelse([$2], , [$1], [$2]) ))]
- )
- $4],
- [$5])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_CONSTRUCTOR], [
- CC_CHECK_ATTRIBUTE(
- [constructor],,
- [void __attribute__((constructor)) ctor() { int a; }],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_FORMAT], [
- CC_CHECK_ATTRIBUTE(
- [format], [format(printf, n, n)],
- [void __attribute__((format(printf, 1, 2))) printflike(const char *fmt, ...) { fmt = (void *)0; }],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_FORMAT_ARG], [
- CC_CHECK_ATTRIBUTE(
- [format_arg], [format_arg(printf)],
- [char *__attribute__((format_arg(1))) gettextlike(const char *fmt) { fmt = (void *)0; }],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_VISIBILITY], [
- CC_CHECK_ATTRIBUTE(
- [visibility_$1], [visibility("$1")],
- [void __attribute__((visibility("$1"))) $1_function() { }],
- [$2], [$3])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_NONNULL], [
- CC_CHECK_ATTRIBUTE(
- [nonnull], [nonnull()],
- [void __attribute__((nonnull())) some_function(void *foo, void *bar) { foo = (void*)0; bar = (void*)0; }],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_UNUSED], [
- CC_CHECK_ATTRIBUTE(
- [unused], ,
- [void some_function(void *foo, __attribute__((unused)) void *bar);],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_SENTINEL], [
- CC_CHECK_ATTRIBUTE(
- [sentinel], ,
- [void some_function(void *foo, ...) __attribute__((sentinel));],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_DEPRECATED], [
- CC_CHECK_ATTRIBUTE(
- [deprecated], ,
- [void some_function(void *foo, ...) __attribute__((deprecated));],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_ALIAS], [
- CC_CHECK_ATTRIBUTE(
- [alias], [weak, alias],
- [void other_function(void *foo) { }
- void some_function(void *foo) __attribute__((weak, alias("other_function")));],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_MALLOC], [
- CC_CHECK_ATTRIBUTE(
- [malloc], ,
- [void * __attribute__((malloc)) my_alloc(int n);],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_PACKED], [
- CC_CHECK_ATTRIBUTE(
- [packed], ,
- [struct astructure { char a; int b; long c; void *d; } __attribute__((packed));],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_ATTRIBUTE_CONST], [
- CC_CHECK_ATTRIBUTE(
- [const], ,
- [int __attribute__((const)) twopow(int n) { return 1 << n; } ],
- [$1], [$2])
-])
-
-AC_DEFUN([CC_FLAG_VISIBILITY], [
- AC_REQUIRE([CC_CHECK_WERROR])
- AC_CACHE_CHECK([if $CC supports -fvisibility=hidden],
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/m4/tls.m4
^
|
@@ -1,17 +0,0 @@
-AC_DEFUN([CC_CHECK_TLS], [
- AC_CACHE_CHECK([whether $CC knows __thread for Thread-Local Storage],
- cc_cv_tls___thread,
- [AC_COMPILE_IFELSE(
- AC_LANG_PROGRAM(
- [[static __thread int a = 6;]],
- [[a = 5;]]),
- [cc_cv_tls___thread=yes],
- [cc_cv_tls___thread=no])
- ])
-
- AS_IF([test "x$cc_cv_tls___thread" = "xyes"],
- [AC_DEFINE([SUPPORT_TLS___THREAD], 1,
- [Define this if the compiler supports __thread for Thread-Local Storage])
- $1],
- [$2])
-])
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/src/Makefile.am
^
|
@@ -1 +0,0 @@
-SUBDIRS = glue
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/src/glue/Makefile.am
^
|
@@ -1,23 +0,0 @@
-AM_LIBADD = \
- $(PULSEAUDIO_LIBS) \
- $(HYBRIS_LIBS) \
- $(DROIDUTIL_LIBS)
-AM_CFLAGS = \
- $(DROID_DEVICE_CFLAGS) \
- $(PULSEAUDIO_CFLAGS) \
- $(DROIDHEADERS_CFLAGS) \
- $(HYBRIS_CFLAGS) \
- $(LIB_AF_CFLAGS) \
- $(DROIDUTIL_CFLAGS) \
- -DPULSEAUDIO_VERSION=@PA_MAJOR@ \
- -I$(top_srcdir)/src/glue
-
-
-modlibexec_LTLIBRARIES = module-droid-glue.la
-
-noinst_HEADERS = module-droid-glue-symdef.h
-
-module_droid_glue_la_SOURCES = /usr/share/audioflingerglue/hybris.c module-droid-glue.c
-module_droid_glue_la_LDFLAGS = -module -avoid-version -Wl,-no-undefined -Wl,-z,noexecstack -lhybris-common
-module_droid_glue_la_LIBADD = $(AM_LIBADD) -lm
-module_droid_glue_la_CFLAGS = $(AM_CFLAGS) -I/usr/include/audioflingerglue
|
[-]
[+]
|
Deleted |
_service:tar_git:pulseaudio-modules-droid-glue-12.2.4.tar.bz2/src/glue/module-droid-glue-symdef.h
^
|
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2015 Jolla Ltd.
- *
- * Contact: Juho Hämäläinen <juho.hamalainen@jolla.com>
- *
- * These PulseAudio Modules are free software; you can redistribute
- * it and/or modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation
- * version 2.1 of the License.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
- * USA.
- */
-#ifndef foomoduledroidgluesymdeffoo
-#define foomoduledroidgluesymdeffoo
-
-#include <pulsecore/core.h>
-#include <pulsecore/module.h>
-
-#define pa__init module_droid_glue_LTX_pa__init
-#define pa__done module_droid_glue_LTX_pa__done
-#define pa__get_author module_droid_glue_LTX_pa__get_author
-#define pa__get_description module_droid_glue_LTX_pa__get_description
-#define pa__get_usage module_droid_glue_LTX_pa__get_usage
-#define pa__get_version module_droid_glue_LTX_pa__get_version
-
-int pa__init(struct pa_module*m);
-void pa__done(struct pa_module*m);
-
-const char* pa__get_author(void);
-const char* pa__get_description(void);
-const char* pa__get_usage(void);
-const char* pa__get_version(void);
-
-#endif
|
[-]
[+]
|
Added |
_service:tar_git:pulseaudio-modules-droid-glue-14.2.8.tar.bz2/meson.build
^
|
@@ -0,0 +1,137 @@
+project('pulseaudio-module-hidl', 'c',
+ version : run_command(find_program('git-version-gen'), join_paths(meson.current_source_dir(), '.tarball-version'), check: true).stdout().strip(),
+ meson_version : '>= 0.50.0',
+ default_options : [ 'c_std=gnu11' ]
+ )
+
+cc = meson.get_compiler('c')
+
+configinc = include_directories('.')
+
+pa_c_args = ['-DHAVE_CONFIG_H']
+
+droiddevice = get_option('droid-device')
+pa_c_args += ['-DDROID_DEVICE_@0@=1'.format(droiddevice.underscorify().to_upper())]
+pa_c_args += ['-DDROID_DEVICE_STRING="@0@"'.format(droiddevice)]
+pa_c_args += ['-DLIB_AF_NAME="@0@"'.format(get_option('audioflingerglue-name'))]
+pa_c_args += ['-DLIB_AF_BASE_PATH="@0@"'.format(get_option('audioflingerglue-base'))]
+
+
+# dependencies
+droid_headers_dep = dependency('android-headers', required : true)
+hybris_dep = dependency('libhardware', version : '>= 0.1.0', required : true)
+hybris_common_dep = cc.find_library('hybris-common', required : true)
+pulsecore_dep = dependency('pulsecore', version : '>= 14.2', required : true)
+
+pa_version_str = pulsecore_dep.version()
+# For tarballs, the first split will do nothing, but for builds in git, we
+# split out suffixes when there are commits since the last tag
+# (e.g.: v11.99.1-3-gad14bdb24 -> v11.99.1)
+version_split = pa_version_str.split('-')[0].split('.')
+pa_version_major = version_split[0].split('v')[0]
+pa_version_minor = version_split[1]
+pa_version_major_minor = pa_version_major + '.' + pa_version_minor
+
+modlibexecdir = get_option('modlibexecdir')
+if modlibexecdir == ''
+ modlibexecdir = join_paths(get_option('libdir'), 'pulse-' + pa_version_major_minor, 'modules')
+endif
+
+cdata = configuration_data()
+cdata.set_quoted('PACKAGE', meson.project_name())
+cdata.set_quoted('PACKAGE_NAME', meson.project_name())
+cdata.set_quoted('PACKAGE_VERSION', pa_version_str)
+cdata.set_quoted('VERSION', pa_version_str)
+
+# Atomic operations
+
+if get_option('atomic-arm-memory-barrier')
+ cdata.set('ATOMIC_ARM_MEMORY_BARRIER_ENABLED', 1)
+endif
+
+need_libatomic_ops = false
+
+atomictest = '''void func() {
+ volatile int atomic = 2;
+ __sync_bool_compare_and_swap (&atomic, 2, 3);
+}
+'''
+
+if cc.compiles(atomictest)
+ cdata.set('HAVE_ATOMIC_BUILTINS', 1)
+
+ newatomictest = '''void func() {
+ int c = 0;
+ __atomic_store_n(&c, 4, __ATOMIC_SEQ_CST);
+ }
+ '''
+
+ if cc.compiles(newatomictest)
+ cdata.set('HAVE_ATOMIC_BUILTINS_MEMORY_MODEL', 1)
+ endif
+
+elif host_machine.cpu_family() == 'arm'
+ if host_machine.system() == 'linux' and get_option('atomic-arm-linux-helpers')
+ cdata.set('ATOMIC_ARM_LINUX_HELPERS', 1)
+ else
+ armatomictest = '''int func() {
+ volatile int a=0;
+ int o=0, n=1, r;
+ asm volatile (
+ "ldrex %0, [%1]\n"
+ "subs %0, %0, %2\n"
+ "strexeq %0, %3, [%1]\n"
+ : "=&r" (r)
+ : "r" (&a), "Ir" (o), "r" (n)
+ : "cc");
+ return (a==1 ? 0 : -1);
+ }
+ '''
+
+ if cc.compiles(armatomictest)
+ cdata.set('ATOMIC_ARM_INLINE_ASM', 1)
+ else
+ need_libatomic_ops = true
+ endif
+ endif # arm && !linux
+
+elif not ['freebsd', 'netbsd'].contains(host_machine.system())
+ need_libatomic_ops = true
+endif # !atomic helpers && !arm
+
+if need_libatomic_ops
+ cc.has_header('atomic_ops.h', required: true)
+
+ cdata.set('AO_REQUIRE_CAS', 1)
+
+ if host_machine.system() != 'windows'
+ libatomic_ops_dep = cc.find_library('atomic_ops', required : true)
+ else
+ libatomic_ops_dep = dependency('', required: false)
+ endif
+else
+ libatomic_ops_dep = dependency('', required: false)
+endif
+
+# Headers
+
+# Require audioflingerglue.h
+
+cc.has_header('audioflingerglue/audioflingerglue.h', required : true)
+
+check_headers = [
+ 'valgrind/memcheck.h',
+]
+
+foreach h : check_headers
+ if cc.has_header(h)
+ define = 'HAVE_' + h.underscorify().to_upper()
+ cdata.set(define, 1)
+ endif
+endforeach
+
+subdir('src')
+
+# Now generate config.h from everything above
+configure_file(output : 'config.h', configuration : cdata)
+
|
[-]
[+]
|
Added |
_service:tar_git:pulseaudio-modules-droid-glue-14.2.8.tar.bz2/meson_options.txt
^
|
@@ -0,0 +1,21 @@
+option('atomic-arm-linux-helpers',
+ type : 'boolean', value : true,
+ description : 'Use inline asm or libatomic_ops instead')
+option('atomic-arm-memory-barrier',
+ type : 'boolean', value : false,
+ description : 'Enable memory barriers (only really needed in SMP arm systems)')
+option('audioflingerglue-base',
+ type : 'string',
+ value : '/usr/libexec/droid-hybris/system',
+ description : 'Audioglingerglue library base path (default /usr/libexec/droid-hybris/system)')
+option('audioflingerglue-name',
+ type : 'string',
+ value : 'libaudioflingerglue.so',
+ description : 'Audioglingerglue library name (default libaudioflingerglue.so)')
+option('droid-device',
+ type : 'string',
+ value : 'generic',
+ description : 'Droid device type for possible specific quirks (defaults to generic).')
+option('modlibexecdir',
+ type : 'string',
+ description : 'Specify location where modules will be installed')
|
[-]
[+]
|
Added |
_service:tar_git:pulseaudio-modules-droid-glue-14.2.8.tar.bz2/src/glue/meson.build
^
|
@@ -0,0 +1,14 @@
+module_droid_glue = shared_module('module-droid-glue',
+ ['module-droid-glue.c', '/usr/share/audioflingerglue/hybris.c'],
+ include_directories : [configinc],
+ c_args : [pa_c_args, '-I/usr/include/audioflingerglue', '-DPA_MODULE_NAME=module_droid_glue'],
+ install : true,
+ install_dir : modlibexecdir,
+ dependencies : [
+ droid_headers_dep,
+ hybris_dep,
+ hybris_common_dep,
+ pulsecore_dep
+ ],
+ name_prefix : ''
+)
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-glue-14.2.8.tar.bz2/src/glue/module-droid-glue.c
^
|
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2015 Jolla Ltd.
+ * Copyright (C) 2015-2022 Jolla Ltd.
*
* Contact: Juho Hämäläinen <juho.hamalainen@jolla.com>
*
@@ -41,10 +41,7 @@
#include <pulsecore/modargs.h>
#include <pulsecore/log.h>
#include <pulsecore/macro.h>
-
-#include <droid/droid-util.h>
-
-#include "module-droid-glue-symdef.h"
+#include <pulsecore/shared.h>
#include <hybris/common/binding.h>
#include <audioflingerglue.h>
@@ -53,7 +50,7 @@
PA_MODULE_DESCRIPTION("Droid AudioFlinger Glue");
PA_MODULE_VERSION(PACKAGE_VERSION);
PA_MODULE_USAGE(
- "module_id=<which droid hw module to load, default primary> "
+ "module_id=<unused> "
"lib=<absolute path to audioflingerglue library. if not defined try to autodetect>"
);
@@ -72,7 +69,9 @@
NULL
};
-#define DEFAULT_MODULE_ID "primary"
+#define DROID_HW_HANDLE "droid.handle.v1"
+#define DROID_SET_PARAMETERS "droid.set_parameters.v1"
+#define DROID_GET_PARAMETERS "droid.get_parameters.v1"
static void *audioflingerglue_handle;
@@ -80,8 +79,10 @@
pa_core *core;
pa_module *module;
- pa_droid_hw_module *hw_module;
DroidAfGlue *glue;
+ void *hw_handle;
+ int (*set_parameters)(void *handle, const char *key_value_pairs);
+ char* (*get_parameters)(void *handle, const char *keys);
};
static int set_parameters_cb(const char *key_value_pairs, void *userdata) {
@@ -92,9 +93,7 @@
pa_log_debug("Glue set_parameters(\"%s\")", key_value_pairs);
- pa_droid_hw_module_lock(u->hw_module);
- ret = u->hw_module->device->set_parameters(u->hw_module->device, key_value_pairs);
- pa_droid_hw_module_unlock(u->hw_module);
+ ret = u->set_parameters(u->hw_handle, key_value_pairs);
if (ret != 0)
pa_log_warn("Glue set_parameters(\"%s\") failed: %d", key_value_pairs, ret);
@@ -107,9 +106,7 @@
pa_assert_se((u = userdata));
- pa_droid_hw_module_lock(u->hw_module);
- *reply = u->hw_module->device->get_parameters(u->hw_module->device, keys);
- pa_droid_hw_module_unlock(u->hw_module);
+ *reply = u->get_parameters(u->hw_handle, keys);
pa_log_debug("Glue get_parameters(\"%s\"): \"%s\"", keys, *reply ? *reply : "<null>");
@@ -142,7 +139,6 @@
int pa__init(pa_module *m) {
pa_modargs *ma = NULL;
- const char *module_id;
const char *lib_path;
DroidAfGlueCallbacks cb;
@@ -175,10 +171,10 @@
u->core = m->core;
m->userdata = u;
- module_id = pa_modargs_get_value(ma, "module_id", DEFAULT_MODULE_ID);
-
- if (!(u->hw_module = pa_droid_hw_module_get(u->core, NULL, module_id))) {
- pa_log("Couldn't get hw module %s, is module-droid-card loaded?", module_id);
+ if (!(u->hw_handle = pa_shared_get(u->core, DROID_HW_HANDLE)) ||
+ !(u->set_parameters = pa_shared_get(u->core, DROID_SET_PARAMETERS)) ||
+ !(u->get_parameters = pa_shared_get(u->core, DROID_GET_PARAMETERS))) {
+ pa_log("Couldn't get hw module functions, is module-droid-card loaded?");
goto fail;
}
@@ -213,9 +209,6 @@
if (u->glue)
droid_afglue_disconnect(u->glue);
- if (u->hw_module)
- pa_droid_hw_module_unref(u->hw_module);
-
pa_xfree(u);
}
}
|
[-]
[+]
|
Added |
_service:tar_git:pulseaudio-modules-droid-glue-14.2.8.tar.bz2/src/meson.build
^
|
@@ -0,0 +1 @@
+subdir('glue')
|