]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix utility compilation issues with MSVC.
authormistachkin <mistachkin@noemail.net>
Wed, 7 Mar 2018 14:42:17 +0000 (14:42 +0000)
committermistachkin <mistachkin@noemail.net>
Wed, 7 Mar 2018 14:42:17 +0000 (14:42 +0000)
FossilOrigin-Name: 5bd5a79898790bef150b2bc7f275333444b1a723385e595931377ff4d32190bf

Makefile.msc
ext/expert/expert.c
ext/misc/scrub.c
manifest
manifest.uuid
test/fuzzcheck.c
test/kvtest.c
test/ossfuzz.c
test/ossshell.c

index 0f906c80d5715790eeaf63a15d877380de5bae3b..a34377b4d3d2b6d76f2143e9f64746d85e7f700f 100644 (file)
@@ -1621,7 +1621,6 @@ FUZZCHECK_SRC = $(TOP)\test\fuzzcheck.c $(TOP)\test\ossfuzz.c
 OSSSHELL_SRC = $(TOP)\test\ossshell.c $(TOP)\test\ossfuzz.c
 DBFUZZ_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION
 KV_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_DIRECT_OVERFLOW_READ
-DBSELFTEST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5
 ST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0
 
 # Standard options to testfixture.
@@ -1689,7 +1688,7 @@ dbhash.exe:       $(TOP)\tool\dbhash.c $(SQLITE3C) $(SQLITE3H)
        $(LTLINK) $(NO_WARN) $(TOP)\tool\dbhash.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 scrub.exe:     $(TOP)\ext\misc\scrub.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) $(TOP)\ext\misc\scrub.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
+       $(LTLINK) $(NO_WARN) -DSCRUB_STANDALONE=1 $(TOP)\ext\misc\scrub.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
 srcck1.exe:    $(TOP)\tool\srcck1.c
        $(BCC) $(NO_WARN) -Fe$@ $(TOP)\tool\srcck1.c
@@ -2370,11 +2369,11 @@ sqlite3_checker.exe:    sqlite3_checker.c $(LIBRESOBJS)
        $(LTLINK) $(NO_WARN) -DBUILD_sqlite -I$(TCLINCDIR) sqlite3_checker.c \
                /link $(LDFLAGS) $(LTLINKOPTS) $(TCLLIBPATHS) $(LTLIBPATHS) $(LIBRESOBJS) $(TCLLIBS) $(LTLIBS) $(TLIBS)
 
-dbdump.exe:    $(TOP)\ext\misc\dbdump.c $(SQLITE3C) $(SQLITE3H)
+dbdump.exe:    $(TOP)\ext\misc\dbdump.c $(SQLITE3C) $(SQLITE3H) $(LIBRESOBJS)
        $(LTLINK) $(NO_WARN) -DDBDUMP_STANDALONE $(TOP)\ext\misc\dbdump.c $(SQLITE3C) \
                /link $(LDFLAGS) $(LTLINKOPTS) $(LTLIBPATHS) $(LIBRESOBJS) $(LTLIBS)
 
-testloadext.lo:        $(TOP)\src\test_loadext.c
+testloadext.lo:        $(TOP)\src\test_loadext.c $(SQLITE3H)
        $(LTCOMPILE) $(NO_WARN) -c $(TOP)\src\test_loadext.c
 
 testloadext.dll:       testloadext.lo
@@ -2427,9 +2426,6 @@ kvtest.exe:       $(TOP)\test\kvtest.c $(SQLITE3C) $(SQLITE3H)
        $(LTLINK) $(NO_WARN) $(KV_COMPILE_OPTS) \
                $(TOP)\test\kvtest.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
 
-dbselftest.exe:        $(TOP)\test\dbselftest.c $(SQLITE3C) $(SQLITE3H)
-       $(LTLINK) $(NO_WARN) $(DBSELFTEST_COMPILE_OPTS) $(TOP)\test\dbselftest.c $(SQLITE3C)
-
 rbu.exe:       $(TOP)\ext\rbu\rbu.c $(TOP)\ext\rbu\sqlite3rbu.c $(SQLITE3C) $(SQLITE3H)
        $(LTLINK) $(NO_WARN) -DSQLITE_ENABLE_RBU \
                $(TOP)\ext\rbu\rbu.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
@@ -2470,6 +2466,9 @@ clean:
        del /Q sqlite-*-output.vsix 2>NUL
        del /Q fuzzershell.exe fuzzcheck.exe sqldiff.exe dbhash.exe 2>NUL
        del /Q sqltclsh.exe 2>NUL
+       del /Q dbfuzz.exe 2>NUL
+       del /Q kvtest.exe ossshell.exe scrub.exe 2>NUL
+       del /Q showshm.exe sqlite3_checker.exe sqlite3_expert.exe 2>NUL
        del /Q fts5.* fts5parse.* 2>NUL
        del /Q lsm.h lsm1.c 2>NUL
 # <</mark>>
index 13fc87ea89d425d7e39c76fa12139798e2d444ad..051480f896025877c00bfd7c7f569980eb5556d3 100644 (file)
@@ -93,8 +93,9 @@ int main(int argc, char **argv){
   }else{
     for(i=1; i<(argc-1); i++){
       char *zArg = argv[i];
+      int nArg;
       if( zArg[0]=='-' && zArg[1]=='-' && zArg[2]!=0 ) zArg++;
-      int nArg = (int)strlen(zArg);
+      nArg = (int)strlen(zArg);
       if( nArg>=2 && 0==sqlite3_strnicmp(zArg, "-file", nArg) ){
         if( ++i==(argc-1) ) option_requires_argument("-file");
         rc = readSqlFromFile(p, argv[i], &zErr);
index 92718e23d1b09d9d165e5fd414025a5bace4672b..4eb56b0fc275e5c234ab37ca9fa78b86bb68f3f5 100644 (file)
@@ -131,7 +131,7 @@ static void scrubBackupWrite(ScrubState *p, int pgno, const u8 *pData){
     scrubBackupErr(p, "write failed for page %d", pgno);
     p->rcErr = SQLITE_IOERR;
   }
-  if( pgno>p->iLastPage ) p->iLastPage = pgno;
+  if( (u32)pgno>p->iLastPage ) p->iLastPage = pgno;
 }
 
 /* Prepare a statement against the "db" database. */
@@ -459,7 +459,7 @@ static void scrubBackupBtree(ScrubState *p, int pgno, int iDepth){
     nLocal = K<=X ? K : M;
     if( pc+nLocal > p->szUsable-4 ){ ln=__LINE__; goto btree_corrupt; }
     iChild = scrubBackupInt32(&a[pc+nLocal]);
-    scrubBackupOverflow(p, iChild, P-nLocal);
+    scrubBackupOverflow(p, iChild, (u32)(P-nLocal));
   }
 
   /* Walk the right-most tree */
index 2b24be0d1ea0f5428ec336be4b7685972f48838c..bf79846a397f3dd259381d41b901b4fe703da50a 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,10 +1,10 @@
-C Add\sthe\ssqlite3_serialize()\sand\ssqlite3_deserialize()\sinterfaces,\senabled\nwhen\sthe\s-DSQLITE_ENABLE_DESERIALIZE\scompile-time\soption\sis\sused.
-D 2018-03-07T13:01:54.138
+C Fix\sutility\scompilation\sissues\swith\sMSVC.
+D 2018-03-07T14:42:17.408
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F Makefile.in 1d5a68043cc4d8a6e45b37e2639b148cdd7973aa75e90ec71e12d55cd95e32c0
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
-F Makefile.msc 28df1e20dd77b9613ce5b65659a4ab9ab19a1f0d885f1eae2399baf0ebc43f46
+F Makefile.msc 7e8763e25bc88dd517e8475bcd61d77cf643c8e9e904d2a0c3c1d3012b298641
 F README.md 1d5342ebda97420f114283e604e5fe99b0da939d63b76d492eabbaae23488276
 F VERSION cdf91ac446255ecf3d8f6d8c3ee40d64123235ae5b3cef29d344e61b45ec3759
 F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
@@ -43,7 +43,7 @@ F ext/async/README.txt e12275968f6fde133a80e04387d0e839b0c51f91
 F ext/async/sqlite3async.c 0f3070cc3f5ede78f2b9361fb3b629ce200d7d74
 F ext/async/sqlite3async.h f489b080af7e72aec0e1ee6f1d98ab6cf2e4dcef
 F ext/expert/README.md b321c2762bb93c18ea102d5a5f7753a4b8bac646cb392b3b437f633caf2020c3
-F ext/expert/expert.c 4791c5e064aea81b2b829fa95228b22283380ee370ea88a1e580103b75516ebf
+F ext/expert/expert.c d548d603a4cc9e61f446cc179c120c6713511c413f82a4a32b1e1e69d3f086a4
 F ext/expert/expert1.test fd21496d8e52c817a7741f467f42b0502c0ac7e07dcdd1d6e15a3e8154ed4e41
 F ext/expert/sqlite3expert.c 1dfa561e64dc0f89d56b96e6afda87468c34b43604c2df50c47e3f4362778fb2
 F ext/expert/sqlite3expert.h af6354f8ee5c9e025024e63fec3bd640a802afcc3099a44d804752cf0791d811
@@ -289,7 +289,7 @@ F ext/misc/percentile.c 92699c8cd7d517ff610e6037e56506f8904dae2e
 F ext/misc/regexp.c a68d25c659bd2d893cd1215667bbf75ecb9dc7d4
 F ext/misc/remember.c add730f0f7e7436cd15ea3fd6a90fd83c3f706ab44169f7f048438b7d6baa69c
 F ext/misc/rot13.c 540a169cb0d74f15522a8930b0cccdcb37a4fd071d219a5a083a319fc6e8db77
-F ext/misc/scrub.c 1c5bfb8b0cd18b602fcb55755e84abf0023ac2fb
+F ext/misc/scrub.c db9fff56fed322ca587d73727c6021b11ae79ce3f31b389e1d82891d144f22ad
 F ext/misc/series.c f3c0dba5c5c749ce1782b53076108f87cf0b71041eb6023f727a9c50681da564
 F ext/misc/sha1.c 0b9e9b855354910d3ca467bf39099d570e73db56
 F ext/misc/shathree.c 9e960ba50483214c6a7a4b1517f8d8cef799e9db381195178c3fd3ad207e10c0
@@ -935,7 +935,7 @@ F test/fuzz2.test 76dc35b32b6d6f965259508508abce75a6c4d7e1
 F test/fuzz3.test 9c813e6613b837cb7a277b0383cd66bfa07042b4cf0317157c35852f30043c31
 F test/fuzz_common.tcl a87dfbb88c2a6b08a38e9a070dabd129e617b45b
 F test/fuzz_malloc.test 328f70aaca63adf29b4c6f06505ed0cf57ca7c26
-F test/fuzzcheck.c 2152602232c96d9c790eff3013e1369ce59de3203fa0b75bc613531448454e61
+F test/fuzzcheck.c 5eb86c6ac96833ee622f45bf47e8045999c1b4b10d05e4eb809894a4b39f2f84
 F test/fuzzdata1.db 7ee3227bad0e7ccdeb08a9e6822916777073c664
 F test/fuzzdata2.db f03a420d3b822cc82e4f894ca957618fbe9c4973
 F test/fuzzdata3.db c6586d3e3cef0fbc18108f9bb649aa77bfc38aba
@@ -1020,7 +1020,7 @@ F test/json102.test eeb54efa221e50b74a2d6fb9259963b48d7414dca3ce2fdfdeed45cb2848
 F test/json103.test c5f6b85e69de05f6b3195f9f9d5ce9cd179099a0
 F test/json104.test 877d5845f6303899b7889ea5dd1bea99076e3100574d5c536082245c5805dcaa
 F test/keyword1.test 37ef6bba5d2ed5b07ecdd6810571de2956599dff
-F test/kvtest.c fcb38ffe3db028a3138b4818fc098359c80dc51a0d1278a91c99c554cc1abb92
+F test/kvtest.c 23452e653e6b0254dc2fd1d242d4c7c65644504de8951d7d60f7e4291c52c231
 F test/lastinsert.test 42e948fd6442f07d60acbd15d33fb86473e0ef63
 F test/laststmtchanges.test ae613f53819206b3222771828d024154d51db200
 F test/like.test 11cfd7d4ef8625389df9efc46735ff0b0b41d5e62047ef0f3bc24c380d28a7a6
@@ -1120,8 +1120,8 @@ F test/orderby7.test 3d1383d52ade5b9eb3a173b3147fdd296f0202da
 F test/orderby8.test 23ef1a5d72bd3adcc2f65561c654295d1b8047bd
 F test/orderby9.test 87fb9548debcc2cd141c5299002dd94672fa76a3
 F test/oserror.test b32dc34f2363ef18532e3a0a7358e3e7e321974f
-F test/ossfuzz.c 3613bc516386234cf2e513fb94dc677ab3862eb7ebc5b3671c319a80f86839fb
-F test/ossshell.c 296ab63067841bd1b1e97b46a0b2af48ee7f69d50d1a723008bee12dd7122622
+F test/ossfuzz.c c4c4547e2c92ac52f10038b073a03248251a23c1c559728f63a18aeca0e79f03
+F test/ossshell.c f125c5bd16e537a2549aa579b328dd1c59905e7ab1338dfc210e755bb7b69f17
 F test/ovfl.test 199c482696defceacee8c8e0e0ef36da62726b2f
 F test/pager1.test f596d3bd53ce96e1d87d44d223d2ae6c8867dd782c425e5eb28b5721fa6aaa97
 F test/pager2.test 67b8f40ae98112bcdba1f2b2d03ea83266418c71
@@ -1710,8 +1710,10 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 797e02e0ee703ab0fd53e26ba5c96ac7429b8022522bec201423718d508acf24 fadbc5e23f93bedd705bdc83cd3781b3821a231034bae5b942c94da77227721c
-R 9c6c7f909066e499dd8cfc98440c4493
-T +closed fadbc5e23f93bedd705bdc83cd3781b3821a231034bae5b942c94da77227721c
-U drh
-Z f6ec1840cf83626768a920eb621f59f9
+P fc42d31d6fca21abc5377a463ed800e3066b2f3fbd2d85cb486f402d2ae7cb15
+R 49f05f1d65bbeae0b87d971f79e7a40c
+T *branch * msvcFixes
+T *sym-msvcFixes *
+T -sym-trunk *
+U mistachkin
+Z 37796102b64447100403e8be38ecf33a
index 7e63a2f17948f02522bc46a25aed059c76861c6f..16394705730ac8ba88b4b2b5f49417376a05fe74 100644 (file)
@@ -1 +1 @@
-fc42d31d6fca21abc5377a463ed800e3066b2f3fbd2d85cb486f402d2ae7cb15
\ No newline at end of file
+5bd5a79898790bef150b2bc7f275333444b1a723385e595931377ff4d32190bf
\ No newline at end of file
index fd72273f34c5d3071d16380ff7c557190354530d..01efc82ee5407f82f6130144c327d4cffc850f89 100644 (file)
 
 #ifdef SQLITE_OSS_FUZZ
 # include <stddef.h>
-# include <stdint.h>
+# if !defined(_MSC_VER)
+#  include <stdint.h>
+# endif
+#endif
+
+#if defined(_MSC_VER)
+typedef unsigned char uint8_t;
 #endif
 
 /*
index 9193586a1e53ab26dc37fee939cd49f319a769f6..eec7c25be1c16d8f5f762c21e66fd3b6f6c8e222 100644 (file)
@@ -132,7 +132,9 @@ static const char zHelp[] =
 # define access _access
 #endif
 
-#include <stdint.h>
+#if !defined(_MSC_VER)
+# include <stdint.h>
+#endif
 
 /*
 ** The following macros are used to cast pointers to integers and
@@ -557,7 +559,7 @@ static int exportMain(int argc, char **argv){
                        iKey/10000, (iKey/100)%100, iKey%100);
     }
     out = fopen(zFN, "wb");      
-    nWrote = fwrite(pData, 1, nData, out);
+    nWrote = fwrite(pData, 1, (size_t)nData, out);
     fclose(out);
     printf("\r%s   ", zTail); fflush(stdout);
     if( nWrote!=nData ){
index fa6e9142fe56382669361c6fc8274167ae1c5795..a8a637f2ac8576215b6acf9352d62f7c40e29cc7 100644 (file)
@@ -3,11 +3,17 @@
 ** (https://github.com/google/oss-fuzz)
 */
 #include <stddef.h>
-#include <stdint.h>
+#if !defined(_MSC_VER)
+# include <stdint.h>
+#endif
 #include <stdio.h>
 #include <string.h>
 #include "sqlite3.h"
 
+#if defined(_MSC_VER)
+typedef unsigned char uint8_t;
+#endif
+
 /* Global debugging settings.  OSS-Fuzz will have all debugging turned
 ** off.  But if LLVMFuzzerTestOneInput() is called interactively from
 ** the ossshell utility program, then these flags might be set.
index 00cc3391c894f48afda1ae2cd1d4d3a8ac78b3ed..54849f97f6d8fdff438be2e1250bef38fed3138d 100644 (file)
@@ -6,12 +6,18 @@
 ** command line and passes them one by one into ossfuzz.c.
 */
 #include <stddef.h>
-#include <stdint.h>
+#if !defined(_MSC_VER)
+# include <stdint.h>
+#endif
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include "sqlite3.h"
 
+#if defined(_MSC_VER)
+typedef unsigned char uint8_t;
+#endif
+
 /*
 ** The entry point in ossfuzz.c that this routine will be calling
 */