@if SH_CFLAGS
CFLAGS += @SH_CFLAGS@
@endif
+CFLAGS_stdio3 := -I${TOP}/ext/misc
+# CFLAGS_stdio3 ==> for sqlite3_stdio.h
TCC = ${CC} ${CFLAGS}
TCC += -I. -I${TOP}/src -I${TOP}/ext/rtree -I${TOP}/ext/icu
TCC += -I${TOP}/ext/fts3 -I${TOP}/ext/async -I${TOP}/ext/session
libsqlite3.LIB = libsqlite3$(TLIB)
LDFLAGS_libsqlite = \
$(LDFLAGS_RPATH) $(TLIBS) $(LDFLAGS_MATH) $(LDFLAGS_ZLIB)
+# LDFLAGS_libsqlite should be used with any target which
+# either results in building libsqlite3.so, builds sqlite3.c
+# directly, links in sqlite3.o, or links in $(LIBOBJS0).
$(libsqlite3.DLL): $(LIBOBJ)
$(TLINK) -o $@ \
all: dll
$(libsqlite3.LIB): $(LIBOBJ)
- $(AR) r $@ $(LIBOBJ)
+ $(AR) crs $@ $(LIBOBJ)
lib: $(libsqlite3.LIB)
all: lib
$(LDFLAGS_libsqlite) $(LDFLAGS_READLINE)
cli: sqlite3$(TEXE)
all: cli
-#XX#
-#XX#sqldiff$(TEXE): $(TOP)/tool/sqldiff.c sqlite3.lo sqlite3.h
-#XX# $(TLINK) -o $@ $(TOP)/tool/sqldiff.c sqlite3.lo $(TLIBS)
-#XX#
-#XX#dbhash$(TEXE): $(TOP)/tool/dbhash.c sqlite3.lo sqlite3.h
-#XX# $(TLINK) -o $@ $(TOP)/tool/dbhash.c sqlite3.lo $(TLIBS)
-#XX#
-#XX#RSYNC_SRC = \
-#XX# $(TOP)/tool/sqlite3-rsync.c \
-#XX# sqlite3.c
-#XX#
-#XX#RSYNC_OPT = \
-#XX# -DSQLITE_ENABLE_DBPAGE_VTAB \
-#XX# -USQLITE_THREADSAFE \
-#XX# -DSQLITE_THREADSAFE=0 \
-#XX# -DSQLITE_OMIT_LOAD_EXTENSION \
-#XX# -DSQLITE_OMIT_DEPRECATED
-#XX#
-#XX#sqlite3-rsync$(TEXE): $(RSYNC_SRC)
-#XX# $(TCC) -o $@ $(RSYNC_OPT) $(RSYNC_SRC) $(TLIBS)
-#XX#
-#XX#scrub$(TEXE): $(TOP)/ext/misc/scrub.c sqlite3.lo
-#XX# $(TLINK) -o $@ -I. -DSCRUB_STANDALONE \
-#XX# $(TOP)/ext/misc/scrub.c sqlite3.lo $(TLIBS)
-#XX#
+
+sqldiff$(TEXE): $(TOP)/tool/sqldiff.c $(TOP)/ext/misc/sqlite3_stdio.h sqlite3.o sqlite3.h
+ $(TLINK) $(CFLAGS_stdio3) -o $@ $(TOP)/tool/sqldiff.c sqlite3.o $(LDFLAGS_libsqlite)
+
+dbhash$(TEXE): $(TOP)/tool/dbhash.c sqlite3.o sqlite3.h
+ $(TLINK) -o $@ $(TOP)/tool/dbhash.c sqlite3.o $(LDFLAGS_libsqlite)
+
+RSYNC_SRC = \
+ $(TOP)/tool/sqlite3-rsync.c \
+ sqlite3.c
+
+RSYNC_OPT = \
+ -DSQLITE_ENABLE_DBPAGE_VTAB \
+ -USQLITE_THREADSAFE \
+ -DSQLITE_THREADSAFE=0 \
+ -DSQLITE_OMIT_LOAD_EXTENSION \
+ -DSQLITE_OMIT_DEPRECATED
+
+sqlite3-rsync$(TEXE): $(RSYNC_SRC)
+ $(TCC) -o $@ $(RSYNC_OPT) $(RSYNC_SRC) $(LDFLAGS_libsqlite)
+
+scrub$(TEXE): $(TOP)/ext/misc/scrub.c sqlite3.lo
+ $(TLINK) -o $@ -I. -DSCRUB_STANDALONE \
+ $(TOP)/ext/misc/scrub.c sqlite3.lo $(LDFLAGS_libsqlite)
+
srcck1$(BEXE): $(TOP)/tool/srcck1.c
$(BCC) -o srcck1$(BEXE) $(TOP)/tool/srcck1.c
#XX#sqltclsh$(TEXE): has_tclconfig sqltclsh.c
#XX# $(TLINK) sqltclsh.c -o $@ $(LIBTCL) $(TLIBS)
#XX#
-#XX#sqlite3_expert$(TEXE): $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c
-#XX# $(TLINK) $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c -o sqlite3_expert $(TLIBS)
-#XX#
+sqlite3_expert$(TEXE): $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c
+ $(TLINK) $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c -o sqlite3_expert $(LDFLAGS_libsqlite)
+
#XX#CHECKER_DEPS =\
#XX# $(TOP)/tool/mkccode.tcl \
#XX# sqlite3.c \
-C Correct\smissing\sLDFLAGS_ZLIB\sfor\slibsqlite3.so.
-D 2024-10-01T11:09:50.892
+C Get\smore\sof\sthe\sCLI\sutils\sbuilding.
+D 2024-10-01T13:40:59.914
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
-F Makefile.in 03b37ca1ca620ae9074bf79c6f3357a54f2fe8f9befee918aa52b107d78b4040
+F Makefile.in 19afd3c31ea260e22eea118053b97d79f2b8d40b5d388e2c9c8a573554b97d4d
F Makefile.linux-gcc f3842a0b1efbfbb74ac0ef60e56b301836d05b4d867d014f714fa750048f1ab6
F Makefile.msc 9c6d80d9d103fa42e931f4c464884a5e577fae8563acc7589bff4e43fbe8f864
F README.md c3c0f19532ce28f6297a71870f3c7b424729f0e6d9ab889616d3587dd2332159
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P fde7257ad9ce84be6d907be3c6d277b04dd9466ee6828bfded4cfefc86db22db
-R 04bf171d78ee7f138b5f990ba32f5afc
+P 98bbba3a05734e080a0c8c51fac0368436809d4ff3c39959a51970400b4470cb
+R d61b1bae6c19264b9c460b550873251d
U stephan
-Z 22b8ec3ae34f09b70dd7dcbd99830d71
+Z 5f773d8b1897a9c16436ea21d9b0af59
# Remove this line to create a well-formed Fossil manifest.