[pulseaudio-discuss] [PATCH] sample: Apply SPARC-specific condition on SPARC only

David Henningsson david.henningsson at canonical.com
Wed Jul 31 05:58:33 PDT 2013


On 07/30/2013 02:49 PM, Arun Raghavan wrote:
> On Tue, 2013-07-30 at 14:29 +0200, Peter Meerwald wrote:
>>
>>> Improves correctness, unbreaks software volume in recent Android.
>>> ---
>>>  src/pulse/sample.h | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/src/pulse/sample.h b/src/pulse/sample.h
>>> index 9eb4df0..34087e0 100644
>>> --- a/src/pulse/sample.h
>>> +++ b/src/pulse/sample.h
>>> @@ -120,7 +120,7 @@ PA_C_DECL_BEGIN
>>>  #endif
>>>  
>>>  /* On Sparc, WORDS_BIGENDIAN needs to be set if _BIG_ENDIAN is defined. */
>>> -#ifdef _BIG_ENDIAN
>>> +#if defined(__sparc__) && defined(_BIG_ENDIAN)
>>>  #define WORDS_BIGENDIAN
>>>  #endif
>>
>> this potentially breaks other big endian platforms? PPC/MIPS maybe?
> 
> Pretty sure it won't. That bit of code was added in 4.0 specifically to
> deal with Sparc.
> 
>> are there big-endian Android devices? who sets this? why?
> 
> There aren't, but they seem to be defining _BIG_ENDIAN in their headers
> for some reason.
> 

I tried to review this one, and came across this code:

http://devel.kamailio.org/sr-svn/trunk/test/endian_test.c

It looks like some headers define both _BIG_ENDIAN and _LITTLE_ENDIAN
(perhaps one is defined as "1" and the other as "0"?), so maybe a

#if defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN)

...could be an option here?

-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic


More information about the pulseaudio-discuss mailing list