From 02b34d1e71ccadfa97fa5412e635b41142c5bd20 Mon Sep 17 00:00:00 2001 From: Tobias Jahnke Date: Thu, 12 Sep 2019 10:23:09 +0200 Subject: unicens: support reproducible build Changed usage of __FILE__ macro to not print absolut paths in warning and error messages Bug-AGL: SPEC-2802 Signed-off-by: Tobias Jahnke Change-Id: I3755e96cb23f8c782ea00f4b4fdc7df7d08972d7 --- ucs2-afb/ucs_binding.c | 3 ++- ucs2-interface/ucs-xml/UcsXml.c | 4 ++-- ucs2-interface/ucs-xml/UcsXml_Private.c | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ucs2-afb/ucs_binding.c b/ucs2-afb/ucs_binding.c index 81ca3bb..777b967 100644 --- a/ucs2-afb/ucs_binding.c +++ b/ucs2-afb/ucs_binding.c @@ -81,10 +81,11 @@ static EventDataRx_t *eventDataRx = NULL; PUBLIC void UcsXml_CB_OnError(const char format[], uint16_t vargsCnt, ...) { /*AFB_API_DEBUG (afbBindingRoot, afbIface, format, args); */ + /*you may activite logging to stdout here va_list args; va_start (args, vargsCnt); vfprintf (stderr, format, args); - va_end(args); + va_end(args);*/ va_list argptr; char outbuf[300]; diff --git a/ucs2-interface/ucs-xml/UcsXml.c b/ucs2-interface/ucs-xml/UcsXml.c index 7715cd4..5c8c346 100644 --- a/ucs2-interface/ucs-xml/UcsXml.c +++ b/ucs2-interface/ucs-xml/UcsXml.c @@ -39,7 +39,8 @@ /************************************************************************/ #define COMPILETIME_CHECK(cond) (void)sizeof(int[2 * !!(cond) - 1]) -#define RETURN_ASSERT(result) { UcsXml_CB_OnError("Assertion in file=%s, line=%d", 2, __FILE__, __LINE__); return result; } +#define __FILENAME__ (__builtin_strrchr(__FILE__, '/') ? __builtin_strrchr(__FILE__, '/') + 1 : __FILE__) +#define RETURN_ASSERT(result) { UcsXml_CB_OnError("Assertion in file=%s, line=%d", 2, __FILENAME__, __LINE__); return result; } #define MISC_HB(value) ((uint8_t)((uint16_t)(value) >> 8)) #define MISC_LB(value) ((uint8_t)((uint16_t)(value) & (uint16_t)0xFF)) #define ROUTE_AUTO_ID_START (0x8000) @@ -1636,4 +1637,3 @@ static bool IsAutoRouteId(uint16_t id, PrivateData_t *priv) assert(NULL != priv); return (id >= ROUTE_AUTO_ID_START && id <= priv->autoRouteId); } - diff --git a/ucs2-interface/ucs-xml/UcsXml_Private.c b/ucs2-interface/ucs-xml/UcsXml_Private.c index 4fb4e0c..a1ef86c 100644 --- a/ucs2-interface/ucs-xml/UcsXml_Private.c +++ b/ucs2-interface/ucs-xml/UcsXml_Private.c @@ -66,7 +66,8 @@ static const char* I2S_PIN_SRXB1 = "SRXB1"; static const char* MUTE_OFF = "NoMuting"; static const char* MUTE_SIGNAL = "MuteSignal"; -#define ASSERT_FALSE(func, par) { UcsXml_CB_OnError("Parameter error in attribute=%s value=%s, file=%s, line=%d", 4, func, par, __FILE__, __LINE__); return false; } +#define __FILENAME__ (__builtin_strrchr(__FILE__, '/') ? __builtin_strrchr(__FILE__, '/') + 1 : __FILE__) +#define ASSERT_FALSE(func, par) { UcsXml_CB_OnError("Parameter error in attribute=%s value=%s, file=%s, line=%d", 4, func, par, __FILENAME__, __LINE__); return false; } #define CHECK_POINTER(PTR) if (NULL == PTR) { ASSERT_FALSE(PTR, "NULL pointer"); } static int32_t Str2Int(const char *val) -- cgit 1.2.3-korg