[Mesa-dev] [PATCH] egl: fix android logger compilation

Tapani Pälli tapani.palli at intel.com
Fri May 12 06:15:47 UTC 2017



On 05/12/2017 09:13 AM, Chih-Wei Huang wrote:
> 2017-05-12 13:37 GMT+08:00 Tapani Pälli <tapani.palli at intel.com>:
>> this patch is a partial revert of 1ce5853 that break compilation
>> since LOG_ERROR etc are not defined and also macro expansion won't
>> work as planned (expands to 'ANDROID_egl2alog[level]')
>>
>> Fixes: 1ce5853 ("egl: simplify the Android logger")
>> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
>> ---
>>   src/egl/main/egllog.c | 21 ++++++++++++++-------
>>   1 file changed, 14 insertions(+), 7 deletions(-)
>>
>> diff --git a/src/egl/main/egllog.c b/src/egl/main/egllog.c
>> index 6de2a50..51ab76f 100644
>> --- a/src/egl/main/egllog.c
>> +++ b/src/egl/main/egllog.c
>> @@ -81,13 +81,20 @@ static void
>>   _eglDefaultLogger(EGLint level, const char *msg)
>>   {
>>   #ifdef HAVE_ANDROID_PLATFORM
>> -   static const int egl2alog[] = {
>> -      [_EGL_FATAL] = LOG_ERROR,
>> -      [_EGL_WARNING]  = LOG_WARN,
>> -      [_EGL_INFO] = LOG_INFO,
>> -      [_EGL_DEBUG] = LOG_DEBUG,
> 
> How about just change LOG_* to ANDROID_LOG_* ?
> You also need to include "android/log.h".
> 
> LOG_* are not real macros defined in Android headers.
> They are concatenated to ANDROID_LOG_*
> defined in android/log.h. (in system/core/include/)

problem is that ALOG stringifies (is that a word?) the first argument 
and concats that with 'ANDROID_', so currently you get 
'ANDROID_egl2alog[level]' which does not exist. With ANDROID applied, 
you would get 'ANDROID_ANDROID ..'


>> -   };
>> -   ALOG(egl2alog[level], LOG_TAG, "%s", msg);
>> +   switch (level) {
>> +   case _EGL_FATAL:
>> +      ALOGE("%s", msg);
>> +      break;
>> +   case _EGL_WARNING:
>> +      ALOGW("%s", msg);
>> +      break;
>> +   case _EGL_INFO:
>> +      ALOGI("%s", msg);
>> +      break;
>> +   case _EGL_DEBUG:
>> +      ALOGD("%s", msg);
>> +      break;
>> +   }
>>   #else
>>      fprintf(stderr, "libEGL %s: %s\n", level_strings[level], msg);
>>   #endif /* HAVE_ANDROID_PLATFORM */
>> --
> 
> 
> 


More information about the mesa-dev mailing list