mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 07:02:34 +02:00
Fix standalone ich_descriptor_tool compilation with MinGW and DJGPP
TARGET_OS as well as EXEC_SUFFIX were only set when called via the main makefile and even then __USE_MINGW_ANSI_STDIO was not set for MinGW. While at it, also replace the hardcoded gnu_printf printf format attribute with __MINGW_PRINTF_FORMAT which is set according to __USE_MINGW_ANSI_STDIO respectively. Change-Id: Id146f5ba06a0e510397c6f32a2bd7c819a405a25 Signed-off-by: Stefan Tauner <stefan.tauner@gmx.at> Reviewed-on: https://review.coreboot.org/21838 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/22336
This commit is contained in:
parent
3a235498b4
commit
22ce83ed99
2
flash.h
2
flash.h
@ -324,7 +324,7 @@ int flashrom_print_cb(enum flashrom_log_level level, const char *fmt, va_list ap
|
|||||||
/* Let gcc and clang check for correct printf-style format strings. */
|
/* Let gcc and clang check for correct printf-style format strings. */
|
||||||
int print(enum flashrom_log_level level, const char *fmt, ...)
|
int print(enum flashrom_log_level level, const char *fmt, ...)
|
||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
__attribute__((format(gnu_printf, 2, 3)));
|
__attribute__((format(__MINGW_PRINTF_FORMAT, 2, 3)));
|
||||||
#else
|
#else
|
||||||
__attribute__((format(printf, 2, 3)));
|
__attribute__((format(printf, 2, 3)));
|
||||||
#endif
|
#endif
|
||||||
|
@ -21,10 +21,23 @@ CC ?= gcc
|
|||||||
# If the user has specified custom CFLAGS, all CFLAGS settings below will be
|
# If the user has specified custom CFLAGS, all CFLAGS settings below will be
|
||||||
# completely ignored by gnumake.
|
# completely ignored by gnumake.
|
||||||
CFLAGS ?= -Os -Wall -Wshadow
|
CFLAGS ?= -Os -Wall -Wshadow
|
||||||
|
|
||||||
|
override TARGET_OS := $(shell $(CC) $(CPPFLAGS) -E $(SHAREDSRCDIR)/os.h | grep -v '^\#' | grep '"' | \
|
||||||
|
cut -f 2 -d'"')
|
||||||
|
|
||||||
ifeq ($(TARGET_OS), DOS)
|
ifeq ($(TARGET_OS), DOS)
|
||||||
|
EXEC_SUFFIX := .exe
|
||||||
# DJGPP has odd uint*_t definitions which cause lots of format string warnings.
|
# DJGPP has odd uint*_t definitions which cause lots of format string warnings.
|
||||||
CFLAGS += -Wno-format
|
CFLAGS += -Wno-format
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq ($(TARGET_OS), MinGW)
|
||||||
|
EXEC_SUFFIX := .exe
|
||||||
|
# Some functions provided by Microsoft do not work as described in C99 specifications. This macro fixes that
|
||||||
|
# for MinGW. See http://sourceforge.net/p/mingw-w64/wiki2/printf%20and%20scanf%20family/ */
|
||||||
|
FLASHROM_CFLAGS += -D__USE_MINGW_ANSI_STDIO=1
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(WARNERROR), yes)
|
ifeq ($(WARNERROR), yes)
|
||||||
CFLAGS += -Werror
|
CFLAGS += -Werror
|
||||||
endif
|
endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user