Fossil SCM

Updates to support building with the SQLite Encryption Extension on Windows.

mistachkin 2016-04-22 20:00 trunk
Commit 9129f6f6225a91a28d22b7a8141396379fa50e22
+1
--- auto.def
+++ auto.def
@@ -136,10 +136,11 @@
136136
define-append EXTRA_CFLAGS -DFOSSIL_DEBUG
137137
msg-result "Debugging support enabled"
138138
}
139139
140140
if {[opt-bool with-see]} {
141
+ define-append EXTRA_CFLAGS -DUSE_SEE
141142
define USE_SEE 1
142143
msg-result "Enabling encryption support"
143144
}
144145
145146
if {[opt-bool json]} {
146147
--- auto.def
+++ auto.def
@@ -136,10 +136,11 @@
136 define-append EXTRA_CFLAGS -DFOSSIL_DEBUG
137 msg-result "Debugging support enabled"
138 }
139
140 if {[opt-bool with-see]} {
 
141 define USE_SEE 1
142 msg-result "Enabling encryption support"
143 }
144
145 if {[opt-bool json]} {
146
--- auto.def
+++ auto.def
@@ -136,10 +136,11 @@
136 define-append EXTRA_CFLAGS -DFOSSIL_DEBUG
137 msg-result "Debugging support enabled"
138 }
139
140 if {[opt-bool with-see]} {
141 define-append EXTRA_CFLAGS -DUSE_SEE
142 define USE_SEE 1
143 msg-result "Enabling encryption support"
144 }
145
146 if {[opt-bool json]} {
147
+3
--- src/main.c
+++ src/main.c
@@ -1081,10 +1081,13 @@
10811081
#if defined(FOSSIL_DYNAMIC_BUILD)
10821082
blob_append(pOut, "DYNAMIC_BUILD\n", -1);
10831083
#else
10841084
blob_append(pOut, "STATIC_BUILD\n", -1);
10851085
#endif
1086
+#if defined(USE_SEE)
1087
+ blob_append(pOut, "USE_SEE\n", -1);
1088
+#endif
10861089
}
10871090
10881091
/*
10891092
** This function returns the user-agent string for Fossil, for
10901093
** use in HTTP(S) requests.
10911094
--- src/main.c
+++ src/main.c
@@ -1081,10 +1081,13 @@
1081 #if defined(FOSSIL_DYNAMIC_BUILD)
1082 blob_append(pOut, "DYNAMIC_BUILD\n", -1);
1083 #else
1084 blob_append(pOut, "STATIC_BUILD\n", -1);
1085 #endif
 
 
 
1086 }
1087
1088 /*
1089 ** This function returns the user-agent string for Fossil, for
1090 ** use in HTTP(S) requests.
1091
--- src/main.c
+++ src/main.c
@@ -1081,10 +1081,13 @@
1081 #if defined(FOSSIL_DYNAMIC_BUILD)
1082 blob_append(pOut, "DYNAMIC_BUILD\n", -1);
1083 #else
1084 blob_append(pOut, "STATIC_BUILD\n", -1);
1085 #endif
1086 #if defined(USE_SEE)
1087 blob_append(pOut, "USE_SEE\n", -1);
1088 #endif
1089 }
1090
1091 /*
1092 ** This function returns the user-agent string for Fossil, for
1093 ** use in HTTP(S) requests.
1094
+3 -3
--- src/main.mk
+++ src/main.mk
@@ -459,11 +459,11 @@
459459
$(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
460460
461461
$(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
462462
$(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
463463
464
-# Run the test suite.
464
+# Run the test suite.
465465
# Other flags that can be included in TESTFLAGS are:
466466
#
467467
# -halt Stop testing after the first failed test
468468
# -keep Keep the temporary workspace for debugging
469469
# -prot Write a detailed log of the tests to the file ./prot
@@ -538,12 +538,12 @@
538538
SQLITE3_SRC.1 = sqlite3-see.c
539539
SQLITE3_SRC.0 = sqlite3.c
540540
SQLITE3_SRC. = sqlite3.c
541541
SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
542542
SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
543
-SEE_FLAGS.0 =
544
-SEE_FLAGS. =
543
+SEE_FLAGS.0 =
544
+SEE_FLAGS. =
545545
SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
546546
547547
548548
EXTRAOBJ = \
549549
$(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
550550
--- src/main.mk
+++ src/main.mk
@@ -459,11 +459,11 @@
459 $(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
460
461 $(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
462 $(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
463
464 # Run the test suite.
465 # Other flags that can be included in TESTFLAGS are:
466 #
467 # -halt Stop testing after the first failed test
468 # -keep Keep the temporary workspace for debugging
469 # -prot Write a detailed log of the tests to the file ./prot
@@ -538,12 +538,12 @@
538 SQLITE3_SRC.1 = sqlite3-see.c
539 SQLITE3_SRC.0 = sqlite3.c
540 SQLITE3_SRC. = sqlite3.c
541 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
542 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
543 SEE_FLAGS.0 =
544 SEE_FLAGS. =
545 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
546
547
548 EXTRAOBJ = \
549 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
550
--- src/main.mk
+++ src/main.mk
@@ -459,11 +459,11 @@
459 $(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
460
461 $(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
462 $(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
463
464 # Run the test suite.
465 # Other flags that can be included in TESTFLAGS are:
466 #
467 # -halt Stop testing after the first failed test
468 # -keep Keep the temporary workspace for debugging
469 # -prot Write a detailed log of the tests to the file ./prot
@@ -538,12 +538,12 @@
538 SQLITE3_SRC.1 = sqlite3-see.c
539 SQLITE3_SRC.0 = sqlite3.c
540 SQLITE3_SRC. = sqlite3.c
541 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
542 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
543 SEE_FLAGS.0 =
544 SEE_FLAGS. =
545 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
546
547
548 EXTRAOBJ = \
549 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
550
+49 -9
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -304,11 +304,11 @@
304304
$(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
305305
306306
$(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
307307
$(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
308308
309
-# Run the test suite.
309
+# Run the test suite.
310310
# Other flags that can be included in TESTFLAGS are:
311311
#
312312
# -halt Stop testing after the first failed test
313313
# -keep Keep the temporary workspace for debugging
314314
# -prot Write a detailed log of the tests to the file ./prot
@@ -363,17 +363,17 @@
363363
364364
# The USE_SEE variable may be undefined, 0 or 1. If undefined or
365365
# 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
366366
# the source tree) is used and extra flags are provided to enable
367367
# the SQLite Encryption Extension.
368
-SQLITE3_SRC.1 = sqlite3-see.c
369368
SQLITE3_SRC.0 = sqlite3.c
369
+SQLITE3_SRC.1 = sqlite3-see.c
370370
SQLITE3_SRC. = sqlite3.c
371371
SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
372
+SEE_FLAGS.0 =
372373
SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
373
-SEE_FLAGS.0 =
374
-SEE_FLAGS. =
374
+SEE_FLAGS. =
375375
SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
376376
}]
377377
378378
writeln [string map [list <<<NEXT_LINE>>> \\] {
379379
EXTRAOBJ = <<<NEXT_LINE>>>
@@ -436,11 +436,11 @@
436436
writeln "\$(OBJDIR)/$s.h:\t\$(OBJDIR)/headers\n"
437437
}
438438
439439
writeln "\$(OBJDIR)/sqlite3.o:\t\$(SQLITE3_SRC)"
440440
writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) \$(SEE_FLAGS) \\"
441
-writeln "\t\t-c \$(SQLITE3_SRC) -o $@"
441
+writeln "\t\t-c \$(SQLITE3_SRC) -o \$@"
442442
443443
writeln "\$(OBJDIR)/shell.o:\t\$(SRCDIR)/shell.c \$(SRCDIR)/sqlite3.h"
444444
writeln "\t\$(XTCC) \$(SHELL_OPTIONS) \$(SHELL_CFLAGS) \$(LINENOISE_DEF.\$(USE_LINENOISE)) -c \$(SRCDIR)/shell.c -o \$@\n"
445445
446446
writeln "\$(OBJDIR)/linenoise.o:\t\$(SRCDIR)/linenoise.c \$(SRCDIR)/linenoise.h"
@@ -572,10 +572,14 @@
572572
# FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
573573
574574
#### Use 'system' SQLite
575575
#
576576
# USE_SYSTEM_SQLITE = 1
577
+
578
+#### Use the SQLite Encryption Extension
579
+#
580
+# USE_SEE = 1
577581
578582
#### Use the miniz compression library
579583
#
580584
# FOSSIL_ENABLE_MINIZ = 1
581585
@@ -797,10 +801,16 @@
797801
# With JSON support
798802
ifdef FOSSIL_ENABLE_JSON
799803
TCC += -DFOSSIL_ENABLE_JSON=1
800804
RCC += -DFOSSIL_ENABLE_JSON=1
801805
endif
806
+
807
+# With SQLite Encryption Extension support
808
+ifdef USE_SEE
809
+TCC += -DUSE_SEE=1
810
+RCC += -DUSE_SEE=1
811
+endif
802812
803813
#### The option -static has no effect on MinGW(-w64), only dynamic
804814
# executables can be built when linking with MSVCRT. OpenSSL
805815
# (optional) and zlib (required) however are always linked in
806816
# statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -1012,10 +1022,23 @@
10121022
# set to 1. If it is set to 1, the miniz library included in the
10131023
# source tree should be used; otherwise, it should not.
10141024
MINIZ_OBJ.0 =
10151025
MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
10161026
MINIZ_OBJ. = $(MINIZ_OBJ.0)
1027
+
1028
+# The USE_SEE variable may be undefined, 0 or 1. If undefined or
1029
+# 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
1030
+# the source tree) is used and extra flags are provided to enable
1031
+# the SQLite Encryption Extension.
1032
+SQLITE3_SRC.0 = sqlite3.c
1033
+SQLITE3_SRC.1 = sqlite3-see.c
1034
+SQLITE3_SRC. = sqlite3.c
1035
+SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
1036
+SEE_FLAGS.0 =
1037
+SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
1038
+SEE_FLAGS. =
1039
+SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
10171040
}
10181041
10191042
writeln [string map [list <<<NEXT_LINE>>> \\] {
10201043
EXTRAOBJ = <<<NEXT_LINE>>>
10211044
$(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) <<<NEXT_LINE>>>
@@ -1137,12 +1160,13 @@
11371160
set j " \\\n "
11381161
writeln "SHELL_OPTIONS = [join $SHELL_WIN32_OPTIONS $j]\n"
11391162
set j " \\\n "
11401163
writeln "MINIZ_OPTIONS = [join $MINIZ_WIN32_OPTIONS $j]\n"
11411164
1142
-writeln "\$(OBJDIR)/sqlite3.o:\t\$(SRCDIR)/sqlite3.c \$(SRCDIR)/../win/Makefile.mingw"
1143
-writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) -c \$(SRCDIR)/sqlite3.c -o \$@\n"
1165
+writeln "\$(OBJDIR)/sqlite3.o:\t\$(SQLITE3_SRC) \$(SRCDIR)/../win/Makefile.mingw"
1166
+writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) \$(SEE_FLAGS) \\"
1167
+writeln "\t\t-c \$(SQLITE3_SRC) -o \$@\n"
11441168
11451169
writeln "\$(OBJDIR)/cson_amalgamation.o:\t\$(SRCDIR)/cson_amalgamation.c"
11461170
writeln "\t\$(XTCC) -c \$(SRCDIR)/cson_amalgamation.c -o \$@\n"
11471171
writeln "\$(OBJDIR)/json.o \$(OBJDIR)/json_artifact.o \$(OBJDIR)/json_branch.o \$(OBJDIR)/json_config.o \$(OBJDIR)/json_diff.o \$(OBJDIR)/json_dir.o \$(OBJDIR)/jsos_finfo.o \$(OBJDIR)/json_login.o \$(OBJDIR)/json_query.o \$(OBJDIR)/json_report.o \$(OBJDIR)/json_status.o \$(OBJDIR)/json_tag.o \$(OBJDIR)/json_timeline.o \$(OBJDIR)/json_user.o \$(OBJDIR)/json_wiki.o : \$(SRCDIR)/json_detail.h\n"
11481172
@@ -1429,10 +1453,15 @@
14291453
14301454
# Enable support for Windows XP with Visual Studio 201x?
14311455
!ifndef FOSSIL_ENABLE_WINXP
14321456
FOSSIL_ENABLE_WINXP = 0
14331457
!endif
1458
+
1459
+# Enable support for the SQLite Encryption Extension?
1460
+!ifndef USE_SEE
1461
+USE_SEE = 0
1462
+!endif
14341463
14351464
!if $(FOSSIL_ENABLE_SSL)!=0
14361465
SSLDIR = $(B)\compat\openssl-1.0.2g
14371466
SSLINCDIR = $(SSLDIR)\inc32
14381467
!if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -1638,10 +1667,15 @@
16381667
TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
16391668
RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
16401669
TCC = $(TCC) /DUSE_TCL_STUBS=1
16411670
RCC = $(RCC) /DUSE_TCL_STUBS=1
16421671
!endif
1672
+
1673
+!if $(USE_SEE)!=0
1674
+TCC = $(TCC) /DUSE_SEE=1
1675
+RCC = $(RCC) /DUSE_SEE=1
1676
+!endif
16431677
}
16441678
regsub -all {[-]D} [join $SQLITE_WIN32_OPTIONS { }] {/D} MSC_SQLITE_OPTIONS
16451679
set j " \\\n "
16461680
writeln "SQLITE_OPTIONS = [join $MSC_SQLITE_OPTIONS $j]\n"
16471681
@@ -1774,12 +1808,18 @@
17741808
$(BCC) $**
17751809
17761810
$(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
17771811
$(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
17781812
1779
-$(OX)\sqlite3$O : $(SRCDIR)\sqlite3.c $B\win\Makefile.msc
1780
- $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SRCDIR)\sqlite3.c
1813
+!if $(USE_SEE)!=0
1814
+SQLITE3_SRC = $(SRCDIR)\sqlite3-see.c
1815
+!else
1816
+SQLITE3_SRC = $(SRCDIR)\sqlite3.c
1817
+!endif
1818
+
1819
+$(OX)\sqlite3$O : $(SQLITE3_SRC) $B\win\Makefile.msc
1820
+ $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) $(SQLITE3_SRC)
17811821
17821822
$(OX)\th$O : $(SRCDIR)\th.c
17831823
$(TCC) /Fo$@ -c $**
17841824
17851825
$(OX)\th_lang$O : $(SRCDIR)\th_lang.c
17861826
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -304,11 +304,11 @@
304 $(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
305
306 $(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
307 $(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
308
309 # Run the test suite.
310 # Other flags that can be included in TESTFLAGS are:
311 #
312 # -halt Stop testing after the first failed test
313 # -keep Keep the temporary workspace for debugging
314 # -prot Write a detailed log of the tests to the file ./prot
@@ -363,17 +363,17 @@
363
364 # The USE_SEE variable may be undefined, 0 or 1. If undefined or
365 # 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
366 # the source tree) is used and extra flags are provided to enable
367 # the SQLite Encryption Extension.
368 SQLITE3_SRC.1 = sqlite3-see.c
369 SQLITE3_SRC.0 = sqlite3.c
 
370 SQLITE3_SRC. = sqlite3.c
371 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
 
372 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
373 SEE_FLAGS.0 =
374 SEE_FLAGS. =
375 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
376 }]
377
378 writeln [string map [list <<<NEXT_LINE>>> \\] {
379 EXTRAOBJ = <<<NEXT_LINE>>>
@@ -436,11 +436,11 @@
436 writeln "\$(OBJDIR)/$s.h:\t\$(OBJDIR)/headers\n"
437 }
438
439 writeln "\$(OBJDIR)/sqlite3.o:\t\$(SQLITE3_SRC)"
440 writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) \$(SEE_FLAGS) \\"
441 writeln "\t\t-c \$(SQLITE3_SRC) -o $@"
442
443 writeln "\$(OBJDIR)/shell.o:\t\$(SRCDIR)/shell.c \$(SRCDIR)/sqlite3.h"
444 writeln "\t\$(XTCC) \$(SHELL_OPTIONS) \$(SHELL_CFLAGS) \$(LINENOISE_DEF.\$(USE_LINENOISE)) -c \$(SRCDIR)/shell.c -o \$@\n"
445
446 writeln "\$(OBJDIR)/linenoise.o:\t\$(SRCDIR)/linenoise.c \$(SRCDIR)/linenoise.h"
@@ -572,10 +572,14 @@
572 # FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
573
574 #### Use 'system' SQLite
575 #
576 # USE_SYSTEM_SQLITE = 1
 
 
 
 
577
578 #### Use the miniz compression library
579 #
580 # FOSSIL_ENABLE_MINIZ = 1
581
@@ -797,10 +801,16 @@
797 # With JSON support
798 ifdef FOSSIL_ENABLE_JSON
799 TCC += -DFOSSIL_ENABLE_JSON=1
800 RCC += -DFOSSIL_ENABLE_JSON=1
801 endif
 
 
 
 
 
 
802
803 #### The option -static has no effect on MinGW(-w64), only dynamic
804 # executables can be built when linking with MSVCRT. OpenSSL
805 # (optional) and zlib (required) however are always linked in
806 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -1012,10 +1022,23 @@
1012 # set to 1. If it is set to 1, the miniz library included in the
1013 # source tree should be used; otherwise, it should not.
1014 MINIZ_OBJ.0 =
1015 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
1016 MINIZ_OBJ. = $(MINIZ_OBJ.0)
 
 
 
 
 
 
 
 
 
 
 
 
 
1017 }
1018
1019 writeln [string map [list <<<NEXT_LINE>>> \\] {
1020 EXTRAOBJ = <<<NEXT_LINE>>>
1021 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) <<<NEXT_LINE>>>
@@ -1137,12 +1160,13 @@
1137 set j " \\\n "
1138 writeln "SHELL_OPTIONS = [join $SHELL_WIN32_OPTIONS $j]\n"
1139 set j " \\\n "
1140 writeln "MINIZ_OPTIONS = [join $MINIZ_WIN32_OPTIONS $j]\n"
1141
1142 writeln "\$(OBJDIR)/sqlite3.o:\t\$(SRCDIR)/sqlite3.c \$(SRCDIR)/../win/Makefile.mingw"
1143 writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) -c \$(SRCDIR)/sqlite3.c -o \$@\n"
 
1144
1145 writeln "\$(OBJDIR)/cson_amalgamation.o:\t\$(SRCDIR)/cson_amalgamation.c"
1146 writeln "\t\$(XTCC) -c \$(SRCDIR)/cson_amalgamation.c -o \$@\n"
1147 writeln "\$(OBJDIR)/json.o \$(OBJDIR)/json_artifact.o \$(OBJDIR)/json_branch.o \$(OBJDIR)/json_config.o \$(OBJDIR)/json_diff.o \$(OBJDIR)/json_dir.o \$(OBJDIR)/jsos_finfo.o \$(OBJDIR)/json_login.o \$(OBJDIR)/json_query.o \$(OBJDIR)/json_report.o \$(OBJDIR)/json_status.o \$(OBJDIR)/json_tag.o \$(OBJDIR)/json_timeline.o \$(OBJDIR)/json_user.o \$(OBJDIR)/json_wiki.o : \$(SRCDIR)/json_detail.h\n"
1148
@@ -1429,10 +1453,15 @@
1429
1430 # Enable support for Windows XP with Visual Studio 201x?
1431 !ifndef FOSSIL_ENABLE_WINXP
1432 FOSSIL_ENABLE_WINXP = 0
1433 !endif
 
 
 
 
 
1434
1435 !if $(FOSSIL_ENABLE_SSL)!=0
1436 SSLDIR = $(B)\compat\openssl-1.0.2g
1437 SSLINCDIR = $(SSLDIR)\inc32
1438 !if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -1638,10 +1667,15 @@
1638 TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
1639 RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
1640 TCC = $(TCC) /DUSE_TCL_STUBS=1
1641 RCC = $(RCC) /DUSE_TCL_STUBS=1
1642 !endif
 
 
 
 
 
1643 }
1644 regsub -all {[-]D} [join $SQLITE_WIN32_OPTIONS { }] {/D} MSC_SQLITE_OPTIONS
1645 set j " \\\n "
1646 writeln "SQLITE_OPTIONS = [join $MSC_SQLITE_OPTIONS $j]\n"
1647
@@ -1774,12 +1808,18 @@
1774 $(BCC) $**
1775
1776 $(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
1777 $(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
1778
1779 $(OX)\sqlite3$O : $(SRCDIR)\sqlite3.c $B\win\Makefile.msc
1780 $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SRCDIR)\sqlite3.c
 
 
 
 
 
 
1781
1782 $(OX)\th$O : $(SRCDIR)\th.c
1783 $(TCC) /Fo$@ -c $**
1784
1785 $(OX)\th_lang$O : $(SRCDIR)\th_lang.c
1786
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -304,11 +304,11 @@
304 $(BCC) -o $(OBJDIR)/mkversion $(SRCDIR)/mkversion.c
305
306 $(OBJDIR)/codecheck1: $(SRCDIR)/codecheck1.c
307 $(BCC) -o $(OBJDIR)/codecheck1 $(SRCDIR)/codecheck1.c
308
309 # Run the test suite.
310 # Other flags that can be included in TESTFLAGS are:
311 #
312 # -halt Stop testing after the first failed test
313 # -keep Keep the temporary workspace for debugging
314 # -prot Write a detailed log of the tests to the file ./prot
@@ -363,17 +363,17 @@
363
364 # The USE_SEE variable may be undefined, 0 or 1. If undefined or
365 # 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
366 # the source tree) is used and extra flags are provided to enable
367 # the SQLite Encryption Extension.
 
368 SQLITE3_SRC.0 = sqlite3.c
369 SQLITE3_SRC.1 = sqlite3-see.c
370 SQLITE3_SRC. = sqlite3.c
371 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
372 SEE_FLAGS.0 =
373 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
374 SEE_FLAGS. =
 
375 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
376 }]
377
378 writeln [string map [list <<<NEXT_LINE>>> \\] {
379 EXTRAOBJ = <<<NEXT_LINE>>>
@@ -436,11 +436,11 @@
436 writeln "\$(OBJDIR)/$s.h:\t\$(OBJDIR)/headers\n"
437 }
438
439 writeln "\$(OBJDIR)/sqlite3.o:\t\$(SQLITE3_SRC)"
440 writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) \$(SEE_FLAGS) \\"
441 writeln "\t\t-c \$(SQLITE3_SRC) -o \$@"
442
443 writeln "\$(OBJDIR)/shell.o:\t\$(SRCDIR)/shell.c \$(SRCDIR)/sqlite3.h"
444 writeln "\t\$(XTCC) \$(SHELL_OPTIONS) \$(SHELL_CFLAGS) \$(LINENOISE_DEF.\$(USE_LINENOISE)) -c \$(SRCDIR)/shell.c -o \$@\n"
445
446 writeln "\$(OBJDIR)/linenoise.o:\t\$(SRCDIR)/linenoise.c \$(SRCDIR)/linenoise.h"
@@ -572,10 +572,14 @@
572 # FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
573
574 #### Use 'system' SQLite
575 #
576 # USE_SYSTEM_SQLITE = 1
577
578 #### Use the SQLite Encryption Extension
579 #
580 # USE_SEE = 1
581
582 #### Use the miniz compression library
583 #
584 # FOSSIL_ENABLE_MINIZ = 1
585
@@ -797,10 +801,16 @@
801 # With JSON support
802 ifdef FOSSIL_ENABLE_JSON
803 TCC += -DFOSSIL_ENABLE_JSON=1
804 RCC += -DFOSSIL_ENABLE_JSON=1
805 endif
806
807 # With SQLite Encryption Extension support
808 ifdef USE_SEE
809 TCC += -DUSE_SEE=1
810 RCC += -DUSE_SEE=1
811 endif
812
813 #### The option -static has no effect on MinGW(-w64), only dynamic
814 # executables can be built when linking with MSVCRT. OpenSSL
815 # (optional) and zlib (required) however are always linked in
816 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -1012,10 +1022,23 @@
1022 # set to 1. If it is set to 1, the miniz library included in the
1023 # source tree should be used; otherwise, it should not.
1024 MINIZ_OBJ.0 =
1025 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
1026 MINIZ_OBJ. = $(MINIZ_OBJ.0)
1027
1028 # The USE_SEE variable may be undefined, 0 or 1. If undefined or
1029 # 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
1030 # the source tree) is used and extra flags are provided to enable
1031 # the SQLite Encryption Extension.
1032 SQLITE3_SRC.0 = sqlite3.c
1033 SQLITE3_SRC.1 = sqlite3-see.c
1034 SQLITE3_SRC. = sqlite3.c
1035 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
1036 SEE_FLAGS.0 =
1037 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
1038 SEE_FLAGS. =
1039 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
1040 }
1041
1042 writeln [string map [list <<<NEXT_LINE>>> \\] {
1043 EXTRAOBJ = <<<NEXT_LINE>>>
1044 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) <<<NEXT_LINE>>>
@@ -1137,12 +1160,13 @@
1160 set j " \\\n "
1161 writeln "SHELL_OPTIONS = [join $SHELL_WIN32_OPTIONS $j]\n"
1162 set j " \\\n "
1163 writeln "MINIZ_OPTIONS = [join $MINIZ_WIN32_OPTIONS $j]\n"
1164
1165 writeln "\$(OBJDIR)/sqlite3.o:\t\$(SQLITE3_SRC) \$(SRCDIR)/../win/Makefile.mingw"
1166 writeln "\t\$(XTCC) \$(SQLITE_OPTIONS) \$(SQLITE_CFLAGS) \$(SEE_FLAGS) \\"
1167 writeln "\t\t-c \$(SQLITE3_SRC) -o \$@\n"
1168
1169 writeln "\$(OBJDIR)/cson_amalgamation.o:\t\$(SRCDIR)/cson_amalgamation.c"
1170 writeln "\t\$(XTCC) -c \$(SRCDIR)/cson_amalgamation.c -o \$@\n"
1171 writeln "\$(OBJDIR)/json.o \$(OBJDIR)/json_artifact.o \$(OBJDIR)/json_branch.o \$(OBJDIR)/json_config.o \$(OBJDIR)/json_diff.o \$(OBJDIR)/json_dir.o \$(OBJDIR)/jsos_finfo.o \$(OBJDIR)/json_login.o \$(OBJDIR)/json_query.o \$(OBJDIR)/json_report.o \$(OBJDIR)/json_status.o \$(OBJDIR)/json_tag.o \$(OBJDIR)/json_timeline.o \$(OBJDIR)/json_user.o \$(OBJDIR)/json_wiki.o : \$(SRCDIR)/json_detail.h\n"
1172
@@ -1429,10 +1453,15 @@
1453
1454 # Enable support for Windows XP with Visual Studio 201x?
1455 !ifndef FOSSIL_ENABLE_WINXP
1456 FOSSIL_ENABLE_WINXP = 0
1457 !endif
1458
1459 # Enable support for the SQLite Encryption Extension?
1460 !ifndef USE_SEE
1461 USE_SEE = 0
1462 !endif
1463
1464 !if $(FOSSIL_ENABLE_SSL)!=0
1465 SSLDIR = $(B)\compat\openssl-1.0.2g
1466 SSLINCDIR = $(SSLDIR)\inc32
1467 !if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -1638,10 +1667,15 @@
1667 TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
1668 RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
1669 TCC = $(TCC) /DUSE_TCL_STUBS=1
1670 RCC = $(RCC) /DUSE_TCL_STUBS=1
1671 !endif
1672
1673 !if $(USE_SEE)!=0
1674 TCC = $(TCC) /DUSE_SEE=1
1675 RCC = $(RCC) /DUSE_SEE=1
1676 !endif
1677 }
1678 regsub -all {[-]D} [join $SQLITE_WIN32_OPTIONS { }] {/D} MSC_SQLITE_OPTIONS
1679 set j " \\\n "
1680 writeln "SQLITE_OPTIONS = [join $MSC_SQLITE_OPTIONS $j]\n"
1681
@@ -1774,12 +1808,18 @@
1808 $(BCC) $**
1809
1810 $(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
1811 $(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
1812
1813 !if $(USE_SEE)!=0
1814 SQLITE3_SRC = $(SRCDIR)\sqlite3-see.c
1815 !else
1816 SQLITE3_SRC = $(SRCDIR)\sqlite3.c
1817 !endif
1818
1819 $(OX)\sqlite3$O : $(SQLITE3_SRC) $B\win\Makefile.msc
1820 $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) $(SQLITE3_SRC)
1821
1822 $(OX)\th$O : $(SRCDIR)\th.c
1823 $(TCC) /Fo$@ -c $**
1824
1825 $(OX)\th_lang$O : $(SRCDIR)\th_lang.c
1826
--- src/th_main.c
+++ src/th_main.c
@@ -728,10 +728,11 @@
728728
** "tclPrivateStubs" = FOSSIL_ENABLE_TCL_PRIVATE_STUBS
729729
** "json" = FOSSIL_ENABLE_JSON
730730
** "markdown" = FOSSIL_ENABLE_MARKDOWN
731731
** "unicodeCmdLine" = !BROKEN_MINGW_CMDLINE
732732
** "dynamicBuild" = FOSSIL_DYNAMIC_BUILD
733
+** "see" = USE_SEE
733734
**
734735
** Specifying an unknown feature will return a value of false, it will not
735736
** raise a script error.
736737
*/
737738
static int hasfeatureCmd(
@@ -807,10 +808,15 @@
807808
#endif
808809
#if defined(FOSSIL_DYNAMIC_BUILD)
809810
else if( 0 == fossil_strnicmp( zArg, "dynamicBuild\0", 13 ) ){
810811
rc = 1;
811812
}
813
+#endif
814
+#if defined(USE_SEE)
815
+ else if( 0 == fossil_strnicmp( zArg, "see\0", 4 ) ){
816
+ rc = 1;
817
+ }
812818
#endif
813819
else if( 0 == fossil_strnicmp( zArg, "markdown\0", 9 ) ){
814820
rc = 1;
815821
}
816822
if( g.thTrace ){
817823
--- src/th_main.c
+++ src/th_main.c
@@ -728,10 +728,11 @@
728 ** "tclPrivateStubs" = FOSSIL_ENABLE_TCL_PRIVATE_STUBS
729 ** "json" = FOSSIL_ENABLE_JSON
730 ** "markdown" = FOSSIL_ENABLE_MARKDOWN
731 ** "unicodeCmdLine" = !BROKEN_MINGW_CMDLINE
732 ** "dynamicBuild" = FOSSIL_DYNAMIC_BUILD
 
733 **
734 ** Specifying an unknown feature will return a value of false, it will not
735 ** raise a script error.
736 */
737 static int hasfeatureCmd(
@@ -807,10 +808,15 @@
807 #endif
808 #if defined(FOSSIL_DYNAMIC_BUILD)
809 else if( 0 == fossil_strnicmp( zArg, "dynamicBuild\0", 13 ) ){
810 rc = 1;
811 }
 
 
 
 
 
812 #endif
813 else if( 0 == fossil_strnicmp( zArg, "markdown\0", 9 ) ){
814 rc = 1;
815 }
816 if( g.thTrace ){
817
--- src/th_main.c
+++ src/th_main.c
@@ -728,10 +728,11 @@
728 ** "tclPrivateStubs" = FOSSIL_ENABLE_TCL_PRIVATE_STUBS
729 ** "json" = FOSSIL_ENABLE_JSON
730 ** "markdown" = FOSSIL_ENABLE_MARKDOWN
731 ** "unicodeCmdLine" = !BROKEN_MINGW_CMDLINE
732 ** "dynamicBuild" = FOSSIL_DYNAMIC_BUILD
733 ** "see" = USE_SEE
734 **
735 ** Specifying an unknown feature will return a value of false, it will not
736 ** raise a script error.
737 */
738 static int hasfeatureCmd(
@@ -807,10 +808,15 @@
808 #endif
809 #if defined(FOSSIL_DYNAMIC_BUILD)
810 else if( 0 == fossil_strnicmp( zArg, "dynamicBuild\0", 13 ) ){
811 rc = 1;
812 }
813 #endif
814 #if defined(USE_SEE)
815 else if( 0 == fossil_strnicmp( zArg, "see\0", 4 ) ){
816 rc = 1;
817 }
818 #endif
819 else if( 0 == fossil_strnicmp( zArg, "markdown\0", 9 ) ){
820 rc = 1;
821 }
822 if( g.thTrace ){
823
--- win/Makefile.mingw
+++ win/Makefile.mingw
@@ -88,10 +88,14 @@
8888
# FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
8989
9090
#### Use 'system' SQLite
9191
#
9292
# USE_SYSTEM_SQLITE = 1
93
+
94
+#### Use the SQLite Encryption Extension
95
+#
96
+# USE_SEE = 1
9397
9498
#### Use the miniz compression library
9599
#
96100
# FOSSIL_ENABLE_MINIZ = 1
97101
@@ -313,10 +317,16 @@
313317
# With JSON support
314318
ifdef FOSSIL_ENABLE_JSON
315319
TCC += -DFOSSIL_ENABLE_JSON=1
316320
RCC += -DFOSSIL_ENABLE_JSON=1
317321
endif
322
+
323
+# With SQLite Encryption Extension support
324
+ifdef USE_SEE
325
+TCC += -DUSE_SEE=1
326
+RCC += -DUSE_SEE=1
327
+endif
318328
319329
#### The option -static has no effect on MinGW(-w64), only dynamic
320330
# executables can be built when linking with MSVCRT. OpenSSL
321331
# (optional) and zlib (required) however are always linked in
322332
# statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
921931
# set to 1. If it is set to 1, the miniz library included in the
922932
# source tree should be used; otherwise, it should not.
923933
MINIZ_OBJ.0 =
924934
MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
925935
MINIZ_OBJ. = $(MINIZ_OBJ.0)
936
+
937
+# The USE_SEE variable may be undefined, 0 or 1. If undefined or
938
+# 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
939
+# the source tree) is used and extra flags are provided to enable
940
+# the SQLite Encryption Extension.
941
+SQLITE3_SRC.1 = sqlite3-see.c
942
+SQLITE3_SRC.0 = sqlite3.c
943
+SQLITE3_SRC. = sqlite3.c
944
+SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
945
+SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
946
+SEE_FLAGS.0 =
947
+SEE_FLAGS. =
948
+SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
926949
927950
928951
EXTRAOBJ = \
929952
$(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
930953
$(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
21132136
21142137
MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
21152138
-DMINIZ_NO_TIME \
21162139
-DMINIZ_NO_ARCHIVE_APIS
21172140
2118
-$(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c $(SRCDIR)/../win/Makefile.mingw
2119
- $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) -c $(SRCDIR)/sqlite3.c -o $@
2141
+$(OBJDIR)/sqlite3.o: $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw
2142
+ $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
2143
+ -c $(SQLITE3_SRC) -o $@
21202144
21212145
$(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
21222146
$(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
21232147
21242148
$(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
21252149
--- win/Makefile.mingw
+++ win/Makefile.mingw
@@ -88,10 +88,14 @@
88 # FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
89
90 #### Use 'system' SQLite
91 #
92 # USE_SYSTEM_SQLITE = 1
 
 
 
 
93
94 #### Use the miniz compression library
95 #
96 # FOSSIL_ENABLE_MINIZ = 1
97
@@ -313,10 +317,16 @@
313 # With JSON support
314 ifdef FOSSIL_ENABLE_JSON
315 TCC += -DFOSSIL_ENABLE_JSON=1
316 RCC += -DFOSSIL_ENABLE_JSON=1
317 endif
 
 
 
 
 
 
318
319 #### The option -static has no effect on MinGW(-w64), only dynamic
320 # executables can be built when linking with MSVCRT. OpenSSL
321 # (optional) and zlib (required) however are always linked in
322 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
921 # set to 1. If it is set to 1, the miniz library included in the
922 # source tree should be used; otherwise, it should not.
923 MINIZ_OBJ.0 =
924 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
925 MINIZ_OBJ. = $(MINIZ_OBJ.0)
 
 
 
 
 
 
 
 
 
 
 
 
 
926
927
928 EXTRAOBJ = \
929 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
930 $(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
2113
2114 MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
2115 -DMINIZ_NO_TIME \
2116 -DMINIZ_NO_ARCHIVE_APIS
2117
2118 $(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c $(SRCDIR)/../win/Makefile.mingw
2119 $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) -c $(SRCDIR)/sqlite3.c -o $@
 
2120
2121 $(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
2122 $(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
2123
2124 $(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
2125
--- win/Makefile.mingw
+++ win/Makefile.mingw
@@ -88,10 +88,14 @@
88 # FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
89
90 #### Use 'system' SQLite
91 #
92 # USE_SYSTEM_SQLITE = 1
93
94 #### Use the SQLite Encryption Extension
95 #
96 # USE_SEE = 1
97
98 #### Use the miniz compression library
99 #
100 # FOSSIL_ENABLE_MINIZ = 1
101
@@ -313,10 +317,16 @@
317 # With JSON support
318 ifdef FOSSIL_ENABLE_JSON
319 TCC += -DFOSSIL_ENABLE_JSON=1
320 RCC += -DFOSSIL_ENABLE_JSON=1
321 endif
322
323 # With SQLite Encryption Extension support
324 ifdef USE_SEE
325 TCC += -DUSE_SEE=1
326 RCC += -DUSE_SEE=1
327 endif
328
329 #### The option -static has no effect on MinGW(-w64), only dynamic
330 # executables can be built when linking with MSVCRT. OpenSSL
331 # (optional) and zlib (required) however are always linked in
332 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
931 # set to 1. If it is set to 1, the miniz library included in the
932 # source tree should be used; otherwise, it should not.
933 MINIZ_OBJ.0 =
934 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
935 MINIZ_OBJ. = $(MINIZ_OBJ.0)
936
937 # The USE_SEE variable may be undefined, 0 or 1. If undefined or
938 # 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
939 # the source tree) is used and extra flags are provided to enable
940 # the SQLite Encryption Extension.
941 SQLITE3_SRC.1 = sqlite3-see.c
942 SQLITE3_SRC.0 = sqlite3.c
943 SQLITE3_SRC. = sqlite3.c
944 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
945 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
946 SEE_FLAGS.0 =
947 SEE_FLAGS. =
948 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
949
950
951 EXTRAOBJ = \
952 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
953 $(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
2136
2137 MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
2138 -DMINIZ_NO_TIME \
2139 -DMINIZ_NO_ARCHIVE_APIS
2140
2141 $(OBJDIR)/sqlite3.o: $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw
2142 $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
2143 -c $(SQLITE3_SRC) -o $@
2144
2145 $(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
2146 $(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
2147
2148 $(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
2149
--- win/Makefile.mingw.mistachkin
+++ win/Makefile.mingw.mistachkin
@@ -88,10 +88,14 @@
8888
FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
8989
9090
#### Use 'system' SQLite
9191
#
9292
# USE_SYSTEM_SQLITE = 1
93
+
94
+#### Use the SQLite Encryption Extension
95
+#
96
+# USE_SEE = 1
9397
9498
#### Use the miniz compression library
9599
#
96100
# FOSSIL_ENABLE_MINIZ = 1
97101
@@ -313,10 +317,16 @@
313317
# With JSON support
314318
ifdef FOSSIL_ENABLE_JSON
315319
TCC += -DFOSSIL_ENABLE_JSON=1
316320
RCC += -DFOSSIL_ENABLE_JSON=1
317321
endif
322
+
323
+# With SQLite Encryption Extension support
324
+ifdef USE_SEE
325
+TCC += -DUSE_SEE=1
326
+RCC += -DUSE_SEE=1
327
+endif
318328
319329
#### The option -static has no effect on MinGW(-w64), only dynamic
320330
# executables can be built when linking with MSVCRT. OpenSSL
321331
# (optional) and zlib (required) however are always linked in
322332
# statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
921931
# set to 1. If it is set to 1, the miniz library included in the
922932
# source tree should be used; otherwise, it should not.
923933
MINIZ_OBJ.0 =
924934
MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
925935
MINIZ_OBJ. = $(MINIZ_OBJ.0)
936
+
937
+# The USE_SEE variable may be undefined, 0 or 1. If undefined or
938
+# 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
939
+# the source tree) is used and extra flags are provided to enable
940
+# the SQLite Encryption Extension.
941
+SQLITE3_SRC.1 = sqlite3-see.c
942
+SQLITE3_SRC.0 = sqlite3.c
943
+SQLITE3_SRC. = sqlite3.c
944
+SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
945
+SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
946
+SEE_FLAGS.0 =
947
+SEE_FLAGS. =
948
+SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
926949
927950
928951
EXTRAOBJ = \
929952
$(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
930953
$(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
21132136
21142137
MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
21152138
-DMINIZ_NO_TIME \
21162139
-DMINIZ_NO_ARCHIVE_APIS
21172140
2118
-$(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c $(SRCDIR)/../win/Makefile.mingw.mistachkin
2119
- $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) -c $(SRCDIR)/sqlite3.c -o $@
2141
+$(OBJDIR)/sqlite3.o: $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw.mistachkin
2142
+ $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
2143
+ -c $(SQLITE3_SRC) -o $@
21202144
21212145
$(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
21222146
$(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
21232147
21242148
$(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
21252149
--- win/Makefile.mingw.mistachkin
+++ win/Makefile.mingw.mistachkin
@@ -88,10 +88,14 @@
88 FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
89
90 #### Use 'system' SQLite
91 #
92 # USE_SYSTEM_SQLITE = 1
 
 
 
 
93
94 #### Use the miniz compression library
95 #
96 # FOSSIL_ENABLE_MINIZ = 1
97
@@ -313,10 +317,16 @@
313 # With JSON support
314 ifdef FOSSIL_ENABLE_JSON
315 TCC += -DFOSSIL_ENABLE_JSON=1
316 RCC += -DFOSSIL_ENABLE_JSON=1
317 endif
 
 
 
 
 
 
318
319 #### The option -static has no effect on MinGW(-w64), only dynamic
320 # executables can be built when linking with MSVCRT. OpenSSL
321 # (optional) and zlib (required) however are always linked in
322 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
921 # set to 1. If it is set to 1, the miniz library included in the
922 # source tree should be used; otherwise, it should not.
923 MINIZ_OBJ.0 =
924 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
925 MINIZ_OBJ. = $(MINIZ_OBJ.0)
 
 
 
 
 
 
 
 
 
 
 
 
 
926
927
928 EXTRAOBJ = \
929 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
930 $(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
2113
2114 MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
2115 -DMINIZ_NO_TIME \
2116 -DMINIZ_NO_ARCHIVE_APIS
2117
2118 $(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c $(SRCDIR)/../win/Makefile.mingw.mistachkin
2119 $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) -c $(SRCDIR)/sqlite3.c -o $@
 
2120
2121 $(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
2122 $(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
2123
2124 $(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
2125
--- win/Makefile.mingw.mistachkin
+++ win/Makefile.mingw.mistachkin
@@ -88,10 +88,14 @@
88 FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
89
90 #### Use 'system' SQLite
91 #
92 # USE_SYSTEM_SQLITE = 1
93
94 #### Use the SQLite Encryption Extension
95 #
96 # USE_SEE = 1
97
98 #### Use the miniz compression library
99 #
100 # FOSSIL_ENABLE_MINIZ = 1
101
@@ -313,10 +317,16 @@
317 # With JSON support
318 ifdef FOSSIL_ENABLE_JSON
319 TCC += -DFOSSIL_ENABLE_JSON=1
320 RCC += -DFOSSIL_ENABLE_JSON=1
321 endif
322
323 # With SQLite Encryption Extension support
324 ifdef USE_SEE
325 TCC += -DUSE_SEE=1
326 RCC += -DUSE_SEE=1
327 endif
328
329 #### The option -static has no effect on MinGW(-w64), only dynamic
330 # executables can be built when linking with MSVCRT. OpenSSL
331 # (optional) and zlib (required) however are always linked in
332 # statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
@@ -921,10 +931,23 @@
931 # set to 1. If it is set to 1, the miniz library included in the
932 # source tree should be used; otherwise, it should not.
933 MINIZ_OBJ.0 =
934 MINIZ_OBJ.1 = $(OBJDIR)/miniz.o
935 MINIZ_OBJ. = $(MINIZ_OBJ.0)
936
937 # The USE_SEE variable may be undefined, 0 or 1. If undefined or
938 # 0, ordinary SQLite is used. If 1, then sqlite3-see.c (not part of
939 # the source tree) is used and extra flags are provided to enable
940 # the SQLite Encryption Extension.
941 SQLITE3_SRC.1 = sqlite3-see.c
942 SQLITE3_SRC.0 = sqlite3.c
943 SQLITE3_SRC. = sqlite3.c
944 SQLITE3_SRC = $(SRCDIR)/$(SQLITE3_SRC.$(USE_SEE))
945 SEE_FLAGS.1 = -DSQLITE_HAS_CODEC
946 SEE_FLAGS.0 =
947 SEE_FLAGS. =
948 SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
949
950
951 EXTRAOBJ = \
952 $(SQLITE3_OBJ.$(USE_SYSTEM_SQLITE)) \
953 $(MINIZ_OBJ.$(FOSSIL_ENABLE_MINIZ)) \
@@ -2113,12 +2136,13 @@
2136
2137 MINIZ_OPTIONS = -DMINIZ_NO_STDIO \
2138 -DMINIZ_NO_TIME \
2139 -DMINIZ_NO_ARCHIVE_APIS
2140
2141 $(OBJDIR)/sqlite3.o: $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw.mistachkin
2142 $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
2143 -c $(SQLITE3_SRC) -o $@
2144
2145 $(OBJDIR)/cson_amalgamation.o: $(SRCDIR)/cson_amalgamation.c
2146 $(XTCC) -c $(SRCDIR)/cson_amalgamation.c -o $@
2147
2148 $(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
2149
+18 -2
--- win/Makefile.msc
+++ win/Makefile.msc
@@ -91,10 +91,15 @@
9191
9292
# Enable support for Windows XP with Visual Studio 201x?
9393
!ifndef FOSSIL_ENABLE_WINXP
9494
FOSSIL_ENABLE_WINXP = 0
9595
!endif
96
+
97
+# Enable support for the SQLite Encryption Extension?
98
+!ifndef USE_SEE
99
+USE_SEE = 0
100
+!endif
96101
97102
!if $(FOSSIL_ENABLE_SSL)!=0
98103
SSLDIR = $(B)\compat\openssl-1.0.2g
99104
SSLINCDIR = $(SSLDIR)\inc32
100105
!if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -300,10 +305,15 @@
300305
TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
301306
RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
302307
TCC = $(TCC) /DUSE_TCL_STUBS=1
303308
RCC = $(RCC) /DUSE_TCL_STUBS=1
304309
!endif
310
+
311
+!if $(USE_SEE)!=0
312
+TCC = $(TCC) /DUSE_SEE=1
313
+RCC = $(RCC) /DUSE_SEE=1
314
+!endif
305315
306316
SQLITE_OPTIONS = /DNDEBUG=1 \
307317
/DSQLITE_OMIT_LOAD_EXTENSION=1 \
308318
/DSQLITE_ENABLE_LOCKING_STYLE=0 \
309319
/DSQLITE_THREADSAFE=0 \
@@ -833,12 +843,18 @@
833843
$(BCC) $**
834844
835845
$(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
836846
$(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
837847
838
-$(OX)\sqlite3$O : $(SRCDIR)\sqlite3.c $B\win\Makefile.msc
839
- $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SRCDIR)\sqlite3.c
848
+!if $(USE_SEE)!=0
849
+SQLITE3_SRC = $(SRCDIR)\sqlite3-see.c
850
+!else
851
+SQLITE3_SRC = $(SRCDIR)\sqlite3.c
852
+!endif
853
+
854
+$(OX)\sqlite3$O : $(SQLITE3_SRC) $B\win\Makefile.msc
855
+ $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) $(SQLITE3_SRC)
840856
841857
$(OX)\th$O : $(SRCDIR)\th.c
842858
$(TCC) /Fo$@ -c $**
843859
844860
$(OX)\th_lang$O : $(SRCDIR)\th_lang.c
845861
--- win/Makefile.msc
+++ win/Makefile.msc
@@ -91,10 +91,15 @@
91
92 # Enable support for Windows XP with Visual Studio 201x?
93 !ifndef FOSSIL_ENABLE_WINXP
94 FOSSIL_ENABLE_WINXP = 0
95 !endif
 
 
 
 
 
96
97 !if $(FOSSIL_ENABLE_SSL)!=0
98 SSLDIR = $(B)\compat\openssl-1.0.2g
99 SSLINCDIR = $(SSLDIR)\inc32
100 !if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -300,10 +305,15 @@
300 TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
301 RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
302 TCC = $(TCC) /DUSE_TCL_STUBS=1
303 RCC = $(RCC) /DUSE_TCL_STUBS=1
304 !endif
 
 
 
 
 
305
306 SQLITE_OPTIONS = /DNDEBUG=1 \
307 /DSQLITE_OMIT_LOAD_EXTENSION=1 \
308 /DSQLITE_ENABLE_LOCKING_STYLE=0 \
309 /DSQLITE_THREADSAFE=0 \
@@ -833,12 +843,18 @@
833 $(BCC) $**
834
835 $(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
836 $(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
837
838 $(OX)\sqlite3$O : $(SRCDIR)\sqlite3.c $B\win\Makefile.msc
839 $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SRCDIR)\sqlite3.c
 
 
 
 
 
 
840
841 $(OX)\th$O : $(SRCDIR)\th.c
842 $(TCC) /Fo$@ -c $**
843
844 $(OX)\th_lang$O : $(SRCDIR)\th_lang.c
845
--- win/Makefile.msc
+++ win/Makefile.msc
@@ -91,10 +91,15 @@
91
92 # Enable support for Windows XP with Visual Studio 201x?
93 !ifndef FOSSIL_ENABLE_WINXP
94 FOSSIL_ENABLE_WINXP = 0
95 !endif
96
97 # Enable support for the SQLite Encryption Extension?
98 !ifndef USE_SEE
99 USE_SEE = 0
100 !endif
101
102 !if $(FOSSIL_ENABLE_SSL)!=0
103 SSLDIR = $(B)\compat\openssl-1.0.2g
104 SSLINCDIR = $(SSLDIR)\inc32
105 !if $(FOSSIL_DYNAMIC_BUILD)!=0
@@ -300,10 +305,15 @@
305 TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
306 RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
307 TCC = $(TCC) /DUSE_TCL_STUBS=1
308 RCC = $(RCC) /DUSE_TCL_STUBS=1
309 !endif
310
311 !if $(USE_SEE)!=0
312 TCC = $(TCC) /DUSE_SEE=1
313 RCC = $(RCC) /DUSE_SEE=1
314 !endif
315
316 SQLITE_OPTIONS = /DNDEBUG=1 \
317 /DSQLITE_OMIT_LOAD_EXTENSION=1 \
318 /DSQLITE_ENABLE_LOCKING_STYLE=0 \
319 /DSQLITE_THREADSAFE=0 \
@@ -833,12 +843,18 @@
843 $(BCC) $**
844
845 $(OX)\shell$O : $(SRCDIR)\shell.c $B\win\Makefile.msc
846 $(TCC) /Fo$@ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) -c $(SRCDIR)\shell.c
847
848 !if $(USE_SEE)!=0
849 SQLITE3_SRC = $(SRCDIR)\sqlite3-see.c
850 !else
851 SQLITE3_SRC = $(SRCDIR)\sqlite3.c
852 !endif
853
854 $(OX)\sqlite3$O : $(SQLITE3_SRC) $B\win\Makefile.msc
855 $(TCC) /Fo$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) $(SQLITE3_SRC)
856
857 $(OX)\th$O : $(SRCDIR)\th.c
858 $(TCC) /Fo$@ -c $**
859
860 $(OX)\th_lang$O : $(SRCDIR)\th_lang.c
861
--- win/fossil.rc
+++ win/fossil.rc
@@ -161,10 +161,15 @@
161161
#endif /* defined(FOSSIL_ENABLE_TCL_PRIVATE_STUBS) */
162162
#endif /* defined(FOSSIL_ENABLE_TCL) */
163163
#if defined(FOSSIL_ENABLE_JSON)
164164
VALUE "JsonEnabled", "Yes, cson " FOSSIL_JSON_API_VERSION "\0"
165165
#endif /* defined(FOSSIL_ENABLE_JSON) */
166
+#if defined(USE_SEE)
167
+ VALUE "UseSeeEnabled", "Yes\0"
168
+#else
169
+ VALUE "UseSeeEnabled", "No\0"
170
+#endif /* defined(USE_SEE) */
166171
VALUE "MarkdownEnabled", "Yes\0"
167172
END
168173
END
169174
BLOCK "VarFileInfo"
170175
BEGIN
171176
--- win/fossil.rc
+++ win/fossil.rc
@@ -161,10 +161,15 @@
161 #endif /* defined(FOSSIL_ENABLE_TCL_PRIVATE_STUBS) */
162 #endif /* defined(FOSSIL_ENABLE_TCL) */
163 #if defined(FOSSIL_ENABLE_JSON)
164 VALUE "JsonEnabled", "Yes, cson " FOSSIL_JSON_API_VERSION "\0"
165 #endif /* defined(FOSSIL_ENABLE_JSON) */
 
 
 
 
 
166 VALUE "MarkdownEnabled", "Yes\0"
167 END
168 END
169 BLOCK "VarFileInfo"
170 BEGIN
171
--- win/fossil.rc
+++ win/fossil.rc
@@ -161,10 +161,15 @@
161 #endif /* defined(FOSSIL_ENABLE_TCL_PRIVATE_STUBS) */
162 #endif /* defined(FOSSIL_ENABLE_TCL) */
163 #if defined(FOSSIL_ENABLE_JSON)
164 VALUE "JsonEnabled", "Yes, cson " FOSSIL_JSON_API_VERSION "\0"
165 #endif /* defined(FOSSIL_ENABLE_JSON) */
166 #if defined(USE_SEE)
167 VALUE "UseSeeEnabled", "Yes\0"
168 #else
169 VALUE "UseSeeEnabled", "No\0"
170 #endif /* defined(USE_SEE) */
171 VALUE "MarkdownEnabled", "Yes\0"
172 END
173 END
174 BLOCK "VarFileInfo"
175 BEGIN
176
+1
--- www/th1.md
+++ www/th1.md
@@ -342,10 +342,11 @@
342342
1. **tclPrivateStubs** -- _Uses Tcl private stubs (i.e. header-only)._
343343
1. **json** -- _Support for the JSON APIs._
344344
1. **markdown** -- _Support for Markdown documentation format._
345345
1. **unicodeCmdLine** -- _The command line arguments are Unicode._
346346
1. **dynamicBuild** -- _Dynamically linked to libraries._
347
+ 1. **see** -- _Uses the SQLite Encryption Extension._
347348
348349
Specifying an unknown feature will return a value of false, it will not
349350
raise a script error.
350351
351352
<a name="html"></a>TH1 html Command
352353
--- www/th1.md
+++ www/th1.md
@@ -342,10 +342,11 @@
342 1. **tclPrivateStubs** -- _Uses Tcl private stubs (i.e. header-only)._
343 1. **json** -- _Support for the JSON APIs._
344 1. **markdown** -- _Support for Markdown documentation format._
345 1. **unicodeCmdLine** -- _The command line arguments are Unicode._
346 1. **dynamicBuild** -- _Dynamically linked to libraries._
 
347
348 Specifying an unknown feature will return a value of false, it will not
349 raise a script error.
350
351 <a name="html"></a>TH1 html Command
352
--- www/th1.md
+++ www/th1.md
@@ -342,10 +342,11 @@
342 1. **tclPrivateStubs** -- _Uses Tcl private stubs (i.e. header-only)._
343 1. **json** -- _Support for the JSON APIs._
344 1. **markdown** -- _Support for Markdown documentation format._
345 1. **unicodeCmdLine** -- _The command line arguments are Unicode._
346 1. **dynamicBuild** -- _Dynamically linked to libraries._
347 1. **see** -- _Uses the SQLite Encryption Extension._
348
349 Specifying an unknown feature will return a value of false, it will not
350 raise a script error.
351
352 <a name="html"></a>TH1 html Command
353

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button