diff options
-rw-r--r-- | libpkgconf/stdinc.h | 7 | ||||
-rw-r--r-- | libpkgconf/stdinc.h.orig | 59 |
2 files changed, 64 insertions, 2 deletions
diff --git a/libpkgconf/stdinc.h b/libpkgconf/stdinc.h index 43d7eeb..a4c7c84 100644 --- a/libpkgconf/stdinc.h +++ b/libpkgconf/stdinc.h @@ -31,10 +31,13 @@ # include <windows.h> # include <malloc.h> # define PATH_DEV_NULL "nul" +/* + * Fix MinGW GCC print format warnings (issue #142 is reported). + */ # ifdef _WIN64 -# define SIZE_FMT_SPECIFIER "%llu" +# define SIZE_FMT_SPECIFIER "%I64u" # else -# define SIZE_FMT_SPECIFIER "%lu" +# define SIZE_FMT_SPECIFIER "%u" # endif # ifndef ssize_t # ifndef __MINGW32__ diff --git a/libpkgconf/stdinc.h.orig b/libpkgconf/stdinc.h.orig new file mode 100644 index 0000000..43d7eeb --- /dev/null +++ b/libpkgconf/stdinc.h.orig @@ -0,0 +1,59 @@ +/* + * stdinc.h + * pull in standard headers (including portability hacks) + * + * Copyright (c) 2012 pkgconf authors (see AUTHORS). + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * This software is provided 'as is' and without any warranty, express or + * implied. In no event shall the authors be liable for any damages arising + * from the use of this software. + */ + +#ifndef __STDINC_H +#define __STDINC_H + +#include <ctype.h> +#include <stdio.h> +#include <stdlib.h> +#include <stddef.h> +#include <stdbool.h> +#include <stdarg.h> +#include <string.h> +#include <sys/types.h> +#include <stdint.h> + +#ifdef _WIN32 +# define WIN32_LEAN_AND_MEAN +# include <windows.h> +# include <malloc.h> +# define PATH_DEV_NULL "nul" +# ifdef _WIN64 +# define SIZE_FMT_SPECIFIER "%llu" +# else +# define SIZE_FMT_SPECIFIER "%lu" +# endif +# ifndef ssize_t +# ifndef __MINGW32__ +# include <BaseTsd.h> +# else +# include <basetsd.h> +# endif +# define ssize_t SSIZE_T +# endif +# ifndef __MINGW32__ +# include "win-dirent.h" +# else +# include <dirent.h> +# endif +#else +# define PATH_DEV_NULL "/dev/null" +# define SIZE_FMT_SPECIFIER "%zu" +# include <dirent.h> +# include <unistd.h> +#endif + +#endif |