From 6d8ec2aed4a037e703651845e0e27d03342e31dd Mon Sep 17 00:00:00 2001 From: stephan Date: Sat, 19 Oct 2024 13:44:16 +0000 Subject: [PATCH] Get tool-zip target, and its prerequisites, building. FossilOrigin-Name: 38cc5db3a8f3079c9be18a9939dae9ba8f4411d4c2361369d697d32f536fc3a4 --- Makefile.in | 103 +++++++++++++++++++++++++++----------------------- manifest | 12 +++--- manifest.uuid | 2 +- 3 files changed, 63 insertions(+), 54 deletions(-) diff --git a/Makefile.in b/Makefile.in index da39acd8a2..78e35fe4d8 100644 --- a/Makefile.in +++ b/Makefile.in @@ -148,7 +148,7 @@ TCC += @CFLAGS_ZLIB@ VERSION = @VERSION@ RELEASE = @RELEASE@ -# Filename extensions for binaries and shared libraries +# Filename extensions for binaries and libraries # BEXE = @BUILD_EXEEXT@ TEXE = @TARGET_EXEEXT@ @@ -783,6 +783,7 @@ libsqlite3.LIB = libsqlite3$(TLIB) # results in building libsqlite3.so, compiles sqlite3.c directly, or # links in either of $(LIBOBJSO) or $(LIBOBJS1). Note that these # flags are for the target build platform, not necessarily localhost. +# i.e. it should be used with $(TCC) or $(TLINK) but not $(BCC). LDFLAGS_libsqlite3 = \ $(LDFLAGS_RPATH) @LIBS@ $(LIBS) $(LDFLAGS_PTHREAD) \ $(LDFLAGS_MATH) $(LDFLAGS_ZLIB) @@ -917,7 +918,7 @@ dbhash$(TEXE): $(TOP)/tool/dbhash.c sqlite3.o sqlite3.h $(TLINK) -o $@ $(TOP)/tool/dbhash.c sqlite3.o $(LDFLAGS_libsqlite3) RSYNC_SRC = \ - $(TOP)/tool/sqlite3-rsync.c \ + $(TOP)/tool/sqlite3_rsync.c \ sqlite3.c RSYNC_OPT = \ @@ -927,11 +928,11 @@ RSYNC_OPT = \ -DSQLITE_OMIT_LOAD_EXTENSION \ -DSQLITE_OMIT_DEPRECATED -sqlite3-rsync$(TEXE): $(RSYNC_SRC) +sqlite3_rsync$(TEXE): $(RSYNC_SRC) $(TCC) -o $@ $(RSYNC_OPT) $(RSYNC_SRC) $(LDFLAGS_libsqlite3) -install-rsync: sqlite3-rsync$(TEXE) $(install.bindir) - $(INSTALL) sqlite3-rsync$(TEXT) $(install.bindir) +install-rsync: sqlite3_rsync$(TEXE) $(install.bindir) + $(INSTALL) sqlite3_rsync$(TEXT) $(install.bindir) #install: install-rsync scrub$(TEXE): $(TOP)/ext/misc/scrub.c sqlite3.o @@ -1551,7 +1552,7 @@ TESTFIXTURE_SRC += $(TESTFIXTURE_SRC$(USE_AMALGAMATION)) testfixture$(TEXE): has_tclconfig has_tclsh85 $(TESTFIXTURE_SRC) $(TLINK) -DSQLITE_NO_SYNC=1 $(TEMP_STORE) $(TESTFIXTURE_FLAGS) \ - -o $@ $(TESTFIXTURE_SRC) $(LIBTCL) $(LDFLAGS_libsqlite3) @TCL_INCLUDE_SPEC@ + -o $@ $(TESTFIXTURE_SRC) $(LIBTCL) $(LDFLAGS_libsqlite3) $(TCL_INCLUDE_SPEC) coretestprogs: testfixture$(BEXE) sqlite3$(BEXE) @@ -1653,19 +1654,23 @@ smoketest: $(TESTPROGS) fuzzcheck$(TEXE) shelltest: $(TCLSH_CMD) $(TOP)/test/testrunner.tcl release shell -sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in has_tclsh85 +sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl \ + $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in has_tclsh85 $(BTCLSH) $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqlite3_analyzer.c.in >sqlite3_analyzer.c sqlite3_analyzer$(TEXE): has_tclconfig sqlite3_analyzer.c - $(TLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TLIBS) + $(TLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TCL_INCLUDE_SPEC) $(LDFLAGS_libsqlite3) -sqltclsh.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/sqltclsh.tcl $(TOP)/ext/misc/appendvfs.c $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqltclsh.c.in has_tclsh85 +sqltclsh.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/sqltclsh.tcl \ + $(TOP)/ext/misc/appendvfs.c $(TOP)/tool/mkccode.tcl \ + $(TOP)/tool/sqltclsh.c.in has_tclsh85 $(BTCLSH) $(TOP)/tool/mkccode.tcl $(TOP)/tool/sqltclsh.c.in >sqltclsh.c sqltclsh$(TEXE): has_tclconfig sqltclsh.c $(TLINK) sqltclsh.c -o $@ $(LIBTCL) $(LDFLAGS_libsqlite3) -sqlite3_expert$(TEXE): $(TOP)/ext/expert/sqlite3expert.h $(TOP)/ext/expert/sqlite3expert.c $(TOP)/ext/expert/expert.c sqlite3.c +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_libsqlite3) @@ -1733,6 +1738,8 @@ speedtest1$(TEXE): $(TOP)/test/speedtest1.c sqlite3.c Makefile #XX#startup$(TEXE): $(TOP)/test/startup.c sqlite3.c #XX# $(CC) -Os -g -DSQLITE_THREADSAFE=0 -o $@ $(TOP)/test/startup.c sqlite3.c $(TLIBS) +# ^^^ note that it wants $(TLIBS) (a.k.a. $(LDFLAGS_libsqlite3) but is using $(CC) +# instead of $(BCC). KV_OPT += -DSQLITE_DIRECT_OVERFLOW_READ @@ -1745,15 +1752,15 @@ rbu$(EXE): $(TOP)/ext/rbu/rbu.c $(TOP)/ext/rbu/sqlite3rbu.c sqlite3.lo loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la $(TLINK) $(TOP)/tool/loadfts.c libsqlite3.la -o $@ $(LDFLAGS_libsqlite3) -#XX## This target will fail if the SQLite amalgamation contains any exported -#XX## symbols that do not begin with "sqlite3_". It is run as part of the -#XX## releasetest.tcl script. -#XX## -#XX#VALIDIDS=' sqlite3(changeset|changegroup|session)?_' -#XX#checksymbols: sqlite3.o -#XX# nm -g --defined-only sqlite3.o -#XX# nm -g --defined-only sqlite3.o | egrep -v $(VALIDIDS); test $$? -ne 0 -#XX# echo '0 errors out of 1 tests' +# This target will fail if the SQLite amalgamation contains any exported +# symbols that do not begin with "sqlite3_". It is run as part of the +# releasetest.tcl script. +# +VALIDIDS=' sqlite3(changeset|changegroup|session)?_' +checksymbols: sqlite3.o + nm -g --defined-only sqlite3.o + nm -g --defined-only sqlite3.o | egrep -v $(VALIDIDS); test $$? -ne 0 + echo '0 errors out of 1 tests' #XX# #XX## Build the amalgamation-autoconf package. The amalamgation-tarball target builds #XX## a tarball named for the version number. Ex: sqlite-autoconf-3110000.tar.gz. @@ -1765,33 +1772,35 @@ loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la #XX#snapshot-tarball: sqlite3.c sqlite3rc.h #XX# TOP=$(TOP) sh $(TOP)/tool/mkautoconfamal.sh --snapshot #XX# -#XX## Build a ZIP archive containing various command-line tools. -#XX## -#XX#tool-zip: testfixture sqlite3 sqldiff sqlite3_analyzer $(TOP)/tool/mktoolzip.tcl -#XX# ./testfixture $(TOP)/tool/mktoolzip.tcl -#XX# -#XX## The next two rules are used to support the "threadtest" target. Building -#XX## threadtest runs a few thread-safety tests that are implemented in C. This -#XX## target is invoked by the releasetest.tcl script. -#XX## -#XX#THREADTEST3_SRC = $(TOP)/test/threadtest3.c \ -#XX# $(TOP)/test/tt3_checkpoint.c \ -#XX# $(TOP)/test/tt3_index.c \ -#XX# $(TOP)/test/tt3_vacuum.c \ -#XX# $(TOP)/test/tt3_stress.c \ -#XX# $(TOP)/test/tt3_lookaside1.c -#XX# -#XX#threadtest3$(TEXE): sqlite3.lo $(THREADTEST3_SRC) -#XX# $(TLINK) $(TOP)/test/threadtest3.c $(TOP)/src/test_multiplex.c sqlite3.lo -o $@ $(TLIBS) -#XX# -#XX#threadtest: threadtest3$(TEXE) -#XX# ./threadtest3$(TEXE) -#XX# -#XX#threadtest5: sqlite3.c $(TOP)/test/threadtest5.c -#XX# $(TLINK) $(TOP)/test/threadtest5.c sqlite3.c -o $@ $(TLIBS) -#XX# -#XX## Standard install and cleanup targets -#XX## +# Build a ZIP archive containing various command-line tools. +# +tool-zip: testfixture$(TEXE) sqlite3$(TEXE) sqldiff$(TEXE) \ + sqlite3_analyzer$(TEXE) sqlite3_rsync$(TEXE) $(TOP)/tool/mktoolzip.tcl + strip sqlite3$(TEXE) sqldiff$(TEXE) sqlite3_analyzer$(TEXE) sqlite3_rsync$(TEXE) + ./testfixture$(TEXE) $(TOP)/tool/mktoolzip.tcl + +# The next two rules are used to support the "threadtest" target. Building +# threadtest runs a few thread-safety tests that are implemented in C. This +# target is invoked by the releasetest.tcl script. +# +THREADTEST3_SRC = $(TOP)/test/threadtest3.c \ + $(TOP)/test/tt3_checkpoint.c \ + $(TOP)/test/tt3_index.c \ + $(TOP)/test/tt3_vacuum.c \ + $(TOP)/test/tt3_stress.c \ + $(TOP)/test/tt3_lookaside1.c + +threadtest3$(TEXE): sqlite3.lo $(THREADTEST3_SRC) + $(TLINK) $(TOP)/test/threadtest3.c $(TOP)/src/test_multiplex.c sqlite3.lo -o $@ $(LDFLAGS_libsqlite3) + +threadtest: threadtest3$(TEXE) + ./threadtest3$(TEXE) + +threadtest5: sqlite3.c $(TOP)/test/threadtest5.c + $(TLINK) $(TOP)/test/threadtest5.c sqlite3.c -o $@ $(LDFLAGS_libsqlite3) + +# Standard install and cleanup targets +# #XX#lib_install: libsqlite3.la #XX# $(INSTALL) -d $(DESTDIR)$(libdir) #XX# $(LTINSTALL) libsqlite3.la $(DESTDIR)$(libdir) @@ -1836,7 +1845,7 @@ tidy: rm -f showjournal$(TEXE) showstat4$(TEXE) showwal$(TEXE) speedtest1$(TEXE) rm -f wordcount$(TEXE) changeset$(TEXE) version-info$(TEXE) rm -f *.dll *.lib *.exp *.pc *.vsix *.so *.dylib pkgIndex.tcl - rm -f sqlite3_analyzer$(TEXE) sqlite3-rsync$(TEXE) sqlite3_expert$(TEXE) + rm -f sqlite3_analyzer$(TEXE) sqlite3_rsync$(TEXE) sqlite3_expert$(TEXE) rm -f mptester$(TEXE) rbu$(TEXE) srcck1$(TEXE) rm -f fuzzershell$(TEXE) fuzzcheck$(TEXE) sqldiff$(TEXE) dbhash$(TEXE) rm -f dbfuzz$(TEXE) dbfuzz2$(TEXE) dbfuzz2-asan$(TEXE) dbfuzz2-msan$(TEXE) diff --git a/manifest b/manifest index 3917755d8f..356d030ff5 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Get\smore\sof\sthe\stest/utility\stargets\sbuilding. -D 2024-10-19T13:19:05.750 +C Get\stool-zip\starget,\sand\sits\sprerequisites,\sbuilding. +D 2024-10-19T13:44:16.623 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 -F Makefile.in f091aa7b46c21afce2dc7573004f44f46436eb3d831bf51a4f052241c339e410 +F Makefile.in 6b04997777dc413628a51699c018152916e1619209e29a8a73709a9cc16b90aa F Makefile.linux-gcc f3842a0b1efbfbb74ac0ef60e56b301836d05b4d867d014f714fa750048f1ab6 F Makefile.msc 58b69eda1faad5d475092b8aeffab9156ee4901a82db089b166607f2ec907ee4 F README.md c3c0f19532ce28f6297a71870f3c7b424729f0e6d9ab889616d3587dd2332159 @@ -2238,8 +2238,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P c2e5dd791cce3ec4f1f009e945b8c66e8c5e01ae25077f345389f04e3c004ecf -R e01f3b946a09b5bd21efb738dbf29e3d +P 24c81c6c52603c217134c233190499086240211763736aa10cb6d0be074e68a5 +R 470f5348311bd3e9ef053b0a3bf4211c U stephan -Z fe21ae573c4d67c553a6b02aa3d73807 +Z 1c4cd42471612af680fdc4c3ad0c6235 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 249e948e46..311d20c71e 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -24c81c6c52603c217134c233190499086240211763736aa10cb6d0be074e68a5 +38cc5db3a8f3079c9be18a9939dae9ba8f4411d4c2361369d697d32f536fc3a4 -- 2.47.2