From: hniksic Date: Thu, 7 Jul 2005 14:48:01 +0000 (-0700) Subject: [svn] Only define symbols in config-compiler.h, don't include headers. X-Git-Tag: v1.13~763 X-Git-Url: http://sjero.net/git/?p=wget;a=commitdiff_plain;h=d513a2d946270a2b1be8abbfe003e58397c2912d [svn] Only define symbols in config-compiler.h, don't include headers. --- diff --git a/src/ChangeLog b/src/ChangeLog index 075f055b..e47f591a 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2005-07-07 Hrvoje Niksic + + * mswindows.h: Define an alias for stat and fstat, as requested by + config-compiler.h. + (gai_strerror): Define to windows_strerror if NEED_GAI_STRERROR is + defined. + 2005-07-06 Hrvoje Niksic * mswindows.h: Use strtoll where available. diff --git a/src/mswindows.h b/src/mswindows.h index 612dd949..34352877 100644 --- a/src/mswindows.h +++ b/src/mswindows.h @@ -98,6 +98,14 @@ __int64 str_to_int64 (const char *, char **, int); is equivalent to stat anyway. */ #define lstat stat +/* Define LFS aliases for stat and fstat. */ +#ifdef stat_alias +# define stat(f, b) stat_alias (f, b) +#endif +#ifdef fstat_alias +# define fstat(f, b) fstat_alias (f, b) +#endif + #define PATH_SEPARATOR '\\' /* Win32 doesn't support the MODE argument to mkdir. */ @@ -109,6 +117,11 @@ __int64 str_to_int64 (const char *, char **, int); const char *inet_ntop (int, const void *, char *, socklen_t); #endif +#ifdef NEED_GAI_STRERROR +# undef gai_strerror +# define gai_strerror windows_strerror +#endif + #ifndef INHIBIT_WRAP /* Winsock functions don't set errno, so we provide wrappers that do. */ diff --git a/windows/ChangeLog b/windows/ChangeLog index 1e6bcadd..506bfb74 100644 --- a/windows/ChangeLog +++ b/windows/ChangeLog @@ -1,3 +1,10 @@ +2005-07-07 Hrvoje Niksic + + * config-compiler.h (stat_alias): Don't directly redefine stat and + fstat here. Just define the alias symbols. + (gai_strerror): Just declare that it needs to be defined instead + of defining it directly. + 2005-07-07 Gisle Vanem * config-compiler.h: Define HAVE__BOOL, HAVE_INTTYPES_H, and diff --git a/windows/config-compiler.h b/windows/config-compiler.h index fbc199f9..6c526891 100644 --- a/windows/config-compiler.h +++ b/windows/config-compiler.h @@ -45,10 +45,6 @@ so, delete this exception statement from your version. */ contains most of the explanatory comments. Things that apply to *all* compilers, as well as things that are specific to Wget, belong in src/mswindows.h. */ - -/* For all compilers: must include *before* redefining - stat. */ -#include /* -------------------- */ /* MinGW (GCC) section. */ @@ -60,10 +56,11 @@ so, delete this exception statement from your version. */ #define LL(n) n##LL /* Transparently support statting large files, like POSIX's LFS API - does. All Windows compilers we support use _stati64 (but have - different names for 2nd argument type, see below), so we use - that. */ -#define stat(fname, buf) _stati64 (fname, buf) + does, by aliasing stat and fstat to their equivalents that do LFS. + Most Windows compilers we support use _stati64 (but have different + names for 2nd argument type, see below), so we use that. */ +#define stat_alias _stati64 +#define fstat_alias _fstati64 /* On Windows the 64-bit stat requires an explicitly different type for the 2nd argument, so we define a struct_stat macro that expands @@ -81,13 +78,16 @@ so, delete this exception statement from your version. */ /* MinGW 3.7 (or older) prototypes gai_strerror(), but is missing from all import libraries. */ #ifdef ENABLE_IPV6 -# undef gai_strerror -# define gai_strerror windows_strerror +# define NEED_GAI_STRERROR #endif /* MinGW and GCC support some POSIX and C99 features. */ -#define HAVE__BOOL 1 #define HAVE_INTTYPES_H 1 + +#define HAVE__BOOL 1 +#undef SIZEOF_LONG_LONG /* avoid redefinition warning */ +#define SIZEOF_LONG_LONG 8 + #define HAVE_STRTOLL 1 /* -------------------- */ @@ -99,7 +99,8 @@ so, delete this exception statement from your version. */ #define LL(n) n##I64 -#define stat(fname, buf) _stati64 (fname, buf) +#define stat_alias _stati64 +#define fstat_alias _fstati64 #define struct_stat struct _stati64 #define struct_fstat struct _stati64 @@ -117,9 +118,11 @@ so, delete this exception statement from your version. */ #define OS_TYPE "Windows-Borland" #define LL(n) n##I64 -#define stat(fname, buf) _stati64 (fname, buf) + +#define stat_alias _stati64 +#undef fstat_alias #define struct_stat struct stati64 -#define struct_fstat struct stat +#undef struct_fstat /* ------------------------------ */ /* Digital Mars Compiler section. */ @@ -132,7 +135,8 @@ so, delete this exception statement from your version. */ /* DMC supports 64-bit types, including long long, but not statting large files. */ -#undef stat +#undef stat_alias +#undef fstat_alias /* If left undefined, sysdep.h will define these to struct stat. */ #undef struct_stat #undef struct_fstat