diff options
author | Sumit Semwal <sumit.semwal@linaro.org> | 2019-05-08 21:59:00 +0530 |
---|---|---|
committer | Sumit Semwal <sumit.semwal@linaro.org> | 2019-05-10 11:19:41 +0530 |
commit | f5898aa62a3e836b01e1ed06b119005b7f404036 (patch) | |
tree | 7a8cc69aab5666048fb7e86fbb4ba8b1dcccceed | |
parent | f2c583eec3291a1d2b40dbecbe760aaeab10dc9a (diff) |
HACK: Provide dummy expat replacement for gen_decoder
As part of TREBLE, libexpat linking is prohibited; this patch
allows us to build mesa3d while enabling TREBLE.
It is a HACK, in that it doesn't provide replacement functionality
for gen_decoder, just empty dummies.
Change-Id: I6de9092b1a7618cc769a6ea92b5128ea645a3adc
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
-rw-r--r-- | src/intel/Android.common.mk | 8 | ||||
-rw-r--r-- | src/intel/common/gen_decoder.c | 79 |
2 files changed, 82 insertions, 5 deletions
diff --git a/src/intel/Android.common.mk b/src/intel/Android.common.mk index 79d9f1284a0..a6216d38829 100644 --- a/src/intel/Android.common.mk +++ b/src/intel/Android.common.mk @@ -40,11 +40,9 @@ LOCAL_C_INCLUDES := \ LOCAL_SHARED_LIBRARIES := libz liblog -# If Android version >=8 MESA should static link libexpat else should dynamic link -ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27; echo $$?), 0) -LOCAL_STATIC_LIBRARIES := \ - libexpat -else +# If Android version <8 MESA should dynamic link libexpat +# version >= 8 would use altxmlconfig instead +ifneq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27; echo $$?), 0) LOCAL_SHARED_LIBRARIES += \ libexpat endif diff --git a/src/intel/common/gen_decoder.c b/src/intel/common/gen_decoder.c index 50ef2c4204f..153ba9db858 100644 --- a/src/intel/common/gen_decoder.c +++ b/src/intel/common/gen_decoder.c @@ -26,7 +26,86 @@ #include <stdint.h> #include <stdarg.h> #include <string.h> + +#ifndef ANDROID #include <expat.h> +#else +#include <stdlib.h> +/* define dummy XML_Parser stuff + */ +#define XML_Parser char * +#define XML_Char char + +static XML_Parser temp; + +static XML_Parser * XML_ParserCreate(const XML_Char *encoding) { + return &temp; +} + +static unsigned long XML_GetCurrentLineNumber(XML_Parser parser) { + return 1; +} + +static unsigned long XML_GetCurrentColumnNumber(XML_Parser parser){ + return 1; +} + +static long XML_GetCurrentByteIndex(XML_Parser parser){ + return 1; +} + +static void XML_SetUserData(XML_Parser parser, void *userData){ + return; +} + +typedef void ( *XML_StartElementHandler) (void *userData, + const XML_Char *name, + const XML_Char **atts); + +typedef void ( *XML_EndElementHandler) (void *userData, + const XML_Char *name); + +typedef void ( *XML_CharacterDataHandler) (void *userData, + const XML_Char *s, + int len); +static void +XML_SetElementHandler(XML_Parser parser, + XML_StartElementHandler start, + XML_EndElementHandler end) { + return; +} + +static void +XML_SetCharacterDataHandler(XML_Parser parser, + XML_CharacterDataHandler handler) { + return; +} + +static void * +XML_GetBuffer(XML_Parser parser, int len) { + return NULL; +} + +static int XML_ParseBuffer(XML_Parser parser, int len, int isFinal) { + return 1; +} + +static XML_Char * error_str = "error"; +static const XML_Char * +XML_ErrorString(int code) { + return error_str; +} + +static void +XML_ParserFree(XML_Parser parser) { + return; +} + +static int XML_GetErrorCode(XML_Parser parser) { + return 1; +} +#endif // ANDROID + #include <inttypes.h> #include <zlib.h> |