From 0c4517a61aff270cd71af3402f7188f65cf80a80 Mon Sep 17 00:00:00 2001 From: drh <> Date: Mon, 5 Sep 2022 22:53:24 +0000 Subject: [PATCH] Get the tool/omittest-msvc.tcl script working. FossilOrigin-Name: 82b89f8a074858a81d841dfc26436e8d39ce4907b8f989eba4d848db16758303 --- manifest | 15 ++++------ manifest.uuid | 2 +- tool/omittest-msvc.tcl | 65 +++++++++++++++++++----------------------- 3 files changed, 36 insertions(+), 46 deletions(-) diff --git a/manifest b/manifest index 4fca0b4944..1666661e3e 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sa\sprototype\sfor\sa\sscript,\ssimilar\sto\stool/omittest.tcl,\sthat\sis\sdesigned\nto\stest\sbuilds\susing\sMSVC\sto\sensure\sthey\swork\swith\svarious\sOMIT\soptions. -D 2022-09-05T20:42:01.229 +C Get\sthe\stool/omittest-msvc.tcl\sscript\sworking. +D 2022-09-05T22:53:24.940 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -1942,7 +1942,7 @@ F tool/mksqlite3h.tcl 1f5e4a1dbbbc43c83cc6e74fe32c6c620502240b66c7c0f33a51378e78 F tool/mksqlite3internalh.tcl eb994013e833359137eb53a55acdad0b5ae1049b F tool/mkvsix.tcl b9e0777a213c23156b6542842c238479e496ebf5 F tool/offsets.c 8ed2b344d33f06e71366a9b93ccedaa38c096cc1dbd4c3c26ad08c6115285845 -F tool/omittest-msvc.tcl 64617a970928ac35057e0161dfea0bf9a97743664d5a1a50c437e24ed20bc59f +F tool/omittest-msvc.tcl d6b8f501ac1d7798c4126065030f89812379012cad98a1735d6d7221492abc08 F tool/omittest.tcl 3bc9609aceea871e1ca6ed6749df9ce79b89369d22b492f6ce6078f40647cc3f F tool/opcodesum.tcl 740ed206ba8c5040018988129abbf3089a0ccf4a F tool/pagesig.c ff0ca355fd3c2398e933da5e22439bbff89b803b @@ -2000,11 +2000,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P f74a5ea8c986dc33d3afcda169c38abbe55728c56716cf9991a5e2ef7fc4917a -R 0dcc81f6b8e95b18a530cbbb2b49ddaa -T *branch * msvc-omit-test -T *sym-msvc-omit-test * -T -sym-trunk * +P b1e37a0bd31fa9f8e58c2859a80c23a682b4702eefab2c55b243f1e21d475d6c +R 6ca49c20c002174082011fae5352b9a2 U drh -Z 69c1027a1b81005d7e51238e645ea142 +Z 569284e867ffbb9e9a0c2176429e582b # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 030340e28e..c61a2eaf21 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -b1e37a0bd31fa9f8e58c2859a80c23a682b4702eefab2c55b243f1e21d475d6c \ No newline at end of file +82b89f8a074858a81d841dfc26436e8d39ce4907b8f989eba4d848db16758303 \ No newline at end of file diff --git a/tool/omittest-msvc.tcl b/tool/omittest-msvc.tcl index a47b086fa8..28c4b98317 100644 --- a/tool/omittest-msvc.tcl +++ b/tool/omittest-msvc.tcl @@ -3,9 +3,18 @@ # compile-time options all work with MSVC. # set OPTIONS [list \ - SQLITE_OMIT_ALTERTABLE \ - SQLITE_OMIT_ANALYZE \ - SQLITE_OMIT_ATTACH \ + SQLITE_ALLOW_ROWID_IN_VIEW \ + SQLITE_ENABLE_COLUMN_METADATA \ + SQLITE_ENABLE_EXPENSIVE_ASSERT \ + SQLITE_ENABLE_IOTRACE \ + SQLITE_ENABLE_MEMORY_MANAGEMENT \ + SQLITE_ENABLE_MEMSYS3 \ + SQLITE_ENABLE_MEMSYS5 \ + SQLITE_ENABLE_OVERSIZE_CELL_CHECK \ + SQLITE_ENABLE_UNLOCK_NOTIFY \ + SQLITE_ENABLE_UPDATE_DELETE_LIMIT \ + SQLITE_OMIT_ALTERTABLE-x \ + SQLITE_OMIT_ATTACH-x \ SQLITE_OMIT_AUTHORIZATION \ SQLITE_OMIT_AUTOINCREMENT \ SQLITE_OMIT_AUTOINIT \ @@ -27,15 +36,15 @@ set OPTIONS [list \ SQLITE_OMIT_DECLTYPE \ SQLITE_OMIT_DEPRECATED \ SQLITE_OMIT_DESERIALIZE \ - SQLITE_OMIT_DISKIO \ - SQLITE_OMIT_EXPLAIN \ + SQLITE_OMIT_DISKIO-x \ + SQLITE_OMIT_EXPLAIN-x \ SQLITE_OMIT_FLAG_PRAGMAS \ SQLITE_OMIT_FLOATING_POINT \ SQLITE_OMIT_FOREIGN_KEY \ SQLITE_OMIT_GENERATED_COLUMNS \ SQLITE_OMIT_GET_TABLE \ SQLITE_OMIT_HEX_INTEGER \ - SQLITE_OMIT_INCRBLOB \ + SQLITE_OMIT_INCRBLOB-x \ SQLITE_OMIT_INTEGRITY_CHECK \ SQLITE_OMIT_INTROSPECTION_PRAGMAS \ SQLITE_OMIT_JSON \ @@ -45,19 +54,19 @@ set OPTIONS [list \ SQLITE_OMIT_LOOKASIDE \ SQLITE_OMIT_MEMORYDB \ SQLITE_OMIT_OR_OPTIMIZATION \ - SQLITE_OMIT_PAGER_PRAGMAS \ + SQLITE_OMIT_PAGER_PRAGMAS-x \ SQLITE_OMIT_PARSER_TRACE \ SQLITE_OMIT_POPEN \ - SQLITE_OMIT_PRAGMA \ + SQLITE_OMIT_PRAGMA-x \ SQLITE_OMIT_PROGRESS_CALLBACK \ SQLITE_OMIT_QUICKBALANCE \ SQLITE_OMIT_RANDOMNESS \ - SQLITE_OMIT_REINDEX \ + SQLITE_OMIT_REINDEX-x \ SQLITE_OMIT_SCHEMA_PRAGMAS \ SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS \ SQLITE_OMIT_SHARED_CACHE \ SQLITE_OMIT_SHUTDOWN_DIRECTORIES \ - SQLITE_OMIT_SUBQUERY \ + SQLITE_OMIT_SUBQUERY-x \ SQLITE_OMIT_TCL_VARIABLE \ SQLITE_OMIT_TEMPDB \ SQLITE_OMIT_TEST_CONTROL \ @@ -66,40 +75,24 @@ set OPTIONS [list \ SQLITE_OMIT_TRUNCATE_OPTIMIZATION \ SQLITE_OMIT_UPSERT \ SQLITE_OMIT_UTF16 \ - SQLITE_OMIT_VACUUM \ - SQLITE_OMIT_VIEW \ - SQLITE_OMIT_VIRTUALTABLE \ + SQLITE_OMIT_VACUUM-x \ + SQLITE_OMIT_VIEW-x \ + SQLITE_OMIT_VIRTUALTABLE-x \ SQLITE_OMIT_WAL \ - SQLITE_OMIT_WINDOWFUNC \ + SQLITE_OMIT_WINDOWFUNC-x \ SQLITE_OMIT_WSD \ SQLITE_OMIT_XFER_OPT \ - SQLITE_ALLOW_ROWID_IN_VIEW \ - SQLITE_DISABLE_DIRSYNC \ - SQLITE_DISABLE_LFS \ - SQLITE_ENABLE_ATOMIC_WRITE \ - SQLITE_ENABLE_COLUMN_METADATA \ - SQLITE_ENABLE_EXPENSIVE_ASSERT \ - SQLITE_ENABLE_FTS3 \ - SQLITE_ENABLE_FTS3_PARENTHESIS \ - SQLITE_ENABLE_FTS4 \ - SQLITE_ENABLE_IOTRACE \ - SQLITE_ENABLE_LOAD_EXTENSION \ - SQLITE_ENABLE_LOCKING_STYLE \ - SQLITE_ENABLE_MEMORY_MANAGEMENT \ - SQLITE_ENABLE_MEMSYS3 \ - SQLITE_ENABLE_MEMSYS5 \ - SQLITE_ENABLE_OVERSIZE_CELL_CHECK \ - SQLITE_ENABLE_RTREE \ - SQLITE_ENABLE_STAT3 \ - SQLITE_ENABLE_UNLOCK_NOTIFY \ - SQLITE_ENABLE_UPDATE_DELETE_LIMIT \ ] +set start [lindex $argv 0] foreach opt $OPTIONS { + if {[regexp x $opt]} continue + if {[string compare $opt $start]<0} continue exec fossil clean -x - set cmd "nmake /f Makefile.msc CCOPTS=-D$opt USE_FULLWARN=0" + set cmd "nmake /f Makefile.msc USE_FULLWARN=0 OPTIMIZATIONS=0" + append cmd " CCOPTS=-D$opt" puts $cmd set res [catch {eval exec $cmd} outtxt] - if {$res} { + if {[regexp {sqlite3.c.\d+.: error} $outtxt]} { puts "FAILED:\n$outtxt" exit }