From 11990da1d3a4ca913ed5b85888a37188c4a621db Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Sat, 13 Jul 2013 23:21:05 +0000 Subject: Various cross-platform fixes Improve compilation with libpayload (compiling flashrom.c and linking is still broken): - disable Ponyprog (which enforced serial.c compilation) - make errno available where it is needed Fix internal.c for non-x86 and enable cb parsing on ARM. Fix mingw builds by using its __USE_MINGW_ANSI_STDIO macro and gnu_printf definition for printf format style checking. See http://sourceforge.net/apps/trac/mingw-w64/wiki/gnu%20printf This requires inclusion of stdio.h in flash.h. Fix order of libraries in the Makefile: FEATURE_LIBS needs to come *after* PCILIBS in case ZLIB is needed by it. Corresponding to flashrom svn r1697. Signed-off-by: Carl-Daniel Hailfinger Signed-off-by: Stefan Tauner Acked-by: Carl-Daniel Hailfinger --- flash.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'flash.h') diff --git a/flash.h b/flash.h index 7e50ae5..ba93245 100644 --- a/flash.h +++ b/flash.h @@ -25,6 +25,7 @@ #define __FLASH_H__ 1 #include +#include #include #include #include @@ -286,7 +287,12 @@ enum msglevel { MSG_SPEW = 5, }; /* Let gcc and clang check for correct printf-style format strings. */ -int print(enum msglevel level, const char *fmt, ...) __attribute__((format(printf, 2, 3))); +int print(enum msglevel level, const char *fmt, ...) +#ifdef __MINGW32__ +__attribute__((format(gnu_printf, 2, 3))); +#else +__attribute__((format(printf, 2, 3))); +#endif #define msg_gerr(...) print(MSG_ERROR, __VA_ARGS__) /* general errors */ #define msg_perr(...) print(MSG_ERROR, __VA_ARGS__) /* programmer errors */ #define msg_cerr(...) print(MSG_ERROR, __VA_ARGS__) /* chip errors */ -- cgit v1.1