X-Git-Url: https://git.ao2.it/libam7xxx.git/blobdiff_plain/151dac365e5b086e4aae52585130fe26fc6b4cc5..bbebd199987581ee6f344c89bfb02237dc0ab0bd:/src/am7xxx.c diff --git a/src/am7xxx.c b/src/am7xxx.c index 1e05601..4bf9abb 100644 --- a/src/am7xxx.c +++ b/src/am7xxx.c @@ -30,11 +30,22 @@ #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) -/* If we're not using GNU C, elide __attribute__ +/* + * If we're not using GNU C, elide __attribute__ * taken from: http://unixwiz.net/techtips/gnu-c-attributes.html) */ #ifndef __GNUC__ -# define __attribute__(x) /* NOTHING */ + #define __attribute__(x) /* NOTHING */ +#endif + +/* + * Fix printf format when compiling for Windows with MinGW, see: + * https://sourceforge.net/p/mingw-w64/wiki2/gnu%20printf/ + */ +#ifdef __MINGW_PRINTF_FORMAT + #define AM7XXX_PRINTF_FORMAT __MINGW_PRINTF_FORMAT +#else + #define AM7XXX_PRINTF_FORMAT printf #endif /* Control shared library symbols visibility */ @@ -56,7 +67,7 @@ static void log_message(am7xxx_context *ctx, const char *function_name, int line, const char *fmt, - ...) __attribute__ ((format (printf, 5, 6))); + ...) __attribute__ ((format (AM7XXX_PRINTF_FORMAT, 5, 6))); #define fatal(...) log_message(NULL, AM7XXX_LOG_FATAL, __func__, __LINE__, __VA_ARGS__) #define error(ctx, ...) log_message(ctx, AM7XXX_LOG_ERROR, __func__, __LINE__, __VA_ARGS__)