]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Better support for MinGW 4.x.
authormistachkin <mistachkin@noemail.net>
Fri, 14 Feb 2014 23:35:49 +0000 (23:35 +0000)
committermistachkin <mistachkin@noemail.net>
Fri, 14 Feb 2014 23:35:49 +0000 (23:35 +0000)
FossilOrigin-Name: e147230767383ed9f64085b613fd18508f74be21

manifest
manifest.uuid
src/sqliteInt.h

index d8dd8495677f2333e0836e5146e9ea6acae21464..8c86fcc99ceb758c0f951690ee489b73a504744a 100644 (file)
--- a/manifest
+++ b/manifest
@@ -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
index 3ff1fc2f3d976ac9960d001e6701666657e59e57..0a1ac78ab80b98737bed4ead0a8855d1c7889c94 100644 (file)
@@ -1 +1 @@
-3c1ae447dec8fc2af1c5105134061717594ac0e0
\ No newline at end of file
+e147230767383ed9f64085b613fd18508f74be21
\ No newline at end of file
index 8b9337a2b092f9aeb95edec291c92f64236ccb49..41e7e2d74da02028952db97f80253900e8dbac2e 100644 (file)
 # 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