Better support for MinGW 4.x.

FossilOrigin-Name: e147230767383ed9f64085b613fd18508f74be21
This commit is contained in:
mistachkin 2014-02-14 23:35:49 +00:00
parent f78da0e6af
commit a7b3b63524
3 changed files with 43 additions and 8 deletions

View File

@ -1,5 +1,5 @@
C Reduce\sthe\snumber\sof\scases\swhere\sit\sis\snecessary\sto\scheck\sfor\sNULL\safter\nthe\sloop\sterminating\scondition.
D 2014-02-14T20:59:53.587
C Better\ssupport\sfor\sMinGW\s4.x.
D 2014-02-14T23:35:49.555
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in 2ef13430cd359f7b361bb863504e227b25cc7f81
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@ -221,7 +221,7 @@ F src/shell.c 3dd86bf73ccd079f0e32ef5069600586085e8239
F src/sqlite.h.in eed7f7d66a60daaa7b4a597dcd9bad87aad9611b
F src/sqlite3.rc 11094cc6a157a028b301a9f06b3d03089ea37c3e
F src/sqlite3ext.h 886f5a34de171002ad46fae8c36a7d8051c190fc
F src/sqliteInt.h 5b1f4e30c8332270e4c14254ef1fbcbd92a4a4c7
F src/sqliteInt.h bc5e9c7e30d3d65ce2cd218b737f0057de0ce135
F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d
F src/status.c 7ac05a5c7017d0b9f0b4bcd701228b784f987158
F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e
@ -1150,7 +1150,10 @@ F tool/vdbe-compress.tcl 0cf56e9263a152b84da86e75a5c0cdcdb7a47891
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
P b6bea903ac8e1717ed50b221d73bd0be061c7663
R f976ccc3e6f99e20be380cc680402b19
U drh
Z d8a7427791a9ddd9c5e417477ea3c5a6
P 3c1ae447dec8fc2af1c5105134061717594ac0e0
R ce6f8022fe93ee0d0d6cf8a6cc271c33
T *branch * mingw4x
T *sym-mingw4x *
T -sym-trunk *
U mistachkin
Z c1377b93302be214ebcce2f123ef84cb

View File

@ -1 +1 @@
3c1ae447dec8fc2af1c5105134061717594ac0e0
e147230767383ed9f64085b613fd18508f74be21

View File

@ -48,6 +48,38 @@
# define _LARGEFILE_SOURCE 1
#endif
/*
** For MinGW, check to see if we can include the header file containing its
** version information, among other things. Normally, this internal MinGW
** header file would [only] be included automatically by other MinGW header
** files; however, the contained version information is now required by this
** header file to work around binary compatibility issues (see below) and
** this is the only known way to reliably obtain it. This entire #if block
** would be completely unnecessary if there was any other way of detecting
** MinGW via their preprocessor (e.g. if they customized their GCC to define
** some MinGW-specific macros). When compiling for MinGW, either the
** _HAVE_MINGW_H or _HAVE__MINGW_H (note the extra underscore) macro must be
** defined; otherwise, detection of conditions specific to MinGW will be
** disabled.
*/
#if defined(_HAVE_MINGW_H)
# include "mingw.h"
#elif defined(_HAVE__MINGW_H)
# include "_mingw.h"
#endif
/*
** For MinGW version 4.x (and higher), check to see if the _USE_32BIT_TIME_T
** define is required to maintain binary compatibility with the MSVC runtime
** library in use (e.g. for Windows XP).
*/
#if !defined(_USE_32BIT_TIME_T) && !defined(_USE_64BIT_TIME_T) && \
defined(_WIN32) && !defined(_WIN64) && \
defined(__MINGW32_MAJOR_VERSION) && __MINGW32_MAJOR_VERSION >= 4 && \
defined(__MSVCRT__)
# define _USE_32BIT_TIME_T
#endif
/*
** Include the configuration header output by 'configure' if we're using the
** autoconf-based build